From 06ade12581aeafb3cf94f879a7af5b47f13354b6 Mon Sep 17 00:00:00 2001
From: Lari Taskula <lari.taskula@hypernova.fi>
Date: Tue, 20 Feb 2024 01:47:53 +0000
Subject: [PATCH] Bug 36134: Read complete Elasticsearch configuration in
 about.pl

When enabling Elasticsearch authentication in Koha using userinfo
parameter of Search::Elasticsearch, about.pl breaks and gives an
internal server error.

This patch reads the complete Elasticsearch configuration for
about.pl including userinfo causing about.pl to recover.

To test:
1. In Elasticsearch 7 settings, set "xpack.security.enabled: true"
2. Add <userinfo>elastic:password</userinfo> to KOHA_CONF elasticsearch
   settings
3. Restart plack and navigate to about.pl
4. Observe internal server error
5. Apply patch
6. Refresh about.pl
7. Observe it working again
---
 about.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/about.pl b/about.pl
index 218c384b38..c5f7f73f37 100755
--- a/about.pl
+++ b/about.pl
@@ -391,7 +391,7 @@ if ( C4::Context->preference('SearchEngine') eq 'Elasticsearch' ) {
         # TODO: When new indexes get added, we could have other ways to
         #       fetch the list of available indexes (e.g. plugins, etc)
         $es_status->{nodes} = $es_conf->{nodes};
-        my $es = Search::Elasticsearch->new({ nodes => $es_conf->{nodes} });
+        my $es = Search::Elasticsearch->new( $es_conf );
         my $es_status->{version} = $es->info->{version}->{number};
 
         foreach my $index ( @indexes ) {
-- 
2.34.1