Skip to content

Commit 54ce11f

Browse files
authored
Merge pull request #152 from EmmEff/unauthorized-fix
Resolve issue with unauthenticated requests
2 parents 2dba38c + 346574f commit 54ce11f

File tree

3 files changed

+14
-4
lines changed

3 files changed

+14
-4
lines changed

client/downloader.go

+5-2
Original file line numberDiff line numberDiff line change
@@ -108,8 +108,11 @@ func (c *Client) ociDownloadBlobPart(ctx context.Context, creds credentials, u s
108108
if err != nil {
109109
return 0, err
110110
}
111-
if err := creds.ModifyRequest(req); err != nil {
112-
return 0, err
111+
112+
if creds != nil {
113+
if err := creds.ModifyRequest(req); err != nil {
114+
return 0, err
115+
}
113116
}
114117

115118
req.Header.Add("Range", fmt.Sprintf("bytes=%d-%d", ps.start, ps.end))

client/oci.go

+3-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,9 @@ type bearerTokenCredentials struct {
112112
}
113113

114114
func (c bearerTokenCredentials) ModifyRequest(r *http.Request, opts ...modifyRequestOption) error {
115-
r.Header.Set("Authorization", fmt.Sprintf("Bearer %v", c.authToken))
115+
if c.authToken != "" {
116+
r.Header.Set("Authorization", fmt.Sprintf("Bearer %v", c.authToken))
117+
}
116118
return nil
117119
}
118120

client/pull.go

+6-1
Original file line numberDiff line numberDiff line change
@@ -236,8 +236,13 @@ func (c *Client) legacyDownloadImage(ctx context.Context, arch, name, tag string
236236
return err
237237
}
238238

239+
var creds credentials
240+
if c.AuthToken != "" {
241+
creds = bearerTokenCredentials{authToken: c.AuthToken}
242+
}
243+
239244
// Use uri from Location header to download artifact
240-
return c.multipartDownload(ctx, res.Header.Get("Location"), bearerTokenCredentials{authToken: c.AuthToken}, dst, img.Size, spec, pb)
245+
return c.multipartDownload(ctx, res.Header.Get("Location"), creds, dst, img.Size, spec, pb)
241246
}
242247

243248
func parseContentLengthHeader(val string) (int64, error) {

0 commit comments

Comments
 (0)