Merge pull request #116 from aratz-lasa/patch-1

Validate bytes when parsing string
This commit is contained in:
Steven Allen
2019-12-09 22:11:29 +01:00
committed by GitHub
+6
View File
@@ -14,8 +14,11 @@ import (
)
type Transcoder interface {
// Validates and encodes to bytes a multiaddr that's in the string representation.
StringToBytes(string) ([]byte, error)
// Validates and decodes to a string a multiaddr that's in the bytes representation.
BytesToString([]byte) (string, error)
// Validates bytes when parsing a multiaddr that's already in the bytes representation.
ValidateBytes([]byte) error
}
@@ -63,6 +66,9 @@ func ip6zoneStB(s string) ([]byte, error) {
if len(s) == 0 {
return nil, fmt.Errorf("empty ip6zone")
}
if strings.Contains(s, "/") {
return nil, fmt.Errorf("IPv6 zone ID contains '/': %s", s)
}
return []byte(s), nil
}