Merge pull request #5 from safing/fix/compatibility-and-checks
Fix compatibility and checks
This commit is contained in:
commit
abf8e0b805
4 changed files with 12 additions and 1 deletions
2
core.go
2
core.go
|
@ -15,7 +15,7 @@ func (s *Session) Close(data []byte) (*Letter, error) { //nolint:gocognit
|
|||
letter := &Letter{}
|
||||
|
||||
if s.wire == nil || s.wire.msgNo == 0 {
|
||||
letter.Version = 1
|
||||
letter.Version = s.envelope.Version
|
||||
letter.SuiteID = s.envelope.SuiteID
|
||||
}
|
||||
|
||||
|
|
|
@ -188,6 +188,7 @@ func (e *Envelope) prepSignets(signets []*Signet, recipients bool, storage Trust
|
|||
// keys are _always_ signets
|
||||
if signet.Scheme == SignetSchemeKey {
|
||||
recipients = false
|
||||
// TODO: spills to next loop
|
||||
}
|
||||
|
||||
// signet is referrer
|
||||
|
|
|
@ -86,6 +86,12 @@ func (letter *Letter) ToWire() (*container.Container, error) {
|
|||
return c, nil
|
||||
}
|
||||
|
||||
// LetterFromWireData is a relay to LetterFromWire to quickly fix import issues of godep.
|
||||
// DEPRECATED
|
||||
func LetterFromWireData(data []byte) (*Letter, error) {
|
||||
return LetterFromWire(container.New(data))
|
||||
}
|
||||
|
||||
// LetterFromWire parses a letter sent over a network connection.
|
||||
func LetterFromWire(c *container.Container) (*Letter, error) {
|
||||
letter := &Letter{}
|
||||
|
|
|
@ -50,6 +50,10 @@ func Load(labeledHash []byte) (*LabeledHash, error) {
|
|||
return nil, errors.New("compatibility error: invalid or unsupported algorithm")
|
||||
}
|
||||
|
||||
if alg.new().Size() != len(digest) {
|
||||
return nil, errors.New("integrity error: invalid digest length")
|
||||
}
|
||||
|
||||
return &LabeledHash{
|
||||
alg: alg,
|
||||
digest: digest,
|
||||
|
|
Loading…
Add table
Reference in a new issue