diff options
Diffstat (limited to 'dhcpv6/ztpv6/parse_vendor_options.go')
-rw-r--r-- | dhcpv6/ztpv6/parse_vendor_options.go | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/dhcpv6/ztpv6/parse_vendor_options.go b/dhcpv6/ztpv6/parse_vendor_options.go index b3ce55b..f1508fd 100644 --- a/dhcpv6/ztpv6/parse_vendor_options.go +++ b/dhcpv6/ztpv6/parse_vendor_options.go @@ -81,10 +81,12 @@ func ParseVendorData(packet dhcpv6.DHCPv6) (*VendorData, error) { if len(v) < 3 { return nil, errVendorOptionMalformed } - duid := packet.(*dhcpv6.Message).Options.ClientID() vd.VendorName = iana.EnterpriseIDCienaCorporation.String() vd.Model = v[1] + "-" + v[2] - vd.Serial = string(duid.EnterpriseIdentifier) + duid := packet.(*dhcpv6.Message).Options.ClientID() + if enterpriseDUID, ok := duid.(*dhcpv6.DUIDEN); ok { + vd.Serial = string(enterpriseDUID.EnterpriseIdentifier) + } return &vd, nil } } |