diff --git a/backend/crypt/crypt.go b/backend/crypt/crypt.go index 1aece2753..b1c8111d0 100644 --- a/backend/crypt/crypt.go +++ b/backend/crypt/crypt.go @@ -396,6 +396,8 @@ type putFn func(ctx context.Context, in io.Reader, src fs.ObjectInfo, options .. // put implements Put or PutStream func (f *Fs) put(ctx context.Context, in io.Reader, src fs.ObjectInfo, options []fs.OpenOption, put putFn) (fs.Object, error) { + ci := fs.GetConfig(ctx) + if f.opt.NoDataEncryption { o, err := put(ctx, in, f.newObjectInfo(src, nonce{}), options...) if err == nil && o != nil { @@ -413,6 +415,9 @@ func (f *Fs) put(ctx context.Context, in io.Reader, src fs.ObjectInfo, options [ // Find a hash the destination supports to compute a hash of // the encrypted data ht := f.Fs.Hashes().GetOne() + if ci.IgnoreChecksum { + ht = hash.None + } var hasher *hash.MultiHasher if ht != hash.None { hasher, err = hash.NewMultiHasherTypes(hash.NewHashSet(ht))