fix mismerge

This commit is contained in:
Wade Simmons
2026-04-27 16:24:34 -04:00
parent 243cf4a7c5
commit ef8b700474

View File

@@ -38,20 +38,25 @@ type cipherAEADDanger interface {
// be re-used by callers to minimize garbage collection. // be re-used by callers to minimize garbage collection.
func (s *NebulaCipherState) EncryptDanger(out, ad, plaintext []byte, n uint64, nb []byte) ([]byte, error) { func (s *NebulaCipherState) EncryptDanger(out, ad, plaintext []byte, n uint64, nb []byte) ([]byte, error) {
if s != nil { if s != nil {
// TODO: Is this okay now that we have made messageCounter atomic? switch ce := s.c.(type) {
// Alternative may be to split the counter space into ranges case cipherAEADDanger:
//if n <= s.n { return ce.EncryptDanger(out, ad, plaintext, n, nb)
// return nil, errors.New("CRITICAL: a duplicate counter value was used") default:
//} // TODO: Is this okay now that we have made messageCounter atomic?
//s.n = n // Alternative may be to split the counter space into ranges
nb[0] = 0 //if n <= s.n {
nb[1] = 0 // return nil, errors.New("CRITICAL: a duplicate counter value was used")
nb[2] = 0 //}
nb[3] = 0 //s.n = n
noiseEndianness.PutUint64(nb[4:], n) nb[0] = 0
out = s.c.Seal(out, nb, plaintext, ad) nb[1] = 0
//l.Debugf("Encryption: outlen: %d, nonce: %d, ad: %s, plainlen %d", len(out), n, ad, len(plaintext)) nb[2] = 0
return out, nil nb[3] = 0
noiseEndianness.PutUint64(nb[4:], n)
out = s.c.Seal(out, nb, plaintext, ad)
//l.Debugf("Encryption: outlen: %d, nonce: %d, ad: %s, plainlen %d", len(out), n, ad, len(plaintext))
return out, nil
}
} else { } else {
return nil, errors.New("no cipher state available to encrypt") return nil, errors.New("no cipher state available to encrypt")
} }
@@ -59,12 +64,17 @@ func (s *NebulaCipherState) EncryptDanger(out, ad, plaintext []byte, n uint64, n
func (s *NebulaCipherState) DecryptDanger(out, ad, ciphertext []byte, n uint64, nb []byte) ([]byte, error) { func (s *NebulaCipherState) DecryptDanger(out, ad, ciphertext []byte, n uint64, nb []byte) ([]byte, error) {
if s != nil { if s != nil {
nb[0] = 0 switch ce := s.c.(type) {
nb[1] = 0 case cipherAEADDanger:
nb[2] = 0 return ce.DecryptDanger(out, ad, ciphertext, n, nb)
nb[3] = 0 default:
noiseEndianness.PutUint64(nb[4:], n) nb[0] = 0
return s.c.Open(out, nb, ciphertext, ad) nb[1] = 0
nb[2] = 0
nb[3] = 0
noiseEndianness.PutUint64(nb[4:], n)
return s.c.Open(out, nb, ciphertext, ad)
}
} else { } else {
return []byte{}, nil return []byte{}, nil
} }