summaryrefslogtreecommitdiffhomepage
path: root/dhcpv6/option_userclass.go
diff options
context:
space:
mode:
authorChris Koch <chrisko@google.com>2023-02-18 20:31:32 -0800
committerChris K <c@chrisko.ch>2023-02-19 22:39:16 -0800
commit336d4b9bd652b2bf0bc1bd0feae3f2f51009c13f (patch)
tree9c99ebb8f3067a39981d8bea07109fd7e7ba0d17 /dhcpv6/option_userclass.go
parent1e0fe5ce427973ca92a0dfb1a06a252ddb0dd4be (diff)
dhcpv6: convert every Parse function to FromBytes
Signed-off-by: Chris Koch <chrisko@google.com>
Diffstat (limited to 'dhcpv6/option_userclass.go')
-rw-r--r--dhcpv6/option_userclass.go13
1 files changed, 6 insertions, 7 deletions
diff --git a/dhcpv6/option_userclass.go b/dhcpv6/option_userclass.go
index 00abcbd..643fdd1 100644
--- a/dhcpv6/option_userclass.go
+++ b/dhcpv6/option_userclass.go
@@ -38,17 +38,16 @@ func (op *OptUserClass) String() string {
return fmt.Sprintf("%s: [%s]", op.Code(), strings.Join(ucStrings, ", "))
}
-// ParseOptUserClass builds an OptUserClass structure from a sequence of
-// bytes. The input data does not include option code and length bytes.
-func ParseOptUserClass(data []byte) (*OptUserClass, error) {
- var opt OptUserClass
+// FromBytes builds an OptUserClass structure from a sequence of bytes. The
+// input data does not include option code and length bytes.
+func (op *OptUserClass) FromBytes(data []byte) error {
if len(data) == 0 {
- return nil, fmt.Errorf("user class option must not be empty")
+ return fmt.Errorf("user class option must not be empty")
}
buf := uio.NewBigEndianBuffer(data)
for buf.Has(2) {
len := buf.Read16()
- opt.UserClasses = append(opt.UserClasses, buf.CopyN(int(len)))
+ op.UserClasses = append(op.UserClasses, buf.CopyN(int(len)))
}
- return &opt, buf.FinError()
+ return buf.FinError()
}