diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-12-07 18:07:11 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-12-07 18:07:11 +0300 |
commit | 2a501f63df96252295df7efe53880c5e78fa22b5 (patch) | |
tree | c7f5e11988e1c92b4deb5845f97ace550ebafdb8 /workhorse/internal/api | |
parent | e799c1393aaae58ace8f81141bd723b5d599c864 (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'workhorse/internal/api')
-rw-r--r-- | workhorse/internal/api/api.go | 6 | ||||
-rw-r--r-- | workhorse/internal/api/channel_settings.go | 7 |
2 files changed, 7 insertions, 6 deletions
diff --git a/workhorse/internal/api/api.go b/workhorse/internal/api/api.go index 011890be569..1f8266bf609 100644 --- a/workhorse/internal/api/api.go +++ b/workhorse/internal/api/api.go @@ -226,7 +226,7 @@ func (api *API) newRequest(r *http.Request, suffix string) (*http.Request, error authReq := &http.Request{ Method: r.Method, URL: rebaseUrl(r.URL, api.URL, suffix), - Header: helper.HeaderClone(r.Header), + Header: r.Header.Clone(), } authReq = authReq.WithContext(r.Context()) @@ -307,7 +307,7 @@ func (api *API) PreAuthorizeFixedPath(r *http.Request, method string, path strin if err != nil { return nil, fmt.Errorf("construct auth request: %w", err) } - authReq.Header = helper.HeaderClone(r.Header) + authReq.Header = r.Header.Clone() authReq.URL.RawQuery = r.URL.RawQuery failureResponse, apiResponse, err := api.PreAuthorize(path, authReq) @@ -361,7 +361,7 @@ func (api *API) doRequestWithoutRedirects(authReq *http.Request) (*http.Response } // removeConnectionHeaders removes hop-by-hop headers listed in the "Connection" header of h. -// See https://tools.ietf.org/html/rfc7230#section-6.1 +// See https://www.rfc-editor.org/rfc/rfc7230#section-6.1 func removeConnectionHeaders(h http.Header) { for _, f := range h["Connection"] { for _, sf := range strings.Split(f, ",") { diff --git a/workhorse/internal/api/channel_settings.go b/workhorse/internal/api/channel_settings.go index 91798334a03..ed03b04a69b 100644 --- a/workhorse/internal/api/channel_settings.go +++ b/workhorse/internal/api/channel_settings.go @@ -8,8 +8,6 @@ import ( "net/url" "github.com/gorilla/websocket" - - "gitlab.com/gitlab-org/gitlab/workhorse/internal/helper" ) type ChannelSettings struct { @@ -53,7 +51,10 @@ func (t *ChannelSettings) Dialer() *websocket.Dialer { func (t *ChannelSettings) Clone() *ChannelSettings { // Doesn't clone the strings, but that's OK as strings are immutable in go cloned := *t - cloned.Header = helper.HeaderClone(t.Header) + cloned.Header = t.Header.Clone() + if cloned.Header == nil { + cloned.Header = make(http.Header) + } return &cloned } |