github.com/keybase/client/go@v0.0.0-20240309051027-028f7c731f8b/kbfs/kbfscrypto/errors.go (about) 1 // Copyright 2016 Keybase Inc. All rights reserved. 2 // Use of this source code is governed by a BSD 3 // license that can be found in the LICENSE file. 4 5 package kbfscrypto 6 7 import ( 8 "fmt" 9 10 "github.com/keybase/client/go/protocol/keybase1" 11 ) 12 13 // InvalidKIDError is returned whenever an invalid KID is detected. 14 type InvalidKIDError struct { 15 kid keybase1.KID 16 } 17 18 func (e InvalidKIDError) Error() string { 19 return fmt.Sprintf("Invalid KID %s", e.kid) 20 } 21 22 // InvalidByte32DataError is returned whenever invalid data for a 23 // 32-byte type is detected. 24 type InvalidByte32DataError struct { 25 data []byte 26 } 27 28 func (e InvalidByte32DataError) Error() string { 29 return fmt.Sprintf("Invalid byte32 data %v", e.data) 30 } 31 32 // UnknownSigVer indicates that we can't process a signature because 33 // it has an unknown version. 34 type UnknownSigVer struct { 35 Ver SigVer 36 } 37 38 // Error implements the error interface for UnknownSigVer 39 func (e UnknownSigVer) Error() string { 40 return fmt.Sprintf("Unknown signature version %d", int(e.Ver)) 41 } 42 43 // UnknownEncryptionVer indicates that we can't decrypt an 44 // encryptedData object because it has an unknown version. 45 type UnknownEncryptionVer struct { 46 Ver EncryptionVer 47 } 48 49 func (e UnknownEncryptionVer) Error() string { 50 return fmt.Sprintf("Unknown encryption version %d", int(e.Ver)) 51 } 52 53 // InvalidEncryptionVer indicates that we can't decrypt an 54 // encryptedData object because this data type doesn't support that 55 // encryption version. 56 type InvalidEncryptionVer struct { 57 Ver EncryptionVer 58 } 59 60 func (e InvalidEncryptionVer) Error() string { 61 return fmt.Sprintf("Invalid encryption version %d", int(e.Ver)) 62 } 63 64 // InvalidNonceError indicates that an invalid cryptographic nonce was 65 // detected. 66 type InvalidNonceError struct { 67 Nonce []byte 68 } 69 70 func (e InvalidNonceError) Error() string { 71 return fmt.Sprintf("Invalid nonce %v", e.Nonce) 72 } 73 74 // PaddedBlockReadError occurs if the number of bytes read do not 75 // equal the number of bytes specified. 76 type PaddedBlockReadError struct { 77 ActualLen int 78 ExpectedLen int 79 } 80 81 // Error implements the error interface of PaddedBlockReadError. 82 func (e PaddedBlockReadError) Error() string { 83 return fmt.Sprintf("Reading block data out of padded block resulted in %d bytes, expected %d", 84 e.ActualLen, e.ExpectedLen) 85 }