Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 391 for etags (0.02 sec)

  1. internal/etag/etag.go

    func Multipart(etags ...ETag) ETag {
    	if len(etags) == 0 {
    		return nil
    	}
    
    	var n int64
    	h := md5.New()
    	for _, etag := range etags {
    		if !etag.IsMultipart() && !etag.IsEncrypted() {
    			h.Write(etag)
    			n++
    		}
    	}
    	etag := append(h.Sum(nil), '-')
    	return strconv.AppendInt(etag, n, 10)
    }
    
    // Set adds the ETag to the HTTP headers. It overwrites any
    // existing ETag entry.
    //
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Fri May 16 14:27:42 UTC 2025
    - 13.2K bytes
    - Viewed (0)
  2. internal/etag/etag_test.go

    		ETags:     []ETag{},
    		Multipart: ETag{},
    	},
    	{
    		ETags:     []ETag{must("b10a8db164e0754105b7a99be72e3fe5")},
    		Multipart: must("7b976cc68452e003eec7cb0eb631a19a-1"),
    	},
    	{
    		ETags:     []ETag{must("5f363e0e58a95f06cbe9bbc662c5dfb6"), must("5f363e0e58a95f06cbe9bbc662c5dfb6")},
    		Multipart: must("a7d414b9133d6483d9a1c4e04e856e3b-2"),
    	},
    	{
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Wed Apr 09 14:28:39 UTC 2025
    - 12.6K bytes
    - Viewed (0)
  3. cmd/erasure-healing-common.go

    	"context"
    	"slices"
    	"time"
    
    	"github.com/minio/madmin-go/v3"
    )
    
    func commonETags(etags []string) (etag string, maxima int) {
    	etagOccurrenceMap := make(map[string]int, len(etags))
    
    	// Ignore the uuid sentinel and count the rest.
    	for _, etag := range etags {
    		if etag == "" {
    			continue
    		}
    		etagOccurrenceMap[etag]++
    	}
    
    	maxima = 0 // Counter for remembering max occurrence of elements.
    	latest := ""
    
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Sun Sep 28 20:59:21 UTC 2025
    - 12K bytes
    - Viewed (0)
  4. internal/crypto/key.go

    	return partKey
    }
    
    // SealETag seals the etag using the object key.
    // It does not encrypt empty ETags because such ETags indicate
    // that the S3 client hasn't sent an ETag = MD5(object) and
    // the backend can pick an ETag value.
    func (key ObjectKey) SealETag(etag []byte) []byte {
    	if len(etag) == 0 { // don't encrypt empty ETag - only if client sent ETag = MD5(object)
    		return etag
    	}
    	var buffer bytes.Buffer
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Fri May 16 14:27:42 UTC 2025
    - 6.2K bytes
    - Viewed (0)
  5. docs/site-replication/run-replication-with-checksum-header.sh

    DEST_OBJ_1_CHKSUM=$(echo "${DEST_OUT_1}" | jq '.ChecksumSHA256')
    DEST_OBJ_2_CHKSUM=$(echo "${DEST_OUT_2}" | jq '.ChecksumSHA256')
    DEST_OBJ_1_ETAG=$(echo "${DEST_OUT_1}" | jq '.ETag')
    DEST_OBJ_2_ETAG=$(echo "${DEST_OUT_2}" | jq '.ETag')
    
    # Check the replication of checksums and etags
    if [[ ${SRC_OBJ_1_CHKSUM} != "${DEST_OBJ_1_CHKSUM}" && ${DEST_OBJ_1_CHKSUM} != "" ]]; then
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Mon Jan 20 14:49:07 UTC 2025
    - 11.5K bytes
    - Viewed (0)
  6. cmd/erasure-multipart-conditional_test.go

    		// This should fail even without quorum issues, but with quorum failure
    		// we can't verify the ETag at all.
    		opts := ObjectOptions{
    			UserDefined: map[string]string{
    				xhttp.IfMatch: "wrong-etag-12345",
    			},
    			HasIfMatch: true,
    			CheckPrecondFn: func(oi ObjectInfo) bool {
    				// Precondition fails if ETags don't match
    				return oi.ETag != "wrong-etag-12345"
    			},
    		}
    
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Fri Oct 24 04:05:31 UTC 2025
    - 6.9K bytes
    - Viewed (0)
  7. cmd/encryption-v1.go

    		}
    		if _, err := strconv.ParseInt(object.ETag[i+1:], 10, 32); err != nil {
    			return "", errObjectTampered
    		}
    		return object.ETag, nil
    	}
    
    	etag, err := hex.DecodeString(object.ETag)
    	if err != nil {
    		return "", err
    	}
    	etag, err = key.UnsealETag(etag)
    	if err != nil {
    		return "", err
    	}
    	return hex.EncodeToString(etag), nil
    }
    
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Sun Sep 28 20:59:21 UTC 2025
    - 38K bytes
    - Viewed (0)
  8. cmd/erasure-multipart.go

    	// However, in case of encryption, the persisted part ETags don't match
    	// what we have sent to the client during PutObjectPart. The reason is
    	// that ETags are encrypted. Hence, the client will send a list of complete
    	// part ETags of which may not match the ETag of any part. For example
    	//   ETag (client):          30902184f4e62dd8f98f0aaff810c626
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Fri Oct 24 04:05:31 UTC 2025
    - 47.1K bytes
    - Viewed (0)
  9. internal/etag/reader.go

    	sum := r.md5.Sum(nil)
    	return ETag(sum)
    }
    
    // VerifyError is an error signaling that a
    // computed ETag does not match an expected
    // ETag.
    type VerifyError struct {
    	Expected ETag
    	Computed ETag
    }
    
    func (v VerifyError) Error() string {
    	return fmt.Sprintf("etag: expected ETag %q does not match computed ETag %q", v.Expected, v.Computed)
    }
    
    // UUIDHash - use uuid to make md5sum
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Sun Mar 30 00:56:02 UTC 2025
    - 4.8K bytes
    - Viewed (0)
  10. cmd/encryption-v1_test.go

    		ETag:       "",
    		ShouldFail: true, // ETag is not a valid hex value
    	},
    	{
    		ObjectKey:  [32]byte{},
    		ObjectInfo: ObjectInfo{ETag: "00000f00f27834c9a2654927546df57f9e998187496394d4ee80f3d9978f85f3c7d81f72600cdbe03d80dc5a13d69354"},
    		ETag:       "",
    		ShouldFail: true, // modified ETag
    	},
    
    	// Special tests for ETags that end with a '-x'
    	{
    		ObjectKey:  [32]byte{},
    Registered: Sun Dec 28 19:28:13 UTC 2025
    - Last Modified: Sun Sep 28 20:59:21 UTC 2025
    - 19.9K bytes
    - Viewed (0)
Back to top