github.com/aavshr/aws-sdk-go@v1.41.3/service/s3/s3crypto/fixture.go (about) 1 package s3crypto 2 3 import "fmt" 4 5 type clientVersion int 6 7 const ( 8 v1ClientVersion clientVersion = 1 + iota 9 v2ClientVersion 10 ) 11 12 var errDeprecatedIncompatibleCipherBuilder = fmt.Errorf("attempted to use deprecated or incompatible cipher builder") 13 14 // compatibleEncryptionFixture is an unexported interface to expose whether a given fixture is compatible for encryption 15 // given the provided client version. 16 type compatibleEncryptionFixture interface { 17 isEncryptionVersionCompatible(clientVersion) error 18 } 19 20 // awsFixture is an unexported interface to expose whether a given fixture is an aws provided fixture, and whether that 21 // fixtures dependencies were constructed using aws types. 22 // 23 // This interface is used in v2 clients to warn users if they are using custom implementations of ContentCipherBuilder 24 // or CipherDataGenerator. 25 type awsFixture interface { 26 isAWSFixture() bool 27 }