From 6f81885ebf157a2da8840a408b0606d3a2d473f6 Mon Sep 17 00:00:00 2001 From: Nick Craig-Wood Date: Sun, 14 Dec 2025 12:04:48 +0000 Subject: [PATCH] Revert "b2: Fix listing root buckets with unrestricted API key" This reverts commit 847734d421d219f1b12b144fcb0d08a6556e1485. --- backend/b2/b2.go | 41 +++++++++++++---------------------------- 1 file changed, 13 insertions(+), 28 deletions(-) diff --git a/backend/b2/b2.go b/backend/b2/b2.go index 22c5e079a..a21d63dac 100644 --- a/backend/b2/b2.go +++ b/backend/b2/b2.go @@ -1081,10 +1081,21 @@ type listBucketFn func(*api.Bucket) error func (f *Fs) listBucketsToFn(ctx context.Context, bucketName string, fn listBucketFn) error { responses := make([]api.ListBucketsResponse, len(f.info.APIs.Storage.Allowed.Buckets))[:0] - call := func(id string) error { + for i := range f.info.APIs.Storage.Allowed.Buckets { + b := &f.info.APIs.Storage.Allowed.Buckets[i] + // Empty names indicate a bucket that no longer exists, this is non-fatal + // for multi-bucket API keys. + if b.Name == "" { + continue + } + // When requesting a specific bucket skip over non-matching names + if bucketName != "" && b.Name != bucketName { + continue + } + var account = api.ListBucketsRequest{ AccountID: f.info.AccountID, - BucketID: id, + BucketID: b.ID, } if bucketName != "" && account.BucketID == "" { account.BucketName = f.opt.Enc.FromStandardName(bucketName) @@ -1103,32 +1114,6 @@ func (f *Fs) listBucketsToFn(ctx context.Context, bucketName string, fn listBuck return err } responses = append(responses, response) - return nil - } - - for i := range f.info.APIs.Storage.Allowed.Buckets { - b := &f.info.APIs.Storage.Allowed.Buckets[i] - // Empty names indicate a bucket that no longer exists, this is non-fatal - // for multi-bucket API keys. - if b.Name == "" { - continue - } - // When requesting a specific bucket skip over non-matching names - if bucketName != "" && b.Name != bucketName { - continue - } - - err := call(b.ID) - if err != nil { - return err - } - } - - if len(f.info.APIs.Storage.Allowed.Buckets) == 0 { - err := call("") - if err != nil { - return err - } } f.bucketIDMutex.Lock()