From 1553ae0887875f01cf410441a085cbab4ee14d81 Mon Sep 17 00:00:00 2001 From: "openshift-merge-bot[bot]" <148852131+openshift-merge-bot[bot]@users.noreply.github.com> Date: Wed, 3 Dec 2025 17:08:46 +0000 Subject: [PATCH 1/2] Merge pull request #15746 from Leo6Leo/leo/ocpbugs/65804/invalid-memory-error/main OCPBUGS-65804: Update client initialization in checkPackageManifestHandler --- pkg/olm/handler.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/olm/handler.go b/pkg/olm/handler.go index f5eefc326de..8536ab807b6 100644 --- a/pkg/olm/handler.go +++ b/pkg/olm/handler.go @@ -96,7 +96,7 @@ func (o *OLMHandler) CheckPackageManifest(w http.ResponseWriter, r *http.Request return } - client, _, err := o.getClientWithScheme(nil) + client, _, err := o.getClientWithScheme(r) if err != nil { klog.Error(err) serverutils.SendResponse(w, http.StatusInternalServerError, serverutils.ApiError{Err: fmt.Sprint(err)}) From f1e85e8de7900cc3cd1a7eee26ef027c2bfb7936 Mon Sep 17 00:00:00 2001 From: Leo6Leo <36619969+Leo6Leo@users.noreply.github.com> Date: Mon, 8 Dec 2025 16:24:08 -0500 Subject: [PATCH 2/2] fix: passing the user obj with the AuthHandlerWithUser --- pkg/olm/handler.go | 4 ++-- pkg/server/server.go | 4 +++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pkg/olm/handler.go b/pkg/olm/handler.go index 8536ab807b6..e67d05ba17e 100644 --- a/pkg/olm/handler.go +++ b/pkg/olm/handler.go @@ -82,7 +82,7 @@ func (o *OLMHandler) OperandsList(user *auth.User, w http.ResponseWriter, r *htt w.Write(resp) } -func (o *OLMHandler) CheckPackageManifest(w http.ResponseWriter, r *http.Request) { +func (o *OLMHandler) CheckPackageManifest(user *auth.User, w http.ResponseWriter, r *http.Request) { if r.Method != "GET" { w.Header().Set("Allow", "GET") serverutils.SendResponse(w, http.StatusMethodNotAllowed, serverutils.ApiError{Err: "Method unsupported, the only supported methods is GET"}) @@ -96,7 +96,7 @@ func (o *OLMHandler) CheckPackageManifest(w http.ResponseWriter, r *http.Request return } - client, _, err := o.getClientWithScheme(r) + client, _, err := o.getClientWithScheme(user) if err != nil { klog.Error(err) serverutils.SendResponse(w, http.StatusInternalServerError, serverutils.ApiError{Err: fmt.Sprint(err)}) diff --git a/pkg/server/server.go b/pkg/server/server.go index 2be6ba64b48..56d1e4dc36e 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -471,7 +471,9 @@ func (s *Server) HTTPHandler() (http.Handler, error) { handle(packageManifestEndpoint, http.StripPrefix( proxy.SingleJoiningSlash(s.BaseURL.Path, packageManifestEndpoint), - authHandler(olmHandler.CheckPackageManifest), + authHandlerWithUser(func(user *auth.User, w http.ResponseWriter, r *http.Request) { + olmHandler.CheckPackageManifest(user, w, r) + }), )) handle(operandsListEndpoint, http.StripPrefix(