diff --git a/server-packet.go b/server-packet.go index 1347d43..cc4d028 100644 --- a/server-packet.go +++ b/server-packet.go @@ -156,7 +156,8 @@ func (s *PacketServer) Serve(conn net.PacketConn) error { return } - if !s.InsecureSkipVerify && !IsAuthenticRequest(buff, secret) { + isAuthentic := IsAuthenticRequest(buff, secret) + if !s.InsecureSkipVerify && !isAuthentic { s.logf("radius: packet validation failed; bad secret") return } @@ -192,10 +193,11 @@ func (s *PacketServer) Serve(conn net.PacketConn) error { }() request := Request{ - LocalAddr: conn.LocalAddr(), - RemoteAddr: remoteAddr, - Packet: packet, - ctx: s.ctx, + LocalAddr: conn.LocalAddr(), + RemoteAddr: remoteAddr, + IsAuthentic: isAuthentic, + Packet: packet, + ctx: s.ctx, } s.Handler.ServeRADIUS(&response, &request) diff --git a/server.go b/server.go index 8a93abb..e27ff02 100644 --- a/server.go +++ b/server.go @@ -32,6 +32,8 @@ type Request struct { // RemoteAddr is the address from which the incoming RADIUS request // was sent. RemoteAddr net.Addr + // IsAuthentic is true if the secret that was used matches the one we have + IsAuthentic bool // Packet is the RADIUS packet sent in the request. *Packet diff --git a/vendors/alcatel/dictionary.alcatel b/vendors/alcatel/dictionary.alcatel new file mode 100644 index 0000000..69e9b94 --- /dev/null +++ b/vendors/alcatel/dictionary.alcatel @@ -0,0 +1,64 @@ +# -*- text -*- +############################################################################## +# +# Alcatel Broadband Access Server dictionary. +# +# $Id: dictionary.alcatel, 2006/04/18 17:50:50 aland Exp $ +# +############################################################################## + +#Alcatel Dictionary file for FreeRadius Servers + +VENDOR Alcatel 800 + +BEGIN-VENDOR Alcatel + +ATTRIBUTE Alcatel-Auth-Group 1 integer +ATTRIBUTE Alcatel-Slot-Port 2 string +ATTRIBUTE Alcatel-Time-of-Day 3 string +ATTRIBUTE Alcatel-Client-IP-Addr 4 ipaddr +ATTRIBUTE Alcatel-Group-Desc 5 string +ATTRIBUTE Alcatel-Port-Desc 6 string + +ATTRIBUTE Alcatel-Auth-Group-Protocol 8 string +ATTRIBUTE Alcatel-Asa-Access 9 string +ATTRIBUTE Alcatel-End-User-Profile 10 string + +ATTRIBUTE AAT-Primary-Home-Agent 12 string +ATTRIBUTE AAT-Secondary-Home-Agent 13 string +ATTRIBUTE AAT-Home-Agent-Password 14 string +ATTRIBUTE AAT-Home-Network-Name 15 string + +ATTRIBUTE Alcatel-Access-Priv 16 integer +VALUE Alcatel-Access-Priv Alcatel-Read-Priv 1 +VALUE Alcatel-Access-Priv Alcatel-Write-Priv 2 +VALUE Alcatel-Access-Priv Alcatel-Admin-Priv 3 + +ATTRIBUTE Alcatel-Nms-Group 20 string +ATTRIBUTE Alcatel-Nms-First-Name 21 string +ATTRIBUTE Alcatel-Nms-Last-Name 22 string +ATTRIBUTE Alcatel-Nms-Description 23 string + +ATTRIBUTE Alcatel-Acce-Priv-R1 33 octets +ATTRIBUTE Alcatel-Acce-Priv-R2 34 octets +ATTRIBUTE Alcatel-Acce-Priv-W1 35 octets +ATTRIBUTE Alcatel-Acce-Priv-W2 36 octets +ATTRIBUTE Alcatel-Acce-Priv-G1 37 octets +ATTRIBUTE Alcatel-Acce-Priv-G2 38 octets +ATTRIBUTE Alcatel-Acce-Priv-F-R1 39 octets +ATTRIBUTE Alcatel-Acce-Priv-F-R2 40 octets +ATTRIBUTE Alcatel-Acce-Priv-F-W1 41 octets +ATTRIBUTE Alcatel-Acce-Priv-F-W2 42 octets +ATTRIBUTE Alcatel-Acce-Priv-F-R3 43 octets +ATTRIBUTE Alcatel-Acce-Priv-F-R4 44 octets +ATTRIBUTE Alcatel-Acce-Priv-F-W3 45 octets +ATTRIBUTE Alcatel-Acce-Priv-F-W4 46 octets + +ATTRIBUTE Alcatel-Policy-List 100 string +ATTRIBUTE Alcatel-Redirect-Url 101 string +ATTRIBUTE Alcatel-Device-Name 152 string +ATTRIBUTE Alcatel-Device-Location 153 string +ATTRIBUTE Alcatel-AP-Group 154 string +ATTRIBUTE Alcatel-Device-Psk 155 string + +END-VENDOR Alcatel diff --git a/vendors/alcatel/generate.go b/vendors/alcatel/generate.go new file mode 100644 index 0000000..fb1943a --- /dev/null +++ b/vendors/alcatel/generate.go @@ -0,0 +1,3 @@ +//go:generate go run ../../cmd/radius-dict-gen/main.go -package alcatel -output generated.go dictionary.alcatel + +package alcatel diff --git a/vendors/alcatel/generated.go b/vendors/alcatel/generated.go new file mode 100644 index 0000000..3c119e3 --- /dev/null +++ b/vendors/alcatel/generated.go @@ -0,0 +1,3608 @@ +// Code generated by radius-dict-gen. DO NOT EDIT. + +package alcatel + +import ( + "net" + "strconv" + + "layeh.com/radius" + "layeh.com/radius/rfc2865" +) + +const ( + _Alcatel_VendorID = 800 +) + +func _Alcatel_AddVendor(p *radius.Packet, typ byte, attr radius.Attribute) (err error) { + var vsa radius.Attribute + vendor := make(radius.Attribute, 2+len(attr)) + vendor[0] = typ + vendor[1] = byte(len(vendor)) + copy(vendor[2:], attr) + vsa, err = radius.NewVendorSpecific(_Alcatel_VendorID, vendor) + if err != nil { + return + } + p.Add(rfc2865.VendorSpecific_Type, vsa) + return +} + +func _Alcatel_GetsVendor(p *radius.Packet, typ byte) (values []radius.Attribute) { + for _, avp := range p.Attributes { + if avp.Type != rfc2865.VendorSpecific_Type { + continue + } + attr := avp.Attribute + vendorID, vsa, err := radius.VendorSpecific(attr) + if err != nil || vendorID != _Alcatel_VendorID { + continue + } + for len(vsa) >= 3 { + vsaTyp, vsaLen := vsa[0], vsa[1] + if int(vsaLen) > len(vsa) || vsaLen < 3 { + break + } + if vsaTyp == typ { + values = append(values, vsa[2:int(vsaLen)]) + } + vsa = vsa[int(vsaLen):] + } + } + return +} + +func _Alcatel_LookupVendor(p *radius.Packet, typ byte) (attr radius.Attribute, ok bool) { + for _, avp := range p.Attributes { + if avp.Type != rfc2865.VendorSpecific_Type { + continue + } + attr := avp.Attribute + vendorID, vsa, err := radius.VendorSpecific(attr) + if err != nil || vendorID != _Alcatel_VendorID { + continue + } + for len(vsa) >= 3 { + vsaTyp, vsaLen := vsa[0], vsa[1] + if int(vsaLen) > len(vsa) || vsaLen < 3 { + break + } + if vsaTyp == typ { + return vsa[2:int(vsaLen)], true + } + vsa = vsa[int(vsaLen):] + } + } + return +} + +func _Alcatel_SetVendor(p *radius.Packet, typ byte, attr radius.Attribute) (err error) { + for i := 0; i < len(p.Attributes); { + avp := p.Attributes[i] + if avp.Type != rfc2865.VendorSpecific_Type { + i++ + continue + } + vendorID, vsa, err := radius.VendorSpecific(avp.Attribute) + if err != nil || vendorID != _Alcatel_VendorID { + i++ + continue + } + for j := 0; len(vsa[j:]) >= 3; { + vsaTyp, vsaLen := vsa[0], vsa[1] + if int(vsaLen) > len(vsa[j:]) || vsaLen < 3 { + i++ + break + } + if vsaTyp == typ { + vsa = append(vsa[:j], vsa[j+int(vsaLen):]...) + } + j += int(vsaLen) + } + if len(vsa) > 0 { + copy(avp.Attribute[4:], vsa) + i++ + } else { + p.Attributes = append(p.Attributes[:i], p.Attributes[i+i:]...) + } + } + return _Alcatel_AddVendor(p, typ, attr) +} + +func _Alcatel_DelVendor(p *radius.Packet, typ byte) { +vsaLoop: + for i := 0; i < len(p.Attributes); { + avp := p.Attributes[i] + if avp.Type != rfc2865.VendorSpecific_Type { + i++ + continue + } + vendorID, vsa, err := radius.VendorSpecific(avp.Attribute) + if err != nil || vendorID != _Alcatel_VendorID { + i++ + continue + } + offset := 0 + for len(vsa[offset:]) >= 3 { + vsaTyp, vsaLen := vsa[offset], vsa[offset+1] + if int(vsaLen) > len(vsa) || vsaLen < 3 { + continue vsaLoop + } + if vsaTyp == typ { + copy(vsa[offset:], vsa[offset+int(vsaLen):]) + vsa = vsa[:len(vsa)-int(vsaLen)] + } else { + offset += int(vsaLen) + } + } + if offset == 0 { + p.Attributes = append(p.Attributes[:i], p.Attributes[i+1:]...) + } else { + i++ + } + } + return +} + +type AlcatelAuthGroup uint32 + +var AlcatelAuthGroup_Strings = map[AlcatelAuthGroup]string{} + +func (a AlcatelAuthGroup) String() string { + if str, ok := AlcatelAuthGroup_Strings[a]; ok { + return str + } + return "AlcatelAuthGroup(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func AlcatelAuthGroup_Add(p *radius.Packet, value AlcatelAuthGroup) (err error) { + a := radius.NewInteger(uint32(value)) + return _Alcatel_AddVendor(p, 1, a) +} + +func AlcatelAuthGroup_Get(p *radius.Packet) (value AlcatelAuthGroup) { + value, _ = AlcatelAuthGroup_Lookup(p) + return +} + +func AlcatelAuthGroup_Gets(p *radius.Packet) (values []AlcatelAuthGroup, err error) { + var i uint32 + for _, attr := range _Alcatel_GetsVendor(p, 1) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, AlcatelAuthGroup(i)) + } + return +} + +func AlcatelAuthGroup_Lookup(p *radius.Packet) (value AlcatelAuthGroup, err error) { + a, ok := _Alcatel_LookupVendor(p, 1) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = AlcatelAuthGroup(i) + return +} + +func AlcatelAuthGroup_Set(p *radius.Packet, value AlcatelAuthGroup) (err error) { + a := radius.NewInteger(uint32(value)) + return _Alcatel_SetVendor(p, 1, a) +} + +func AlcatelAuthGroup_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 1) +} + +func AlcatelSlotPort_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 2, a) +} + +func AlcatelSlotPort_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 2, a) +} + +func AlcatelSlotPort_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelSlotPort_Lookup(p) + return +} + +func AlcatelSlotPort_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelSlotPort_LookupString(p) + return +} + +func AlcatelSlotPort_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 2) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelSlotPort_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 2) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelSlotPort_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 2) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelSlotPort_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 2) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelSlotPort_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 2, a) +} + +func AlcatelSlotPort_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 2, a) +} + +func AlcatelSlotPort_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 2) +} + +func AlcatelTimeOfDay_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 3, a) +} + +func AlcatelTimeOfDay_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 3, a) +} + +func AlcatelTimeOfDay_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelTimeOfDay_Lookup(p) + return +} + +func AlcatelTimeOfDay_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelTimeOfDay_LookupString(p) + return +} + +func AlcatelTimeOfDay_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 3) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelTimeOfDay_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 3) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelTimeOfDay_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 3) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelTimeOfDay_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 3) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelTimeOfDay_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 3, a) +} + +func AlcatelTimeOfDay_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 3, a) +} + +func AlcatelTimeOfDay_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 3) +} + +func AlcatelClientIPAddr_Add(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 4, a) +} + +func AlcatelClientIPAddr_Get(p *radius.Packet) (value net.IP) { + value, _ = AlcatelClientIPAddr_Lookup(p) + return +} + +func AlcatelClientIPAddr_Gets(p *radius.Packet) (values []net.IP, err error) { + var i net.IP + for _, attr := range _Alcatel_GetsVendor(p, 4) { + i, err = radius.IPAddr(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelClientIPAddr_Lookup(p *radius.Packet) (value net.IP, err error) { + a, ok := _Alcatel_LookupVendor(p, 4) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.IPAddr(a) + return +} + +func AlcatelClientIPAddr_Set(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 4, a) +} + +func AlcatelClientIPAddr_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 4) +} + +func AlcatelGroupDesc_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 5, a) +} + +func AlcatelGroupDesc_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 5, a) +} + +func AlcatelGroupDesc_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelGroupDesc_Lookup(p) + return +} + +func AlcatelGroupDesc_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelGroupDesc_LookupString(p) + return +} + +func AlcatelGroupDesc_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 5) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelGroupDesc_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 5) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelGroupDesc_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 5) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelGroupDesc_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 5) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelGroupDesc_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 5, a) +} + +func AlcatelGroupDesc_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 5, a) +} + +func AlcatelGroupDesc_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 5) +} + +func AlcatelPortDesc_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 6, a) +} + +func AlcatelPortDesc_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 6, a) +} + +func AlcatelPortDesc_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelPortDesc_Lookup(p) + return +} + +func AlcatelPortDesc_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelPortDesc_LookupString(p) + return +} + +func AlcatelPortDesc_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 6) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelPortDesc_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 6) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelPortDesc_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 6) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelPortDesc_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 6) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelPortDesc_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 6, a) +} + +func AlcatelPortDesc_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 6, a) +} + +func AlcatelPortDesc_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 6) +} + +func AlcatelAuthGroupProtocol_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 8, a) +} + +func AlcatelAuthGroupProtocol_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 8, a) +} + +func AlcatelAuthGroupProtocol_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAuthGroupProtocol_Lookup(p) + return +} + +func AlcatelAuthGroupProtocol_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAuthGroupProtocol_LookupString(p) + return +} + +func AlcatelAuthGroupProtocol_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 8) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAuthGroupProtocol_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 8) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAuthGroupProtocol_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 8) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAuthGroupProtocol_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 8) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAuthGroupProtocol_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 8, a) +} + +func AlcatelAuthGroupProtocol_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 8, a) +} + +func AlcatelAuthGroupProtocol_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 8) +} + +func AlcatelAsaAccess_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 9, a) +} + +func AlcatelAsaAccess_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 9, a) +} + +func AlcatelAsaAccess_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAsaAccess_Lookup(p) + return +} + +func AlcatelAsaAccess_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAsaAccess_LookupString(p) + return +} + +func AlcatelAsaAccess_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 9) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAsaAccess_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 9) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAsaAccess_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 9) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAsaAccess_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 9) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAsaAccess_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 9, a) +} + +func AlcatelAsaAccess_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 9, a) +} + +func AlcatelAsaAccess_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 9) +} + +func AlcatelEndUserProfile_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 10, a) +} + +func AlcatelEndUserProfile_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 10, a) +} + +func AlcatelEndUserProfile_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelEndUserProfile_Lookup(p) + return +} + +func AlcatelEndUserProfile_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelEndUserProfile_LookupString(p) + return +} + +func AlcatelEndUserProfile_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 10) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelEndUserProfile_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 10) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelEndUserProfile_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 10) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelEndUserProfile_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 10) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelEndUserProfile_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 10, a) +} + +func AlcatelEndUserProfile_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 10, a) +} + +func AlcatelEndUserProfile_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 10) +} + +func AATPrimaryHomeAgent_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 12, a) +} + +func AATPrimaryHomeAgent_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 12, a) +} + +func AATPrimaryHomeAgent_Get(p *radius.Packet) (value []byte) { + value, _ = AATPrimaryHomeAgent_Lookup(p) + return +} + +func AATPrimaryHomeAgent_GetString(p *radius.Packet) (value string) { + value, _ = AATPrimaryHomeAgent_LookupString(p) + return +} + +func AATPrimaryHomeAgent_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 12) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATPrimaryHomeAgent_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 12) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATPrimaryHomeAgent_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 12) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AATPrimaryHomeAgent_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 12) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AATPrimaryHomeAgent_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 12, a) +} + +func AATPrimaryHomeAgent_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 12, a) +} + +func AATPrimaryHomeAgent_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 12) +} + +func AATSecondaryHomeAgent_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 13, a) +} + +func AATSecondaryHomeAgent_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 13, a) +} + +func AATSecondaryHomeAgent_Get(p *radius.Packet) (value []byte) { + value, _ = AATSecondaryHomeAgent_Lookup(p) + return +} + +func AATSecondaryHomeAgent_GetString(p *radius.Packet) (value string) { + value, _ = AATSecondaryHomeAgent_LookupString(p) + return +} + +func AATSecondaryHomeAgent_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 13) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATSecondaryHomeAgent_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 13) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATSecondaryHomeAgent_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 13) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AATSecondaryHomeAgent_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 13) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AATSecondaryHomeAgent_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 13, a) +} + +func AATSecondaryHomeAgent_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 13, a) +} + +func AATSecondaryHomeAgent_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 13) +} + +func AATHomeAgentPassword_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 14, a) +} + +func AATHomeAgentPassword_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 14, a) +} + +func AATHomeAgentPassword_Get(p *radius.Packet) (value []byte) { + value, _ = AATHomeAgentPassword_Lookup(p) + return +} + +func AATHomeAgentPassword_GetString(p *radius.Packet) (value string) { + value, _ = AATHomeAgentPassword_LookupString(p) + return +} + +func AATHomeAgentPassword_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 14) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATHomeAgentPassword_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 14) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATHomeAgentPassword_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 14) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AATHomeAgentPassword_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 14) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AATHomeAgentPassword_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 14, a) +} + +func AATHomeAgentPassword_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 14, a) +} + +func AATHomeAgentPassword_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 14) +} + +func AATHomeNetworkName_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 15, a) +} + +func AATHomeNetworkName_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 15, a) +} + +func AATHomeNetworkName_Get(p *radius.Packet) (value []byte) { + value, _ = AATHomeNetworkName_Lookup(p) + return +} + +func AATHomeNetworkName_GetString(p *radius.Packet) (value string) { + value, _ = AATHomeNetworkName_LookupString(p) + return +} + +func AATHomeNetworkName_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 15) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATHomeNetworkName_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 15) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AATHomeNetworkName_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 15) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AATHomeNetworkName_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 15) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AATHomeNetworkName_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 15, a) +} + +func AATHomeNetworkName_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 15, a) +} + +func AATHomeNetworkName_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 15) +} + +type AlcatelAccessPriv uint32 + +const ( + AlcatelAccessPriv_Value_AlcatelReadPriv AlcatelAccessPriv = 1 + AlcatelAccessPriv_Value_AlcatelWritePriv AlcatelAccessPriv = 2 + AlcatelAccessPriv_Value_AlcatelAdminPriv AlcatelAccessPriv = 3 +) + +var AlcatelAccessPriv_Strings = map[AlcatelAccessPriv]string{ + AlcatelAccessPriv_Value_AlcatelReadPriv: "Alcatel-Read-Priv", + AlcatelAccessPriv_Value_AlcatelWritePriv: "Alcatel-Write-Priv", + AlcatelAccessPriv_Value_AlcatelAdminPriv: "Alcatel-Admin-Priv", +} + +func (a AlcatelAccessPriv) String() string { + if str, ok := AlcatelAccessPriv_Strings[a]; ok { + return str + } + return "AlcatelAccessPriv(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func AlcatelAccessPriv_Add(p *radius.Packet, value AlcatelAccessPriv) (err error) { + a := radius.NewInteger(uint32(value)) + return _Alcatel_AddVendor(p, 16, a) +} + +func AlcatelAccessPriv_Get(p *radius.Packet) (value AlcatelAccessPriv) { + value, _ = AlcatelAccessPriv_Lookup(p) + return +} + +func AlcatelAccessPriv_Gets(p *radius.Packet) (values []AlcatelAccessPriv, err error) { + var i uint32 + for _, attr := range _Alcatel_GetsVendor(p, 16) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, AlcatelAccessPriv(i)) + } + return +} + +func AlcatelAccessPriv_Lookup(p *radius.Packet) (value AlcatelAccessPriv, err error) { + a, ok := _Alcatel_LookupVendor(p, 16) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = AlcatelAccessPriv(i) + return +} + +func AlcatelAccessPriv_Set(p *radius.Packet, value AlcatelAccessPriv) (err error) { + a := radius.NewInteger(uint32(value)) + return _Alcatel_SetVendor(p, 16, a) +} + +func AlcatelAccessPriv_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 16) +} + +func AlcatelNmsGroup_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 20, a) +} + +func AlcatelNmsGroup_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 20, a) +} + +func AlcatelNmsGroup_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelNmsGroup_Lookup(p) + return +} + +func AlcatelNmsGroup_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelNmsGroup_LookupString(p) + return +} + +func AlcatelNmsGroup_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 20) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsGroup_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 20) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsGroup_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 20) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelNmsGroup_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 20) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelNmsGroup_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 20, a) +} + +func AlcatelNmsGroup_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 20, a) +} + +func AlcatelNmsGroup_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 20) +} + +func AlcatelNmsFirstName_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 21, a) +} + +func AlcatelNmsFirstName_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 21, a) +} + +func AlcatelNmsFirstName_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelNmsFirstName_Lookup(p) + return +} + +func AlcatelNmsFirstName_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelNmsFirstName_LookupString(p) + return +} + +func AlcatelNmsFirstName_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 21) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsFirstName_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 21) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsFirstName_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 21) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelNmsFirstName_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 21) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelNmsFirstName_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 21, a) +} + +func AlcatelNmsFirstName_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 21, a) +} + +func AlcatelNmsFirstName_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 21) +} + +func AlcatelNmsLastName_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 22, a) +} + +func AlcatelNmsLastName_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 22, a) +} + +func AlcatelNmsLastName_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelNmsLastName_Lookup(p) + return +} + +func AlcatelNmsLastName_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelNmsLastName_LookupString(p) + return +} + +func AlcatelNmsLastName_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 22) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsLastName_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 22) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsLastName_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 22) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelNmsLastName_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 22) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelNmsLastName_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 22, a) +} + +func AlcatelNmsLastName_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 22, a) +} + +func AlcatelNmsLastName_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 22) +} + +func AlcatelNmsDescription_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 23, a) +} + +func AlcatelNmsDescription_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 23, a) +} + +func AlcatelNmsDescription_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelNmsDescription_Lookup(p) + return +} + +func AlcatelNmsDescription_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelNmsDescription_LookupString(p) + return +} + +func AlcatelNmsDescription_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 23) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsDescription_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 23) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelNmsDescription_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 23) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelNmsDescription_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 23) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelNmsDescription_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 23, a) +} + +func AlcatelNmsDescription_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 23, a) +} + +func AlcatelNmsDescription_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 23) +} + +func AlcatelAccePrivR1_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 33, a) +} + +func AlcatelAccePrivR1_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 33, a) +} + +func AlcatelAccePrivR1_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivR1_Lookup(p) + return +} + +func AlcatelAccePrivR1_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivR1_LookupString(p) + return +} + +func AlcatelAccePrivR1_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 33) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivR1_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 33) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivR1_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 33) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivR1_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 33) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivR1_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 33, a) +} + +func AlcatelAccePrivR1_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 33, a) +} + +func AlcatelAccePrivR1_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 33) +} + +func AlcatelAccePrivR2_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 34, a) +} + +func AlcatelAccePrivR2_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 34, a) +} + +func AlcatelAccePrivR2_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivR2_Lookup(p) + return +} + +func AlcatelAccePrivR2_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivR2_LookupString(p) + return +} + +func AlcatelAccePrivR2_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 34) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivR2_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 34) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivR2_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 34) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivR2_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 34) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivR2_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 34, a) +} + +func AlcatelAccePrivR2_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 34, a) +} + +func AlcatelAccePrivR2_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 34) +} + +func AlcatelAccePrivW1_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 35, a) +} + +func AlcatelAccePrivW1_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 35, a) +} + +func AlcatelAccePrivW1_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivW1_Lookup(p) + return +} + +func AlcatelAccePrivW1_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivW1_LookupString(p) + return +} + +func AlcatelAccePrivW1_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 35) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivW1_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 35) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivW1_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 35) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivW1_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 35) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivW1_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 35, a) +} + +func AlcatelAccePrivW1_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 35, a) +} + +func AlcatelAccePrivW1_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 35) +} + +func AlcatelAccePrivW2_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 36, a) +} + +func AlcatelAccePrivW2_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 36, a) +} + +func AlcatelAccePrivW2_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivW2_Lookup(p) + return +} + +func AlcatelAccePrivW2_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivW2_LookupString(p) + return +} + +func AlcatelAccePrivW2_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 36) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivW2_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 36) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivW2_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 36) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivW2_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 36) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivW2_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 36, a) +} + +func AlcatelAccePrivW2_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 36, a) +} + +func AlcatelAccePrivW2_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 36) +} + +func AlcatelAccePrivG1_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 37, a) +} + +func AlcatelAccePrivG1_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 37, a) +} + +func AlcatelAccePrivG1_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivG1_Lookup(p) + return +} + +func AlcatelAccePrivG1_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivG1_LookupString(p) + return +} + +func AlcatelAccePrivG1_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 37) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivG1_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 37) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivG1_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 37) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivG1_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 37) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivG1_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 37, a) +} + +func AlcatelAccePrivG1_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 37, a) +} + +func AlcatelAccePrivG1_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 37) +} + +func AlcatelAccePrivG2_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 38, a) +} + +func AlcatelAccePrivG2_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 38, a) +} + +func AlcatelAccePrivG2_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivG2_Lookup(p) + return +} + +func AlcatelAccePrivG2_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivG2_LookupString(p) + return +} + +func AlcatelAccePrivG2_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 38) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivG2_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 38) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivG2_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 38) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivG2_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 38) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivG2_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 38, a) +} + +func AlcatelAccePrivG2_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 38, a) +} + +func AlcatelAccePrivG2_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 38) +} + +func AlcatelAccePrivFR1_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 39, a) +} + +func AlcatelAccePrivFR1_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 39, a) +} + +func AlcatelAccePrivFR1_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFR1_Lookup(p) + return +} + +func AlcatelAccePrivFR1_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFR1_LookupString(p) + return +} + +func AlcatelAccePrivFR1_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 39) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR1_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 39) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR1_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 39) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFR1_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 39) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFR1_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 39, a) +} + +func AlcatelAccePrivFR1_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 39, a) +} + +func AlcatelAccePrivFR1_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 39) +} + +func AlcatelAccePrivFR2_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 40, a) +} + +func AlcatelAccePrivFR2_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 40, a) +} + +func AlcatelAccePrivFR2_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFR2_Lookup(p) + return +} + +func AlcatelAccePrivFR2_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFR2_LookupString(p) + return +} + +func AlcatelAccePrivFR2_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 40) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR2_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 40) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR2_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 40) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFR2_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 40) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFR2_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 40, a) +} + +func AlcatelAccePrivFR2_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 40, a) +} + +func AlcatelAccePrivFR2_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 40) +} + +func AlcatelAccePrivFW1_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 41, a) +} + +func AlcatelAccePrivFW1_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 41, a) +} + +func AlcatelAccePrivFW1_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFW1_Lookup(p) + return +} + +func AlcatelAccePrivFW1_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFW1_LookupString(p) + return +} + +func AlcatelAccePrivFW1_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 41) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW1_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 41) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW1_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 41) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFW1_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 41) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFW1_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 41, a) +} + +func AlcatelAccePrivFW1_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 41, a) +} + +func AlcatelAccePrivFW1_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 41) +} + +func AlcatelAccePrivFW2_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 42, a) +} + +func AlcatelAccePrivFW2_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 42, a) +} + +func AlcatelAccePrivFW2_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFW2_Lookup(p) + return +} + +func AlcatelAccePrivFW2_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFW2_LookupString(p) + return +} + +func AlcatelAccePrivFW2_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 42) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW2_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 42) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW2_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 42) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFW2_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 42) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFW2_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 42, a) +} + +func AlcatelAccePrivFW2_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 42, a) +} + +func AlcatelAccePrivFW2_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 42) +} + +func AlcatelAccePrivFR3_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 43, a) +} + +func AlcatelAccePrivFR3_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 43, a) +} + +func AlcatelAccePrivFR3_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFR3_Lookup(p) + return +} + +func AlcatelAccePrivFR3_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFR3_LookupString(p) + return +} + +func AlcatelAccePrivFR3_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 43) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR3_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 43) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR3_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 43) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFR3_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 43) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFR3_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 43, a) +} + +func AlcatelAccePrivFR3_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 43, a) +} + +func AlcatelAccePrivFR3_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 43) +} + +func AlcatelAccePrivFR4_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 44, a) +} + +func AlcatelAccePrivFR4_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 44, a) +} + +func AlcatelAccePrivFR4_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFR4_Lookup(p) + return +} + +func AlcatelAccePrivFR4_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFR4_LookupString(p) + return +} + +func AlcatelAccePrivFR4_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 44) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR4_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 44) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFR4_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 44) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFR4_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 44) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFR4_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 44, a) +} + +func AlcatelAccePrivFR4_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 44, a) +} + +func AlcatelAccePrivFR4_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 44) +} + +func AlcatelAccePrivFW3_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 45, a) +} + +func AlcatelAccePrivFW3_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 45, a) +} + +func AlcatelAccePrivFW3_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFW3_Lookup(p) + return +} + +func AlcatelAccePrivFW3_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFW3_LookupString(p) + return +} + +func AlcatelAccePrivFW3_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 45) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW3_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 45) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW3_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 45) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFW3_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 45) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFW3_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 45, a) +} + +func AlcatelAccePrivFW3_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 45, a) +} + +func AlcatelAccePrivFW3_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 45) +} + +func AlcatelAccePrivFW4_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 46, a) +} + +func AlcatelAccePrivFW4_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 46, a) +} + +func AlcatelAccePrivFW4_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAccePrivFW4_Lookup(p) + return +} + +func AlcatelAccePrivFW4_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAccePrivFW4_LookupString(p) + return +} + +func AlcatelAccePrivFW4_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 46) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW4_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 46) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAccePrivFW4_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 46) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAccePrivFW4_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 46) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAccePrivFW4_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 46, a) +} + +func AlcatelAccePrivFW4_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 46, a) +} + +func AlcatelAccePrivFW4_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 46) +} + +func AlcatelPolicyList_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 100, a) +} + +func AlcatelPolicyList_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 100, a) +} + +func AlcatelPolicyList_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelPolicyList_Lookup(p) + return +} + +func AlcatelPolicyList_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelPolicyList_LookupString(p) + return +} + +func AlcatelPolicyList_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 100) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelPolicyList_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 100) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelPolicyList_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 100) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelPolicyList_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 100) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelPolicyList_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 100, a) +} + +func AlcatelPolicyList_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 100, a) +} + +func AlcatelPolicyList_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 100) +} + +func AlcatelRedirectURL_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 101, a) +} + +func AlcatelRedirectURL_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 101, a) +} + +func AlcatelRedirectURL_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelRedirectURL_Lookup(p) + return +} + +func AlcatelRedirectURL_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelRedirectURL_LookupString(p) + return +} + +func AlcatelRedirectURL_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 101) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelRedirectURL_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 101) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelRedirectURL_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 101) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelRedirectURL_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 101) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelRedirectURL_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 101, a) +} + +func AlcatelRedirectURL_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 101, a) +} + +func AlcatelRedirectURL_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 101) +} + +func AlcatelDeviceName_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 152, a) +} + +func AlcatelDeviceName_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 152, a) +} + +func AlcatelDeviceName_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelDeviceName_Lookup(p) + return +} + +func AlcatelDeviceName_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelDeviceName_LookupString(p) + return +} + +func AlcatelDeviceName_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 152) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelDeviceName_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 152) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelDeviceName_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 152) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelDeviceName_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 152) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelDeviceName_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 152, a) +} + +func AlcatelDeviceName_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 152, a) +} + +func AlcatelDeviceName_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 152) +} + +func AlcatelDeviceLocation_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 153, a) +} + +func AlcatelDeviceLocation_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 153, a) +} + +func AlcatelDeviceLocation_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelDeviceLocation_Lookup(p) + return +} + +func AlcatelDeviceLocation_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelDeviceLocation_LookupString(p) + return +} + +func AlcatelDeviceLocation_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 153) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelDeviceLocation_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 153) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelDeviceLocation_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 153) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelDeviceLocation_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 153) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelDeviceLocation_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 153, a) +} + +func AlcatelDeviceLocation_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 153, a) +} + +func AlcatelDeviceLocation_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 153) +} + +func AlcatelAPGroup_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 154, a) +} + +func AlcatelAPGroup_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 154, a) +} + +func AlcatelAPGroup_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelAPGroup_Lookup(p) + return +} + +func AlcatelAPGroup_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelAPGroup_LookupString(p) + return +} + +func AlcatelAPGroup_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 154) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAPGroup_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 154) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelAPGroup_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 154) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelAPGroup_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 154) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelAPGroup_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 154, a) +} + +func AlcatelAPGroup_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 154, a) +} + +func AlcatelAPGroup_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 154) +} + +func AlcatelDevicePsk_Add(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 155, a) +} + +func AlcatelDevicePsk_AddString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_AddVendor(p, 155, a) +} + +func AlcatelDevicePsk_Get(p *radius.Packet) (value []byte) { + value, _ = AlcatelDevicePsk_Lookup(p) + return +} + +func AlcatelDevicePsk_GetString(p *radius.Packet) (value string) { + value, _ = AlcatelDevicePsk_LookupString(p) + return +} + +func AlcatelDevicePsk_Gets(p *radius.Packet) (values [][]byte, err error) { + var i []byte + for _, attr := range _Alcatel_GetsVendor(p, 155) { + i = radius.Bytes(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelDevicePsk_GetStrings(p *radius.Packet) (values []string, err error) { + var i string + for _, attr := range _Alcatel_GetsVendor(p, 155) { + i = radius.String(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func AlcatelDevicePsk_Lookup(p *radius.Packet) (value []byte, err error) { + a, ok := _Alcatel_LookupVendor(p, 155) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.Bytes(a) + return +} + +func AlcatelDevicePsk_LookupString(p *radius.Packet) (value string, err error) { + a, ok := _Alcatel_LookupVendor(p, 155) + if !ok { + err = radius.ErrNoAttribute + return + } + value = radius.String(a) + return +} + +func AlcatelDevicePsk_Set(p *radius.Packet, value []byte) (err error) { + var a radius.Attribute + a, err = radius.NewBytes(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 155, a) +} + +func AlcatelDevicePsk_SetString(p *radius.Packet, value string) (err error) { + var a radius.Attribute + a, err = radius.NewString(value) + if err != nil { + return + } + return _Alcatel_SetVendor(p, 155, a) +} + +func AlcatelDevicePsk_Del(p *radius.Packet) { + _Alcatel_DelVendor(p, 155) +} diff --git a/vendors/freeradius/dictionary.freeradius b/vendors/freeradius/dictionary.freeradius new file mode 100644 index 0000000..2747b5c --- /dev/null +++ b/vendors/freeradius/dictionary.freeradius @@ -0,0 +1,209 @@ +# -*- text -*- +# Copyright (C) 2020 The FreeRADIUS Server project and contributors +# This work is licensed under CC-BY version 4.0 https://creativecommons.org/licenses/by/4.0 +# Version $Id$ +# +# The FreeRADIUS Vendor-Specific dictionary. +# +# Version: $Id$ +# +# For a complete list of Private Enterprise Codes, see: +# +# http://www.isi.edu/in-notes/iana/assignments/enterprise-numbers +# + +VENDOR FreeRADIUS 11344 + +BEGIN-VENDOR FreeRADIUS + +ATTRIBUTE Proxied-To 1 ipaddr +ATTRIBUTE Session-Start-Time 2 date + +# +# FreeRADIUS v4 produces statistics in its own TLV +# +#ATTRIBUTE Stats4 15 tlv +#ATTRIBUTE Stats4-Type 15.1 integer + +#VALUE Stats4-Type Global 1 +#VALUE Stats4-Type Client 2 +#VALUE Stats4-Type Listener 3 + +#ATTRIBUTE Stats4-Name 3.2 string +#ATTRIBUTE Stats4-Number 3.3 string +#ATTRIBUTE Stats4-IPv4-Address 3.4 ipaddr +#ATTRIBUTE Stats4-IPv6-Address 3.5 ipv6addr +#ATTRIBUTE Stats4-Port 3.6 integer + +# +# All of the counters are in a sub-TLV +# +#ATTRIBUTE Stats4-Counters 15.8 TLV +#ATTRIBUTE Stats4-Requests 15.8.1 integer64 +#ATTRIBUTE Stats4-Responses 15.8.2 integer64 +#ATTRIBUTE Stats4-Invalid-Requests 15.8.3 integer64 +#ATTRIBUTE Stats4-Dup-Requests 15.8.4 integer64 +#ATTRIBUTE Stats4-Malformed-Requests 15.8.5 integer64 +#ATTRIBUTE Stats4-Packets-Dropped 15.8.6 integer64 +#ATTRIBUTE Stats4-Bad-Authenticators 15.8.7 integer64 +#ATTRIBUTE Stats4-Unknown-Types 15.8.8 integer64 + +# +# These count request and response packets for each type of packet. +# There is just one attribute for all of these counters. We trust +# that the reader is knowledgable enough to know which ones are +# requests, and which ones are responses. +# +#ATTRIBUTE Stats4-Packet-Counters 15.9 TLV + +# +# The attribute number for the counters is taken from the packet codes. +# +#ATTRIBUTE Stats4-Access-Request 15.9.1 integer64 +#ATTRIBUTE Stats4-Access-Accept 15.9.2 integer64 +#ATTRIBUTE Stats4-Access-Reject 15.9.3 integer64 +#ATTRIBUTE Stats4-Accounting-Request 15.9.4 integer64 +#ATTRIBUTE Stats4-Accounting-Response 15.9.5 integer64 +#ATTRIBUTE Stats4-Access-Challenge 15.9.11 integer64 +#ATTRIBUTE Stats4-Status-Server 15.9.12 integer64 +#ATTRIBUTE Stats4-Disconnect-Request 15.9.40 integer64 +#ATTRIBUTE Stats4-Disconnect-ACK 15.9.41 integer64 +#ATTRIBUTE Stats4-Disconnect-NAK 15.9.42 integer64 +#ATTRIBUTE Stats4-CoA-Request 15.9.43 integer64 +#ATTRIBUTE Stats4-CoA-ACK 15.9.44 integer64 +#ATTRIBUTE Stats4-CoA-NAK 15.9.45 integer64 +#ATTRIBUTE Stats4-Protocol-Error 15.9.52 integer64 + +# +# Attributes 127 through 187 are for statistics produced by +# FreeRADIUS from version 2 to version 3. Version 4 produces +# entirely different statistics. +# + +# +# This attribute is really a bitmask. +# +ATTRIBUTE Statistics-Type 127 integer + +VALUE Statistics-Type None 0 +VALUE Statistics-Type Authentication 1 +VALUE Statistics-Type Accounting 2 +VALUE Statistics-Type Proxy-Authentication 4 +VALUE Statistics-Type Proxy-Accounting 8 +VALUE Statistics-Type Internal 0x10 +VALUE Statistics-Type Client 0x20 +VALUE Statistics-Type Server 0x40 +VALUE Statistics-Type Home-Server 0x80 + +VALUE Statistics-Type Auth-Acct 0x03 +VALUE Statistics-Type Proxy-Auth-Acct 0x0c + +VALUE Statistics-Type All 0x1f + +# +# Global authentication statistics for packets received by the server. +# +ATTRIBUTE Total-Access-Requests 128 integer +ATTRIBUTE Total-Access-Accepts 129 integer +ATTRIBUTE Total-Access-Rejects 130 integer +ATTRIBUTE Total-Access-Challenges 131 integer +ATTRIBUTE Total-Auth-Responses 132 integer +ATTRIBUTE Total-Auth-Duplicate-Requests 133 integer +ATTRIBUTE Total-Auth-Malformed-Requests 134 integer +ATTRIBUTE Total-Auth-Invalid-Requests 135 integer +ATTRIBUTE Total-Auth-Dropped-Requests 136 integer +ATTRIBUTE Total-Auth-Unknown-Types 137 integer + +# +# Global statistics for auth packets sent by the server to all home servers +# +ATTRIBUTE Total-Proxy-Access-Requests 138 integer +ATTRIBUTE Total-Proxy-Access-Accepts 139 integer +ATTRIBUTE Total-Proxy-Access-Rejects 140 integer +ATTRIBUTE Total-Proxy-Access-Challenges 141 integer +ATTRIBUTE Total-Proxy-Auth-Responses 142 integer +ATTRIBUTE Total-Proxy-Auth-Duplicate-Requests 143 integer +ATTRIBUTE Total-Proxy-Auth-Malformed-Requests 144 integer +ATTRIBUTE Total-Proxy-Auth-Invalid-Requests 145 integer +ATTRIBUTE Total-Proxy-Auth-Dropped-Requests 146 integer +ATTRIBUTE Total-Proxy-Auth-Unknown-Types 147 integer + +# +# Global accounting statistics for packets received by the server. +# +ATTRIBUTE Total-Accounting-Requests 148 integer +ATTRIBUTE Total-Accounting-Responses 149 integer +ATTRIBUTE Total-Acct-Duplicate-Requests 150 integer +ATTRIBUTE Total-Acct-Malformed-Requests 151 integer +ATTRIBUTE Total-Acct-Invalid-Requests 152 integer +ATTRIBUTE Total-Acct-Dropped-Requests 153 integer +ATTRIBUTE Total-Acct-Unknown-Types 154 integer + +# +# Global statistics for acct packets sent by the server to all home servers +# +ATTRIBUTE Total-Proxy-Accounting-Requests 155 integer +ATTRIBUTE Total-Proxy-Accounting-Responses 156 integer +ATTRIBUTE Total-Proxy-Acct-Duplicate-Requests 157 integer +ATTRIBUTE Total-Proxy-Acct-Malformed-Requests 158 integer +ATTRIBUTE Total-Proxy-Acct-Invalid-Requests 159 integer +ATTRIBUTE Total-Proxy-Acct-Dropped-Requests 160 integer +ATTRIBUTE Total-Proxy-Acct-Unknown-Types 161 integer + +# +# Internal queues. Different packet types are put into different queues. +# +ATTRIBUTE Queue-Len-Internal 162 integer +ATTRIBUTE Queue-Len-Proxy 163 integer +ATTRIBUTE Queue-Len-Auth 164 integer +ATTRIBUTE Queue-Len-Acct 165 integer +ATTRIBUTE Queue-Len-Detail 166 integer + +ATTRIBUTE Stats-Client-IP-Address 167 ipaddr +ATTRIBUTE Stats-Client-Number 168 integer +ATTRIBUTE Stats-Client-Netmask 169 integer + +ATTRIBUTE Stats-Server-IP-Address 170 ipaddr +ATTRIBUTE Stats-Server-Port 171 integer + +ATTRIBUTE Stats-Server-Outstanding-Requests 172 integer +ATTRIBUTE Stats-Server-State 173 integer + +VALUE Stats-Server-State Alive 0 +VALUE Stats-Server-State Zombie 1 +VALUE Stats-Server-State Dead 2 +VALUE Stats-Server-State Idle 3 + +# +# When a home server is marked "dead" or "alive" +# +ATTRIBUTE Stats-Server-Time-Of-Death 174 date +ATTRIBUTE Stats-Server-Time-Of-Life 175 date + +# +# When this server was started. If start == hup, it hasn't been +# hup'd yet. This is friendlier than having hup == 0 on start. +# +ATTRIBUTE Stats-Start-Time 176 date +ATTRIBUTE Stats-HUP-Time 177 date + +# +# Exponential moving average of home server response time +# Window-1 is the average is calculated over "window" packets. +# Window-10 is the average is calculated over "10 * window" packets. +# +# Both Window-1 and Window-10 are times in microseconds +# (1/1000000 of a second). +# +ATTRIBUTE Server-EMA-Window 178 integer +ATTRIBUTE Server-EMA-USEC-Window-1 179 integer +ATTRIBUTE Server-EMA-USEC-Window-10 180 integer + +ATTRIBUTE Queue-PPS-In 181 integer +ATTRIBUTE Queue-PPS-Out 182 integer +ATTRIBUTE Queue-Use-Percentage 183 integer + +ATTRIBUTE Stats-Last-Packet-Recv 184 date +ATTRIBUTE Stats-Last-Packet-Sent 185 date + +END-VENDOR FreeRADIUS diff --git a/vendors/freeradius/generate.go b/vendors/freeradius/generate.go new file mode 100644 index 0000000..4dfc814 --- /dev/null +++ b/vendors/freeradius/generate.go @@ -0,0 +1,3 @@ +//go:generate go run ../../cmd/radius-dict-gen/main.go -package freeradius -output generated.go dictionary.freeradius + +package freeradius diff --git a/vendors/freeradius/generated.go b/vendors/freeradius/generated.go new file mode 100644 index 0000000..df9e4da --- /dev/null +++ b/vendors/freeradius/generated.go @@ -0,0 +1,3583 @@ +// Code generated by radius-dict-gen. DO NOT EDIT. + +package freeradius + +import ( + "net" + "strconv" + "time" + + "layeh.com/radius" + "layeh.com/radius/rfc2865" +) + +const ( + _FreeRADIUS_VendorID = 11344 +) + +func _FreeRADIUS_AddVendor(p *radius.Packet, typ byte, attr radius.Attribute) (err error) { + var vsa radius.Attribute + vendor := make(radius.Attribute, 2+len(attr)) + vendor[0] = typ + vendor[1] = byte(len(vendor)) + copy(vendor[2:], attr) + vsa, err = radius.NewVendorSpecific(_FreeRADIUS_VendorID, vendor) + if err != nil { + return + } + p.Add(rfc2865.VendorSpecific_Type, vsa) + return +} + +func _FreeRADIUS_GetsVendor(p *radius.Packet, typ byte) (values []radius.Attribute) { + for _, avp := range p.Attributes { + if avp.Type != rfc2865.VendorSpecific_Type { + continue + } + attr := avp.Attribute + vendorID, vsa, err := radius.VendorSpecific(attr) + if err != nil || vendorID != _FreeRADIUS_VendorID { + continue + } + for len(vsa) >= 3 { + vsaTyp, vsaLen := vsa[0], vsa[1] + if int(vsaLen) > len(vsa) || vsaLen < 3 { + break + } + if vsaTyp == typ { + values = append(values, vsa[2:int(vsaLen)]) + } + vsa = vsa[int(vsaLen):] + } + } + return +} + +func _FreeRADIUS_LookupVendor(p *radius.Packet, typ byte) (attr radius.Attribute, ok bool) { + for _, avp := range p.Attributes { + if avp.Type != rfc2865.VendorSpecific_Type { + continue + } + attr := avp.Attribute + vendorID, vsa, err := radius.VendorSpecific(attr) + if err != nil || vendorID != _FreeRADIUS_VendorID { + continue + } + for len(vsa) >= 3 { + vsaTyp, vsaLen := vsa[0], vsa[1] + if int(vsaLen) > len(vsa) || vsaLen < 3 { + break + } + if vsaTyp == typ { + return vsa[2:int(vsaLen)], true + } + vsa = vsa[int(vsaLen):] + } + } + return +} + +func _FreeRADIUS_SetVendor(p *radius.Packet, typ byte, attr radius.Attribute) (err error) { + for i := 0; i < len(p.Attributes); { + avp := p.Attributes[i] + if avp.Type != rfc2865.VendorSpecific_Type { + i++ + continue + } + vendorID, vsa, err := radius.VendorSpecific(avp.Attribute) + if err != nil || vendorID != _FreeRADIUS_VendorID { + i++ + continue + } + for j := 0; len(vsa[j:]) >= 3; { + vsaTyp, vsaLen := vsa[0], vsa[1] + if int(vsaLen) > len(vsa[j:]) || vsaLen < 3 { + i++ + break + } + if vsaTyp == typ { + vsa = append(vsa[:j], vsa[j+int(vsaLen):]...) + } + j += int(vsaLen) + } + if len(vsa) > 0 { + copy(avp.Attribute[4:], vsa) + i++ + } else { + p.Attributes = append(p.Attributes[:i], p.Attributes[i+i:]...) + } + } + return _FreeRADIUS_AddVendor(p, typ, attr) +} + +func _FreeRADIUS_DelVendor(p *radius.Packet, typ byte) { +vsaLoop: + for i := 0; i < len(p.Attributes); { + avp := p.Attributes[i] + if avp.Type != rfc2865.VendorSpecific_Type { + i++ + continue + } + vendorID, vsa, err := radius.VendorSpecific(avp.Attribute) + if err != nil || vendorID != _FreeRADIUS_VendorID { + i++ + continue + } + offset := 0 + for len(vsa[offset:]) >= 3 { + vsaTyp, vsaLen := vsa[offset], vsa[offset+1] + if int(vsaLen) > len(vsa) || vsaLen < 3 { + continue vsaLoop + } + if vsaTyp == typ { + copy(vsa[offset:], vsa[offset+int(vsaLen):]) + vsa = vsa[:len(vsa)-int(vsaLen)] + } else { + offset += int(vsaLen) + } + } + if offset == 0 { + p.Attributes = append(p.Attributes[:i], p.Attributes[i+1:]...) + } else { + i++ + } + } + return +} + +func ProxiedTo_Add(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 1, a) +} + +func ProxiedTo_Get(p *radius.Packet) (value net.IP) { + value, _ = ProxiedTo_Lookup(p) + return +} + +func ProxiedTo_Gets(p *radius.Packet) (values []net.IP, err error) { + var i net.IP + for _, attr := range _FreeRADIUS_GetsVendor(p, 1) { + i, err = radius.IPAddr(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func ProxiedTo_Lookup(p *radius.Packet) (value net.IP, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 1) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.IPAddr(a) + return +} + +func ProxiedTo_Set(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 1, a) +} + +func ProxiedTo_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 1) +} + +func SessionStartTime_Add(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 2, a) +} + +func SessionStartTime_Get(p *radius.Packet) (value time.Time) { + value, _ = SessionStartTime_Lookup(p) + return +} + +func SessionStartTime_Gets(p *radius.Packet) (values []time.Time, err error) { + var i time.Time + for _, attr := range _FreeRADIUS_GetsVendor(p, 2) { + i, err = radius.Date(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func SessionStartTime_Lookup(p *radius.Packet) (value time.Time, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 2) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.Date(a) + return +} + +func SessionStartTime_Set(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 2, a) +} + +func SessionStartTime_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 2) +} + +type StatisticsType uint32 + +const ( + StatisticsType_Value_None StatisticsType = 0 + StatisticsType_Value_Authentication StatisticsType = 1 + StatisticsType_Value_Accounting StatisticsType = 2 + StatisticsType_Value_AuthAcct StatisticsType = 3 + StatisticsType_Value_ProxyAuthentication StatisticsType = 4 + StatisticsType_Value_ProxyAccounting StatisticsType = 8 + StatisticsType_Value_ProxyAuthAcct StatisticsType = 12 + StatisticsType_Value_Internal StatisticsType = 16 + StatisticsType_Value_All StatisticsType = 31 + StatisticsType_Value_Client StatisticsType = 32 + StatisticsType_Value_Server StatisticsType = 64 + StatisticsType_Value_HomeServer StatisticsType = 128 +) + +var StatisticsType_Strings = map[StatisticsType]string{ + StatisticsType_Value_None: "None", + StatisticsType_Value_Authentication: "Authentication", + StatisticsType_Value_Accounting: "Accounting", + StatisticsType_Value_AuthAcct: "Auth-Acct", + StatisticsType_Value_ProxyAuthentication: "Proxy-Authentication", + StatisticsType_Value_ProxyAccounting: "Proxy-Accounting", + StatisticsType_Value_ProxyAuthAcct: "Proxy-Auth-Acct", + StatisticsType_Value_Internal: "Internal", + StatisticsType_Value_All: "All", + StatisticsType_Value_Client: "Client", + StatisticsType_Value_Server: "Server", + StatisticsType_Value_HomeServer: "Home-Server", +} + +func (a StatisticsType) String() string { + if str, ok := StatisticsType_Strings[a]; ok { + return str + } + return "StatisticsType(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func StatisticsType_Add(p *radius.Packet, value StatisticsType) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 127, a) +} + +func StatisticsType_Get(p *radius.Packet) (value StatisticsType) { + value, _ = StatisticsType_Lookup(p) + return +} + +func StatisticsType_Gets(p *radius.Packet) (values []StatisticsType, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 127) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, StatisticsType(i)) + } + return +} + +func StatisticsType_Lookup(p *radius.Packet) (value StatisticsType, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 127) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = StatisticsType(i) + return +} + +func StatisticsType_Set(p *radius.Packet, value StatisticsType) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 127, a) +} + +func StatisticsType_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 127) +} + +type TotalAccessRequests uint32 + +var TotalAccessRequests_Strings = map[TotalAccessRequests]string{} + +func (a TotalAccessRequests) String() string { + if str, ok := TotalAccessRequests_Strings[a]; ok { + return str + } + return "TotalAccessRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAccessRequests_Add(p *radius.Packet, value TotalAccessRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 128, a) +} + +func TotalAccessRequests_Get(p *radius.Packet) (value TotalAccessRequests) { + value, _ = TotalAccessRequests_Lookup(p) + return +} + +func TotalAccessRequests_Gets(p *radius.Packet) (values []TotalAccessRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 128) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAccessRequests(i)) + } + return +} + +func TotalAccessRequests_Lookup(p *radius.Packet) (value TotalAccessRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 128) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAccessRequests(i) + return +} + +func TotalAccessRequests_Set(p *radius.Packet, value TotalAccessRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 128, a) +} + +func TotalAccessRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 128) +} + +type TotalAccessAccepts uint32 + +var TotalAccessAccepts_Strings = map[TotalAccessAccepts]string{} + +func (a TotalAccessAccepts) String() string { + if str, ok := TotalAccessAccepts_Strings[a]; ok { + return str + } + return "TotalAccessAccepts(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAccessAccepts_Add(p *radius.Packet, value TotalAccessAccepts) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 129, a) +} + +func TotalAccessAccepts_Get(p *radius.Packet) (value TotalAccessAccepts) { + value, _ = TotalAccessAccepts_Lookup(p) + return +} + +func TotalAccessAccepts_Gets(p *radius.Packet) (values []TotalAccessAccepts, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 129) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAccessAccepts(i)) + } + return +} + +func TotalAccessAccepts_Lookup(p *radius.Packet) (value TotalAccessAccepts, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 129) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAccessAccepts(i) + return +} + +func TotalAccessAccepts_Set(p *radius.Packet, value TotalAccessAccepts) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 129, a) +} + +func TotalAccessAccepts_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 129) +} + +type TotalAccessRejects uint32 + +var TotalAccessRejects_Strings = map[TotalAccessRejects]string{} + +func (a TotalAccessRejects) String() string { + if str, ok := TotalAccessRejects_Strings[a]; ok { + return str + } + return "TotalAccessRejects(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAccessRejects_Add(p *radius.Packet, value TotalAccessRejects) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 130, a) +} + +func TotalAccessRejects_Get(p *radius.Packet) (value TotalAccessRejects) { + value, _ = TotalAccessRejects_Lookup(p) + return +} + +func TotalAccessRejects_Gets(p *radius.Packet) (values []TotalAccessRejects, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 130) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAccessRejects(i)) + } + return +} + +func TotalAccessRejects_Lookup(p *radius.Packet) (value TotalAccessRejects, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 130) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAccessRejects(i) + return +} + +func TotalAccessRejects_Set(p *radius.Packet, value TotalAccessRejects) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 130, a) +} + +func TotalAccessRejects_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 130) +} + +type TotalAccessChallenges uint32 + +var TotalAccessChallenges_Strings = map[TotalAccessChallenges]string{} + +func (a TotalAccessChallenges) String() string { + if str, ok := TotalAccessChallenges_Strings[a]; ok { + return str + } + return "TotalAccessChallenges(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAccessChallenges_Add(p *radius.Packet, value TotalAccessChallenges) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 131, a) +} + +func TotalAccessChallenges_Get(p *radius.Packet) (value TotalAccessChallenges) { + value, _ = TotalAccessChallenges_Lookup(p) + return +} + +func TotalAccessChallenges_Gets(p *radius.Packet) (values []TotalAccessChallenges, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 131) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAccessChallenges(i)) + } + return +} + +func TotalAccessChallenges_Lookup(p *radius.Packet) (value TotalAccessChallenges, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 131) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAccessChallenges(i) + return +} + +func TotalAccessChallenges_Set(p *radius.Packet, value TotalAccessChallenges) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 131, a) +} + +func TotalAccessChallenges_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 131) +} + +type TotalAuthResponses uint32 + +var TotalAuthResponses_Strings = map[TotalAuthResponses]string{} + +func (a TotalAuthResponses) String() string { + if str, ok := TotalAuthResponses_Strings[a]; ok { + return str + } + return "TotalAuthResponses(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAuthResponses_Add(p *radius.Packet, value TotalAuthResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 132, a) +} + +func TotalAuthResponses_Get(p *radius.Packet) (value TotalAuthResponses) { + value, _ = TotalAuthResponses_Lookup(p) + return +} + +func TotalAuthResponses_Gets(p *radius.Packet) (values []TotalAuthResponses, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 132) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAuthResponses(i)) + } + return +} + +func TotalAuthResponses_Lookup(p *radius.Packet) (value TotalAuthResponses, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 132) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAuthResponses(i) + return +} + +func TotalAuthResponses_Set(p *radius.Packet, value TotalAuthResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 132, a) +} + +func TotalAuthResponses_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 132) +} + +type TotalAuthDuplicateRequests uint32 + +var TotalAuthDuplicateRequests_Strings = map[TotalAuthDuplicateRequests]string{} + +func (a TotalAuthDuplicateRequests) String() string { + if str, ok := TotalAuthDuplicateRequests_Strings[a]; ok { + return str + } + return "TotalAuthDuplicateRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAuthDuplicateRequests_Add(p *radius.Packet, value TotalAuthDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 133, a) +} + +func TotalAuthDuplicateRequests_Get(p *radius.Packet) (value TotalAuthDuplicateRequests) { + value, _ = TotalAuthDuplicateRequests_Lookup(p) + return +} + +func TotalAuthDuplicateRequests_Gets(p *radius.Packet) (values []TotalAuthDuplicateRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 133) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAuthDuplicateRequests(i)) + } + return +} + +func TotalAuthDuplicateRequests_Lookup(p *radius.Packet) (value TotalAuthDuplicateRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 133) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAuthDuplicateRequests(i) + return +} + +func TotalAuthDuplicateRequests_Set(p *radius.Packet, value TotalAuthDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 133, a) +} + +func TotalAuthDuplicateRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 133) +} + +type TotalAuthMalformedRequests uint32 + +var TotalAuthMalformedRequests_Strings = map[TotalAuthMalformedRequests]string{} + +func (a TotalAuthMalformedRequests) String() string { + if str, ok := TotalAuthMalformedRequests_Strings[a]; ok { + return str + } + return "TotalAuthMalformedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAuthMalformedRequests_Add(p *radius.Packet, value TotalAuthMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 134, a) +} + +func TotalAuthMalformedRequests_Get(p *radius.Packet) (value TotalAuthMalformedRequests) { + value, _ = TotalAuthMalformedRequests_Lookup(p) + return +} + +func TotalAuthMalformedRequests_Gets(p *radius.Packet) (values []TotalAuthMalformedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 134) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAuthMalformedRequests(i)) + } + return +} + +func TotalAuthMalformedRequests_Lookup(p *radius.Packet) (value TotalAuthMalformedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 134) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAuthMalformedRequests(i) + return +} + +func TotalAuthMalformedRequests_Set(p *radius.Packet, value TotalAuthMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 134, a) +} + +func TotalAuthMalformedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 134) +} + +type TotalAuthInvalidRequests uint32 + +var TotalAuthInvalidRequests_Strings = map[TotalAuthInvalidRequests]string{} + +func (a TotalAuthInvalidRequests) String() string { + if str, ok := TotalAuthInvalidRequests_Strings[a]; ok { + return str + } + return "TotalAuthInvalidRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAuthInvalidRequests_Add(p *radius.Packet, value TotalAuthInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 135, a) +} + +func TotalAuthInvalidRequests_Get(p *radius.Packet) (value TotalAuthInvalidRequests) { + value, _ = TotalAuthInvalidRequests_Lookup(p) + return +} + +func TotalAuthInvalidRequests_Gets(p *radius.Packet) (values []TotalAuthInvalidRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 135) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAuthInvalidRequests(i)) + } + return +} + +func TotalAuthInvalidRequests_Lookup(p *radius.Packet) (value TotalAuthInvalidRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 135) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAuthInvalidRequests(i) + return +} + +func TotalAuthInvalidRequests_Set(p *radius.Packet, value TotalAuthInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 135, a) +} + +func TotalAuthInvalidRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 135) +} + +type TotalAuthDroppedRequests uint32 + +var TotalAuthDroppedRequests_Strings = map[TotalAuthDroppedRequests]string{} + +func (a TotalAuthDroppedRequests) String() string { + if str, ok := TotalAuthDroppedRequests_Strings[a]; ok { + return str + } + return "TotalAuthDroppedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAuthDroppedRequests_Add(p *radius.Packet, value TotalAuthDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 136, a) +} + +func TotalAuthDroppedRequests_Get(p *radius.Packet) (value TotalAuthDroppedRequests) { + value, _ = TotalAuthDroppedRequests_Lookup(p) + return +} + +func TotalAuthDroppedRequests_Gets(p *radius.Packet) (values []TotalAuthDroppedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 136) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAuthDroppedRequests(i)) + } + return +} + +func TotalAuthDroppedRequests_Lookup(p *radius.Packet) (value TotalAuthDroppedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 136) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAuthDroppedRequests(i) + return +} + +func TotalAuthDroppedRequests_Set(p *radius.Packet, value TotalAuthDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 136, a) +} + +func TotalAuthDroppedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 136) +} + +type TotalAuthUnknownTypes uint32 + +var TotalAuthUnknownTypes_Strings = map[TotalAuthUnknownTypes]string{} + +func (a TotalAuthUnknownTypes) String() string { + if str, ok := TotalAuthUnknownTypes_Strings[a]; ok { + return str + } + return "TotalAuthUnknownTypes(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAuthUnknownTypes_Add(p *radius.Packet, value TotalAuthUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 137, a) +} + +func TotalAuthUnknownTypes_Get(p *radius.Packet) (value TotalAuthUnknownTypes) { + value, _ = TotalAuthUnknownTypes_Lookup(p) + return +} + +func TotalAuthUnknownTypes_Gets(p *radius.Packet) (values []TotalAuthUnknownTypes, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 137) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAuthUnknownTypes(i)) + } + return +} + +func TotalAuthUnknownTypes_Lookup(p *radius.Packet) (value TotalAuthUnknownTypes, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 137) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAuthUnknownTypes(i) + return +} + +func TotalAuthUnknownTypes_Set(p *radius.Packet, value TotalAuthUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 137, a) +} + +func TotalAuthUnknownTypes_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 137) +} + +type TotalProxyAccessRequests uint32 + +var TotalProxyAccessRequests_Strings = map[TotalProxyAccessRequests]string{} + +func (a TotalProxyAccessRequests) String() string { + if str, ok := TotalProxyAccessRequests_Strings[a]; ok { + return str + } + return "TotalProxyAccessRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAccessRequests_Add(p *radius.Packet, value TotalProxyAccessRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 138, a) +} + +func TotalProxyAccessRequests_Get(p *radius.Packet) (value TotalProxyAccessRequests) { + value, _ = TotalProxyAccessRequests_Lookup(p) + return +} + +func TotalProxyAccessRequests_Gets(p *radius.Packet) (values []TotalProxyAccessRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 138) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAccessRequests(i)) + } + return +} + +func TotalProxyAccessRequests_Lookup(p *radius.Packet) (value TotalProxyAccessRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 138) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAccessRequests(i) + return +} + +func TotalProxyAccessRequests_Set(p *radius.Packet, value TotalProxyAccessRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 138, a) +} + +func TotalProxyAccessRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 138) +} + +type TotalProxyAccessAccepts uint32 + +var TotalProxyAccessAccepts_Strings = map[TotalProxyAccessAccepts]string{} + +func (a TotalProxyAccessAccepts) String() string { + if str, ok := TotalProxyAccessAccepts_Strings[a]; ok { + return str + } + return "TotalProxyAccessAccepts(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAccessAccepts_Add(p *radius.Packet, value TotalProxyAccessAccepts) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 139, a) +} + +func TotalProxyAccessAccepts_Get(p *radius.Packet) (value TotalProxyAccessAccepts) { + value, _ = TotalProxyAccessAccepts_Lookup(p) + return +} + +func TotalProxyAccessAccepts_Gets(p *radius.Packet) (values []TotalProxyAccessAccepts, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 139) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAccessAccepts(i)) + } + return +} + +func TotalProxyAccessAccepts_Lookup(p *radius.Packet) (value TotalProxyAccessAccepts, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 139) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAccessAccepts(i) + return +} + +func TotalProxyAccessAccepts_Set(p *radius.Packet, value TotalProxyAccessAccepts) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 139, a) +} + +func TotalProxyAccessAccepts_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 139) +} + +type TotalProxyAccessRejects uint32 + +var TotalProxyAccessRejects_Strings = map[TotalProxyAccessRejects]string{} + +func (a TotalProxyAccessRejects) String() string { + if str, ok := TotalProxyAccessRejects_Strings[a]; ok { + return str + } + return "TotalProxyAccessRejects(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAccessRejects_Add(p *radius.Packet, value TotalProxyAccessRejects) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 140, a) +} + +func TotalProxyAccessRejects_Get(p *radius.Packet) (value TotalProxyAccessRejects) { + value, _ = TotalProxyAccessRejects_Lookup(p) + return +} + +func TotalProxyAccessRejects_Gets(p *radius.Packet) (values []TotalProxyAccessRejects, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 140) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAccessRejects(i)) + } + return +} + +func TotalProxyAccessRejects_Lookup(p *radius.Packet) (value TotalProxyAccessRejects, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 140) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAccessRejects(i) + return +} + +func TotalProxyAccessRejects_Set(p *radius.Packet, value TotalProxyAccessRejects) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 140, a) +} + +func TotalProxyAccessRejects_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 140) +} + +type TotalProxyAccessChallenges uint32 + +var TotalProxyAccessChallenges_Strings = map[TotalProxyAccessChallenges]string{} + +func (a TotalProxyAccessChallenges) String() string { + if str, ok := TotalProxyAccessChallenges_Strings[a]; ok { + return str + } + return "TotalProxyAccessChallenges(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAccessChallenges_Add(p *radius.Packet, value TotalProxyAccessChallenges) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 141, a) +} + +func TotalProxyAccessChallenges_Get(p *radius.Packet) (value TotalProxyAccessChallenges) { + value, _ = TotalProxyAccessChallenges_Lookup(p) + return +} + +func TotalProxyAccessChallenges_Gets(p *radius.Packet) (values []TotalProxyAccessChallenges, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 141) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAccessChallenges(i)) + } + return +} + +func TotalProxyAccessChallenges_Lookup(p *radius.Packet) (value TotalProxyAccessChallenges, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 141) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAccessChallenges(i) + return +} + +func TotalProxyAccessChallenges_Set(p *radius.Packet, value TotalProxyAccessChallenges) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 141, a) +} + +func TotalProxyAccessChallenges_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 141) +} + +type TotalProxyAuthResponses uint32 + +var TotalProxyAuthResponses_Strings = map[TotalProxyAuthResponses]string{} + +func (a TotalProxyAuthResponses) String() string { + if str, ok := TotalProxyAuthResponses_Strings[a]; ok { + return str + } + return "TotalProxyAuthResponses(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAuthResponses_Add(p *radius.Packet, value TotalProxyAuthResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 142, a) +} + +func TotalProxyAuthResponses_Get(p *radius.Packet) (value TotalProxyAuthResponses) { + value, _ = TotalProxyAuthResponses_Lookup(p) + return +} + +func TotalProxyAuthResponses_Gets(p *radius.Packet) (values []TotalProxyAuthResponses, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 142) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAuthResponses(i)) + } + return +} + +func TotalProxyAuthResponses_Lookup(p *radius.Packet) (value TotalProxyAuthResponses, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 142) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAuthResponses(i) + return +} + +func TotalProxyAuthResponses_Set(p *radius.Packet, value TotalProxyAuthResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 142, a) +} + +func TotalProxyAuthResponses_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 142) +} + +type TotalProxyAuthDuplicateRequests uint32 + +var TotalProxyAuthDuplicateRequests_Strings = map[TotalProxyAuthDuplicateRequests]string{} + +func (a TotalProxyAuthDuplicateRequests) String() string { + if str, ok := TotalProxyAuthDuplicateRequests_Strings[a]; ok { + return str + } + return "TotalProxyAuthDuplicateRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAuthDuplicateRequests_Add(p *radius.Packet, value TotalProxyAuthDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 143, a) +} + +func TotalProxyAuthDuplicateRequests_Get(p *radius.Packet) (value TotalProxyAuthDuplicateRequests) { + value, _ = TotalProxyAuthDuplicateRequests_Lookup(p) + return +} + +func TotalProxyAuthDuplicateRequests_Gets(p *radius.Packet) (values []TotalProxyAuthDuplicateRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 143) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAuthDuplicateRequests(i)) + } + return +} + +func TotalProxyAuthDuplicateRequests_Lookup(p *radius.Packet) (value TotalProxyAuthDuplicateRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 143) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAuthDuplicateRequests(i) + return +} + +func TotalProxyAuthDuplicateRequests_Set(p *radius.Packet, value TotalProxyAuthDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 143, a) +} + +func TotalProxyAuthDuplicateRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 143) +} + +type TotalProxyAuthMalformedRequests uint32 + +var TotalProxyAuthMalformedRequests_Strings = map[TotalProxyAuthMalformedRequests]string{} + +func (a TotalProxyAuthMalformedRequests) String() string { + if str, ok := TotalProxyAuthMalformedRequests_Strings[a]; ok { + return str + } + return "TotalProxyAuthMalformedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAuthMalformedRequests_Add(p *radius.Packet, value TotalProxyAuthMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 144, a) +} + +func TotalProxyAuthMalformedRequests_Get(p *radius.Packet) (value TotalProxyAuthMalformedRequests) { + value, _ = TotalProxyAuthMalformedRequests_Lookup(p) + return +} + +func TotalProxyAuthMalformedRequests_Gets(p *radius.Packet) (values []TotalProxyAuthMalformedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 144) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAuthMalformedRequests(i)) + } + return +} + +func TotalProxyAuthMalformedRequests_Lookup(p *radius.Packet) (value TotalProxyAuthMalformedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 144) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAuthMalformedRequests(i) + return +} + +func TotalProxyAuthMalformedRequests_Set(p *radius.Packet, value TotalProxyAuthMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 144, a) +} + +func TotalProxyAuthMalformedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 144) +} + +type TotalProxyAuthInvalidRequests uint32 + +var TotalProxyAuthInvalidRequests_Strings = map[TotalProxyAuthInvalidRequests]string{} + +func (a TotalProxyAuthInvalidRequests) String() string { + if str, ok := TotalProxyAuthInvalidRequests_Strings[a]; ok { + return str + } + return "TotalProxyAuthInvalidRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAuthInvalidRequests_Add(p *radius.Packet, value TotalProxyAuthInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 145, a) +} + +func TotalProxyAuthInvalidRequests_Get(p *radius.Packet) (value TotalProxyAuthInvalidRequests) { + value, _ = TotalProxyAuthInvalidRequests_Lookup(p) + return +} + +func TotalProxyAuthInvalidRequests_Gets(p *radius.Packet) (values []TotalProxyAuthInvalidRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 145) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAuthInvalidRequests(i)) + } + return +} + +func TotalProxyAuthInvalidRequests_Lookup(p *radius.Packet) (value TotalProxyAuthInvalidRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 145) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAuthInvalidRequests(i) + return +} + +func TotalProxyAuthInvalidRequests_Set(p *radius.Packet, value TotalProxyAuthInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 145, a) +} + +func TotalProxyAuthInvalidRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 145) +} + +type TotalProxyAuthDroppedRequests uint32 + +var TotalProxyAuthDroppedRequests_Strings = map[TotalProxyAuthDroppedRequests]string{} + +func (a TotalProxyAuthDroppedRequests) String() string { + if str, ok := TotalProxyAuthDroppedRequests_Strings[a]; ok { + return str + } + return "TotalProxyAuthDroppedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAuthDroppedRequests_Add(p *radius.Packet, value TotalProxyAuthDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 146, a) +} + +func TotalProxyAuthDroppedRequests_Get(p *radius.Packet) (value TotalProxyAuthDroppedRequests) { + value, _ = TotalProxyAuthDroppedRequests_Lookup(p) + return +} + +func TotalProxyAuthDroppedRequests_Gets(p *radius.Packet) (values []TotalProxyAuthDroppedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 146) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAuthDroppedRequests(i)) + } + return +} + +func TotalProxyAuthDroppedRequests_Lookup(p *radius.Packet) (value TotalProxyAuthDroppedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 146) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAuthDroppedRequests(i) + return +} + +func TotalProxyAuthDroppedRequests_Set(p *radius.Packet, value TotalProxyAuthDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 146, a) +} + +func TotalProxyAuthDroppedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 146) +} + +type TotalProxyAuthUnknownTypes uint32 + +var TotalProxyAuthUnknownTypes_Strings = map[TotalProxyAuthUnknownTypes]string{} + +func (a TotalProxyAuthUnknownTypes) String() string { + if str, ok := TotalProxyAuthUnknownTypes_Strings[a]; ok { + return str + } + return "TotalProxyAuthUnknownTypes(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAuthUnknownTypes_Add(p *radius.Packet, value TotalProxyAuthUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 147, a) +} + +func TotalProxyAuthUnknownTypes_Get(p *radius.Packet) (value TotalProxyAuthUnknownTypes) { + value, _ = TotalProxyAuthUnknownTypes_Lookup(p) + return +} + +func TotalProxyAuthUnknownTypes_Gets(p *radius.Packet) (values []TotalProxyAuthUnknownTypes, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 147) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAuthUnknownTypes(i)) + } + return +} + +func TotalProxyAuthUnknownTypes_Lookup(p *radius.Packet) (value TotalProxyAuthUnknownTypes, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 147) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAuthUnknownTypes(i) + return +} + +func TotalProxyAuthUnknownTypes_Set(p *radius.Packet, value TotalProxyAuthUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 147, a) +} + +func TotalProxyAuthUnknownTypes_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 147) +} + +type TotalAccountingRequests uint32 + +var TotalAccountingRequests_Strings = map[TotalAccountingRequests]string{} + +func (a TotalAccountingRequests) String() string { + if str, ok := TotalAccountingRequests_Strings[a]; ok { + return str + } + return "TotalAccountingRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAccountingRequests_Add(p *radius.Packet, value TotalAccountingRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 148, a) +} + +func TotalAccountingRequests_Get(p *radius.Packet) (value TotalAccountingRequests) { + value, _ = TotalAccountingRequests_Lookup(p) + return +} + +func TotalAccountingRequests_Gets(p *radius.Packet) (values []TotalAccountingRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 148) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAccountingRequests(i)) + } + return +} + +func TotalAccountingRequests_Lookup(p *radius.Packet) (value TotalAccountingRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 148) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAccountingRequests(i) + return +} + +func TotalAccountingRequests_Set(p *radius.Packet, value TotalAccountingRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 148, a) +} + +func TotalAccountingRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 148) +} + +type TotalAccountingResponses uint32 + +var TotalAccountingResponses_Strings = map[TotalAccountingResponses]string{} + +func (a TotalAccountingResponses) String() string { + if str, ok := TotalAccountingResponses_Strings[a]; ok { + return str + } + return "TotalAccountingResponses(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAccountingResponses_Add(p *radius.Packet, value TotalAccountingResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 149, a) +} + +func TotalAccountingResponses_Get(p *radius.Packet) (value TotalAccountingResponses) { + value, _ = TotalAccountingResponses_Lookup(p) + return +} + +func TotalAccountingResponses_Gets(p *radius.Packet) (values []TotalAccountingResponses, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 149) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAccountingResponses(i)) + } + return +} + +func TotalAccountingResponses_Lookup(p *radius.Packet) (value TotalAccountingResponses, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 149) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAccountingResponses(i) + return +} + +func TotalAccountingResponses_Set(p *radius.Packet, value TotalAccountingResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 149, a) +} + +func TotalAccountingResponses_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 149) +} + +type TotalAcctDuplicateRequests uint32 + +var TotalAcctDuplicateRequests_Strings = map[TotalAcctDuplicateRequests]string{} + +func (a TotalAcctDuplicateRequests) String() string { + if str, ok := TotalAcctDuplicateRequests_Strings[a]; ok { + return str + } + return "TotalAcctDuplicateRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAcctDuplicateRequests_Add(p *radius.Packet, value TotalAcctDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 150, a) +} + +func TotalAcctDuplicateRequests_Get(p *radius.Packet) (value TotalAcctDuplicateRequests) { + value, _ = TotalAcctDuplicateRequests_Lookup(p) + return +} + +func TotalAcctDuplicateRequests_Gets(p *radius.Packet) (values []TotalAcctDuplicateRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 150) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAcctDuplicateRequests(i)) + } + return +} + +func TotalAcctDuplicateRequests_Lookup(p *radius.Packet) (value TotalAcctDuplicateRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 150) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAcctDuplicateRequests(i) + return +} + +func TotalAcctDuplicateRequests_Set(p *radius.Packet, value TotalAcctDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 150, a) +} + +func TotalAcctDuplicateRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 150) +} + +type TotalAcctMalformedRequests uint32 + +var TotalAcctMalformedRequests_Strings = map[TotalAcctMalformedRequests]string{} + +func (a TotalAcctMalformedRequests) String() string { + if str, ok := TotalAcctMalformedRequests_Strings[a]; ok { + return str + } + return "TotalAcctMalformedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAcctMalformedRequests_Add(p *radius.Packet, value TotalAcctMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 151, a) +} + +func TotalAcctMalformedRequests_Get(p *radius.Packet) (value TotalAcctMalformedRequests) { + value, _ = TotalAcctMalformedRequests_Lookup(p) + return +} + +func TotalAcctMalformedRequests_Gets(p *radius.Packet) (values []TotalAcctMalformedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 151) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAcctMalformedRequests(i)) + } + return +} + +func TotalAcctMalformedRequests_Lookup(p *radius.Packet) (value TotalAcctMalformedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 151) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAcctMalformedRequests(i) + return +} + +func TotalAcctMalformedRequests_Set(p *radius.Packet, value TotalAcctMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 151, a) +} + +func TotalAcctMalformedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 151) +} + +type TotalAcctInvalidRequests uint32 + +var TotalAcctInvalidRequests_Strings = map[TotalAcctInvalidRequests]string{} + +func (a TotalAcctInvalidRequests) String() string { + if str, ok := TotalAcctInvalidRequests_Strings[a]; ok { + return str + } + return "TotalAcctInvalidRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAcctInvalidRequests_Add(p *radius.Packet, value TotalAcctInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 152, a) +} + +func TotalAcctInvalidRequests_Get(p *radius.Packet) (value TotalAcctInvalidRequests) { + value, _ = TotalAcctInvalidRequests_Lookup(p) + return +} + +func TotalAcctInvalidRequests_Gets(p *radius.Packet) (values []TotalAcctInvalidRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 152) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAcctInvalidRequests(i)) + } + return +} + +func TotalAcctInvalidRequests_Lookup(p *radius.Packet) (value TotalAcctInvalidRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 152) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAcctInvalidRequests(i) + return +} + +func TotalAcctInvalidRequests_Set(p *radius.Packet, value TotalAcctInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 152, a) +} + +func TotalAcctInvalidRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 152) +} + +type TotalAcctDroppedRequests uint32 + +var TotalAcctDroppedRequests_Strings = map[TotalAcctDroppedRequests]string{} + +func (a TotalAcctDroppedRequests) String() string { + if str, ok := TotalAcctDroppedRequests_Strings[a]; ok { + return str + } + return "TotalAcctDroppedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAcctDroppedRequests_Add(p *radius.Packet, value TotalAcctDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 153, a) +} + +func TotalAcctDroppedRequests_Get(p *radius.Packet) (value TotalAcctDroppedRequests) { + value, _ = TotalAcctDroppedRequests_Lookup(p) + return +} + +func TotalAcctDroppedRequests_Gets(p *radius.Packet) (values []TotalAcctDroppedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 153) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAcctDroppedRequests(i)) + } + return +} + +func TotalAcctDroppedRequests_Lookup(p *radius.Packet) (value TotalAcctDroppedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 153) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAcctDroppedRequests(i) + return +} + +func TotalAcctDroppedRequests_Set(p *radius.Packet, value TotalAcctDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 153, a) +} + +func TotalAcctDroppedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 153) +} + +type TotalAcctUnknownTypes uint32 + +var TotalAcctUnknownTypes_Strings = map[TotalAcctUnknownTypes]string{} + +func (a TotalAcctUnknownTypes) String() string { + if str, ok := TotalAcctUnknownTypes_Strings[a]; ok { + return str + } + return "TotalAcctUnknownTypes(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalAcctUnknownTypes_Add(p *radius.Packet, value TotalAcctUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 154, a) +} + +func TotalAcctUnknownTypes_Get(p *radius.Packet) (value TotalAcctUnknownTypes) { + value, _ = TotalAcctUnknownTypes_Lookup(p) + return +} + +func TotalAcctUnknownTypes_Gets(p *radius.Packet) (values []TotalAcctUnknownTypes, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 154) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalAcctUnknownTypes(i)) + } + return +} + +func TotalAcctUnknownTypes_Lookup(p *radius.Packet) (value TotalAcctUnknownTypes, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 154) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalAcctUnknownTypes(i) + return +} + +func TotalAcctUnknownTypes_Set(p *radius.Packet, value TotalAcctUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 154, a) +} + +func TotalAcctUnknownTypes_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 154) +} + +type TotalProxyAccountingRequests uint32 + +var TotalProxyAccountingRequests_Strings = map[TotalProxyAccountingRequests]string{} + +func (a TotalProxyAccountingRequests) String() string { + if str, ok := TotalProxyAccountingRequests_Strings[a]; ok { + return str + } + return "TotalProxyAccountingRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAccountingRequests_Add(p *radius.Packet, value TotalProxyAccountingRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 155, a) +} + +func TotalProxyAccountingRequests_Get(p *radius.Packet) (value TotalProxyAccountingRequests) { + value, _ = TotalProxyAccountingRequests_Lookup(p) + return +} + +func TotalProxyAccountingRequests_Gets(p *radius.Packet) (values []TotalProxyAccountingRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 155) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAccountingRequests(i)) + } + return +} + +func TotalProxyAccountingRequests_Lookup(p *radius.Packet) (value TotalProxyAccountingRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 155) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAccountingRequests(i) + return +} + +func TotalProxyAccountingRequests_Set(p *radius.Packet, value TotalProxyAccountingRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 155, a) +} + +func TotalProxyAccountingRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 155) +} + +type TotalProxyAccountingResponses uint32 + +var TotalProxyAccountingResponses_Strings = map[TotalProxyAccountingResponses]string{} + +func (a TotalProxyAccountingResponses) String() string { + if str, ok := TotalProxyAccountingResponses_Strings[a]; ok { + return str + } + return "TotalProxyAccountingResponses(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAccountingResponses_Add(p *radius.Packet, value TotalProxyAccountingResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 156, a) +} + +func TotalProxyAccountingResponses_Get(p *radius.Packet) (value TotalProxyAccountingResponses) { + value, _ = TotalProxyAccountingResponses_Lookup(p) + return +} + +func TotalProxyAccountingResponses_Gets(p *radius.Packet) (values []TotalProxyAccountingResponses, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 156) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAccountingResponses(i)) + } + return +} + +func TotalProxyAccountingResponses_Lookup(p *radius.Packet) (value TotalProxyAccountingResponses, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 156) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAccountingResponses(i) + return +} + +func TotalProxyAccountingResponses_Set(p *radius.Packet, value TotalProxyAccountingResponses) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 156, a) +} + +func TotalProxyAccountingResponses_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 156) +} + +type TotalProxyAcctDuplicateRequests uint32 + +var TotalProxyAcctDuplicateRequests_Strings = map[TotalProxyAcctDuplicateRequests]string{} + +func (a TotalProxyAcctDuplicateRequests) String() string { + if str, ok := TotalProxyAcctDuplicateRequests_Strings[a]; ok { + return str + } + return "TotalProxyAcctDuplicateRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAcctDuplicateRequests_Add(p *radius.Packet, value TotalProxyAcctDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 157, a) +} + +func TotalProxyAcctDuplicateRequests_Get(p *radius.Packet) (value TotalProxyAcctDuplicateRequests) { + value, _ = TotalProxyAcctDuplicateRequests_Lookup(p) + return +} + +func TotalProxyAcctDuplicateRequests_Gets(p *radius.Packet) (values []TotalProxyAcctDuplicateRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 157) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAcctDuplicateRequests(i)) + } + return +} + +func TotalProxyAcctDuplicateRequests_Lookup(p *radius.Packet) (value TotalProxyAcctDuplicateRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 157) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAcctDuplicateRequests(i) + return +} + +func TotalProxyAcctDuplicateRequests_Set(p *radius.Packet, value TotalProxyAcctDuplicateRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 157, a) +} + +func TotalProxyAcctDuplicateRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 157) +} + +type TotalProxyAcctMalformedRequests uint32 + +var TotalProxyAcctMalformedRequests_Strings = map[TotalProxyAcctMalformedRequests]string{} + +func (a TotalProxyAcctMalformedRequests) String() string { + if str, ok := TotalProxyAcctMalformedRequests_Strings[a]; ok { + return str + } + return "TotalProxyAcctMalformedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAcctMalformedRequests_Add(p *radius.Packet, value TotalProxyAcctMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 158, a) +} + +func TotalProxyAcctMalformedRequests_Get(p *radius.Packet) (value TotalProxyAcctMalformedRequests) { + value, _ = TotalProxyAcctMalformedRequests_Lookup(p) + return +} + +func TotalProxyAcctMalformedRequests_Gets(p *radius.Packet) (values []TotalProxyAcctMalformedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 158) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAcctMalformedRequests(i)) + } + return +} + +func TotalProxyAcctMalformedRequests_Lookup(p *radius.Packet) (value TotalProxyAcctMalformedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 158) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAcctMalformedRequests(i) + return +} + +func TotalProxyAcctMalformedRequests_Set(p *radius.Packet, value TotalProxyAcctMalformedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 158, a) +} + +func TotalProxyAcctMalformedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 158) +} + +type TotalProxyAcctInvalidRequests uint32 + +var TotalProxyAcctInvalidRequests_Strings = map[TotalProxyAcctInvalidRequests]string{} + +func (a TotalProxyAcctInvalidRequests) String() string { + if str, ok := TotalProxyAcctInvalidRequests_Strings[a]; ok { + return str + } + return "TotalProxyAcctInvalidRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAcctInvalidRequests_Add(p *radius.Packet, value TotalProxyAcctInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 159, a) +} + +func TotalProxyAcctInvalidRequests_Get(p *radius.Packet) (value TotalProxyAcctInvalidRequests) { + value, _ = TotalProxyAcctInvalidRequests_Lookup(p) + return +} + +func TotalProxyAcctInvalidRequests_Gets(p *radius.Packet) (values []TotalProxyAcctInvalidRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 159) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAcctInvalidRequests(i)) + } + return +} + +func TotalProxyAcctInvalidRequests_Lookup(p *radius.Packet) (value TotalProxyAcctInvalidRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 159) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAcctInvalidRequests(i) + return +} + +func TotalProxyAcctInvalidRequests_Set(p *radius.Packet, value TotalProxyAcctInvalidRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 159, a) +} + +func TotalProxyAcctInvalidRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 159) +} + +type TotalProxyAcctDroppedRequests uint32 + +var TotalProxyAcctDroppedRequests_Strings = map[TotalProxyAcctDroppedRequests]string{} + +func (a TotalProxyAcctDroppedRequests) String() string { + if str, ok := TotalProxyAcctDroppedRequests_Strings[a]; ok { + return str + } + return "TotalProxyAcctDroppedRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAcctDroppedRequests_Add(p *radius.Packet, value TotalProxyAcctDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 160, a) +} + +func TotalProxyAcctDroppedRequests_Get(p *radius.Packet) (value TotalProxyAcctDroppedRequests) { + value, _ = TotalProxyAcctDroppedRequests_Lookup(p) + return +} + +func TotalProxyAcctDroppedRequests_Gets(p *radius.Packet) (values []TotalProxyAcctDroppedRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 160) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAcctDroppedRequests(i)) + } + return +} + +func TotalProxyAcctDroppedRequests_Lookup(p *radius.Packet) (value TotalProxyAcctDroppedRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 160) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAcctDroppedRequests(i) + return +} + +func TotalProxyAcctDroppedRequests_Set(p *radius.Packet, value TotalProxyAcctDroppedRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 160, a) +} + +func TotalProxyAcctDroppedRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 160) +} + +type TotalProxyAcctUnknownTypes uint32 + +var TotalProxyAcctUnknownTypes_Strings = map[TotalProxyAcctUnknownTypes]string{} + +func (a TotalProxyAcctUnknownTypes) String() string { + if str, ok := TotalProxyAcctUnknownTypes_Strings[a]; ok { + return str + } + return "TotalProxyAcctUnknownTypes(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func TotalProxyAcctUnknownTypes_Add(p *radius.Packet, value TotalProxyAcctUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 161, a) +} + +func TotalProxyAcctUnknownTypes_Get(p *radius.Packet) (value TotalProxyAcctUnknownTypes) { + value, _ = TotalProxyAcctUnknownTypes_Lookup(p) + return +} + +func TotalProxyAcctUnknownTypes_Gets(p *radius.Packet) (values []TotalProxyAcctUnknownTypes, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 161) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, TotalProxyAcctUnknownTypes(i)) + } + return +} + +func TotalProxyAcctUnknownTypes_Lookup(p *radius.Packet) (value TotalProxyAcctUnknownTypes, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 161) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = TotalProxyAcctUnknownTypes(i) + return +} + +func TotalProxyAcctUnknownTypes_Set(p *radius.Packet, value TotalProxyAcctUnknownTypes) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 161, a) +} + +func TotalProxyAcctUnknownTypes_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 161) +} + +type QueueLenInternal uint32 + +var QueueLenInternal_Strings = map[QueueLenInternal]string{} + +func (a QueueLenInternal) String() string { + if str, ok := QueueLenInternal_Strings[a]; ok { + return str + } + return "QueueLenInternal(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueueLenInternal_Add(p *radius.Packet, value QueueLenInternal) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 162, a) +} + +func QueueLenInternal_Get(p *radius.Packet) (value QueueLenInternal) { + value, _ = QueueLenInternal_Lookup(p) + return +} + +func QueueLenInternal_Gets(p *radius.Packet) (values []QueueLenInternal, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 162) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueueLenInternal(i)) + } + return +} + +func QueueLenInternal_Lookup(p *radius.Packet) (value QueueLenInternal, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 162) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueueLenInternal(i) + return +} + +func QueueLenInternal_Set(p *radius.Packet, value QueueLenInternal) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 162, a) +} + +func QueueLenInternal_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 162) +} + +type QueueLenProxy uint32 + +var QueueLenProxy_Strings = map[QueueLenProxy]string{} + +func (a QueueLenProxy) String() string { + if str, ok := QueueLenProxy_Strings[a]; ok { + return str + } + return "QueueLenProxy(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueueLenProxy_Add(p *radius.Packet, value QueueLenProxy) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 163, a) +} + +func QueueLenProxy_Get(p *radius.Packet) (value QueueLenProxy) { + value, _ = QueueLenProxy_Lookup(p) + return +} + +func QueueLenProxy_Gets(p *radius.Packet) (values []QueueLenProxy, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 163) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueueLenProxy(i)) + } + return +} + +func QueueLenProxy_Lookup(p *radius.Packet) (value QueueLenProxy, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 163) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueueLenProxy(i) + return +} + +func QueueLenProxy_Set(p *radius.Packet, value QueueLenProxy) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 163, a) +} + +func QueueLenProxy_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 163) +} + +type QueueLenAuth uint32 + +var QueueLenAuth_Strings = map[QueueLenAuth]string{} + +func (a QueueLenAuth) String() string { + if str, ok := QueueLenAuth_Strings[a]; ok { + return str + } + return "QueueLenAuth(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueueLenAuth_Add(p *radius.Packet, value QueueLenAuth) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 164, a) +} + +func QueueLenAuth_Get(p *radius.Packet) (value QueueLenAuth) { + value, _ = QueueLenAuth_Lookup(p) + return +} + +func QueueLenAuth_Gets(p *radius.Packet) (values []QueueLenAuth, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 164) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueueLenAuth(i)) + } + return +} + +func QueueLenAuth_Lookup(p *radius.Packet) (value QueueLenAuth, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 164) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueueLenAuth(i) + return +} + +func QueueLenAuth_Set(p *radius.Packet, value QueueLenAuth) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 164, a) +} + +func QueueLenAuth_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 164) +} + +type QueueLenAcct uint32 + +var QueueLenAcct_Strings = map[QueueLenAcct]string{} + +func (a QueueLenAcct) String() string { + if str, ok := QueueLenAcct_Strings[a]; ok { + return str + } + return "QueueLenAcct(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueueLenAcct_Add(p *radius.Packet, value QueueLenAcct) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 165, a) +} + +func QueueLenAcct_Get(p *radius.Packet) (value QueueLenAcct) { + value, _ = QueueLenAcct_Lookup(p) + return +} + +func QueueLenAcct_Gets(p *radius.Packet) (values []QueueLenAcct, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 165) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueueLenAcct(i)) + } + return +} + +func QueueLenAcct_Lookup(p *radius.Packet) (value QueueLenAcct, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 165) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueueLenAcct(i) + return +} + +func QueueLenAcct_Set(p *radius.Packet, value QueueLenAcct) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 165, a) +} + +func QueueLenAcct_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 165) +} + +type QueueLenDetail uint32 + +var QueueLenDetail_Strings = map[QueueLenDetail]string{} + +func (a QueueLenDetail) String() string { + if str, ok := QueueLenDetail_Strings[a]; ok { + return str + } + return "QueueLenDetail(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueueLenDetail_Add(p *radius.Packet, value QueueLenDetail) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 166, a) +} + +func QueueLenDetail_Get(p *radius.Packet) (value QueueLenDetail) { + value, _ = QueueLenDetail_Lookup(p) + return +} + +func QueueLenDetail_Gets(p *radius.Packet) (values []QueueLenDetail, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 166) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueueLenDetail(i)) + } + return +} + +func QueueLenDetail_Lookup(p *radius.Packet) (value QueueLenDetail, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 166) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueueLenDetail(i) + return +} + +func QueueLenDetail_Set(p *radius.Packet, value QueueLenDetail) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 166, a) +} + +func QueueLenDetail_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 166) +} + +func StatsClientIPAddress_Add(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 167, a) +} + +func StatsClientIPAddress_Get(p *radius.Packet) (value net.IP) { + value, _ = StatsClientIPAddress_Lookup(p) + return +} + +func StatsClientIPAddress_Gets(p *radius.Packet) (values []net.IP, err error) { + var i net.IP + for _, attr := range _FreeRADIUS_GetsVendor(p, 167) { + i, err = radius.IPAddr(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsClientIPAddress_Lookup(p *radius.Packet) (value net.IP, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 167) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.IPAddr(a) + return +} + +func StatsClientIPAddress_Set(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 167, a) +} + +func StatsClientIPAddress_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 167) +} + +type StatsClientNumber uint32 + +var StatsClientNumber_Strings = map[StatsClientNumber]string{} + +func (a StatsClientNumber) String() string { + if str, ok := StatsClientNumber_Strings[a]; ok { + return str + } + return "StatsClientNumber(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func StatsClientNumber_Add(p *radius.Packet, value StatsClientNumber) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 168, a) +} + +func StatsClientNumber_Get(p *radius.Packet) (value StatsClientNumber) { + value, _ = StatsClientNumber_Lookup(p) + return +} + +func StatsClientNumber_Gets(p *radius.Packet) (values []StatsClientNumber, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 168) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, StatsClientNumber(i)) + } + return +} + +func StatsClientNumber_Lookup(p *radius.Packet) (value StatsClientNumber, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 168) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = StatsClientNumber(i) + return +} + +func StatsClientNumber_Set(p *radius.Packet, value StatsClientNumber) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 168, a) +} + +func StatsClientNumber_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 168) +} + +type StatsClientNetmask uint32 + +var StatsClientNetmask_Strings = map[StatsClientNetmask]string{} + +func (a StatsClientNetmask) String() string { + if str, ok := StatsClientNetmask_Strings[a]; ok { + return str + } + return "StatsClientNetmask(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func StatsClientNetmask_Add(p *radius.Packet, value StatsClientNetmask) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 169, a) +} + +func StatsClientNetmask_Get(p *radius.Packet) (value StatsClientNetmask) { + value, _ = StatsClientNetmask_Lookup(p) + return +} + +func StatsClientNetmask_Gets(p *radius.Packet) (values []StatsClientNetmask, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 169) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, StatsClientNetmask(i)) + } + return +} + +func StatsClientNetmask_Lookup(p *radius.Packet) (value StatsClientNetmask, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 169) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = StatsClientNetmask(i) + return +} + +func StatsClientNetmask_Set(p *radius.Packet, value StatsClientNetmask) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 169, a) +} + +func StatsClientNetmask_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 169) +} + +func StatsServerIPAddress_Add(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 170, a) +} + +func StatsServerIPAddress_Get(p *radius.Packet) (value net.IP) { + value, _ = StatsServerIPAddress_Lookup(p) + return +} + +func StatsServerIPAddress_Gets(p *radius.Packet) (values []net.IP, err error) { + var i net.IP + for _, attr := range _FreeRADIUS_GetsVendor(p, 170) { + i, err = radius.IPAddr(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsServerIPAddress_Lookup(p *radius.Packet) (value net.IP, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 170) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.IPAddr(a) + return +} + +func StatsServerIPAddress_Set(p *radius.Packet, value net.IP) (err error) { + var a radius.Attribute + a, err = radius.NewIPAddr(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 170, a) +} + +func StatsServerIPAddress_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 170) +} + +type StatsServerPort uint32 + +var StatsServerPort_Strings = map[StatsServerPort]string{} + +func (a StatsServerPort) String() string { + if str, ok := StatsServerPort_Strings[a]; ok { + return str + } + return "StatsServerPort(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func StatsServerPort_Add(p *radius.Packet, value StatsServerPort) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 171, a) +} + +func StatsServerPort_Get(p *radius.Packet) (value StatsServerPort) { + value, _ = StatsServerPort_Lookup(p) + return +} + +func StatsServerPort_Gets(p *radius.Packet) (values []StatsServerPort, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 171) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, StatsServerPort(i)) + } + return +} + +func StatsServerPort_Lookup(p *radius.Packet) (value StatsServerPort, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 171) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = StatsServerPort(i) + return +} + +func StatsServerPort_Set(p *radius.Packet, value StatsServerPort) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 171, a) +} + +func StatsServerPort_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 171) +} + +type StatsServerOutstandingRequests uint32 + +var StatsServerOutstandingRequests_Strings = map[StatsServerOutstandingRequests]string{} + +func (a StatsServerOutstandingRequests) String() string { + if str, ok := StatsServerOutstandingRequests_Strings[a]; ok { + return str + } + return "StatsServerOutstandingRequests(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func StatsServerOutstandingRequests_Add(p *radius.Packet, value StatsServerOutstandingRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 172, a) +} + +func StatsServerOutstandingRequests_Get(p *radius.Packet) (value StatsServerOutstandingRequests) { + value, _ = StatsServerOutstandingRequests_Lookup(p) + return +} + +func StatsServerOutstandingRequests_Gets(p *radius.Packet) (values []StatsServerOutstandingRequests, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 172) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, StatsServerOutstandingRequests(i)) + } + return +} + +func StatsServerOutstandingRequests_Lookup(p *radius.Packet) (value StatsServerOutstandingRequests, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 172) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = StatsServerOutstandingRequests(i) + return +} + +func StatsServerOutstandingRequests_Set(p *radius.Packet, value StatsServerOutstandingRequests) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 172, a) +} + +func StatsServerOutstandingRequests_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 172) +} + +type StatsServerState uint32 + +const ( + StatsServerState_Value_Alive StatsServerState = 0 + StatsServerState_Value_Zombie StatsServerState = 1 + StatsServerState_Value_Dead StatsServerState = 2 + StatsServerState_Value_Idle StatsServerState = 3 +) + +var StatsServerState_Strings = map[StatsServerState]string{ + StatsServerState_Value_Alive: "Alive", + StatsServerState_Value_Zombie: "Zombie", + StatsServerState_Value_Dead: "Dead", + StatsServerState_Value_Idle: "Idle", +} + +func (a StatsServerState) String() string { + if str, ok := StatsServerState_Strings[a]; ok { + return str + } + return "StatsServerState(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func StatsServerState_Add(p *radius.Packet, value StatsServerState) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 173, a) +} + +func StatsServerState_Get(p *radius.Packet) (value StatsServerState) { + value, _ = StatsServerState_Lookup(p) + return +} + +func StatsServerState_Gets(p *radius.Packet) (values []StatsServerState, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 173) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, StatsServerState(i)) + } + return +} + +func StatsServerState_Lookup(p *radius.Packet) (value StatsServerState, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 173) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = StatsServerState(i) + return +} + +func StatsServerState_Set(p *radius.Packet, value StatsServerState) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 173, a) +} + +func StatsServerState_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 173) +} + +func StatsServerTimeOfDeath_Add(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 174, a) +} + +func StatsServerTimeOfDeath_Get(p *radius.Packet) (value time.Time) { + value, _ = StatsServerTimeOfDeath_Lookup(p) + return +} + +func StatsServerTimeOfDeath_Gets(p *radius.Packet) (values []time.Time, err error) { + var i time.Time + for _, attr := range _FreeRADIUS_GetsVendor(p, 174) { + i, err = radius.Date(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsServerTimeOfDeath_Lookup(p *radius.Packet) (value time.Time, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 174) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.Date(a) + return +} + +func StatsServerTimeOfDeath_Set(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 174, a) +} + +func StatsServerTimeOfDeath_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 174) +} + +func StatsServerTimeOfLife_Add(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 175, a) +} + +func StatsServerTimeOfLife_Get(p *radius.Packet) (value time.Time) { + value, _ = StatsServerTimeOfLife_Lookup(p) + return +} + +func StatsServerTimeOfLife_Gets(p *radius.Packet) (values []time.Time, err error) { + var i time.Time + for _, attr := range _FreeRADIUS_GetsVendor(p, 175) { + i, err = radius.Date(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsServerTimeOfLife_Lookup(p *radius.Packet) (value time.Time, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 175) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.Date(a) + return +} + +func StatsServerTimeOfLife_Set(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 175, a) +} + +func StatsServerTimeOfLife_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 175) +} + +func StatsStartTime_Add(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 176, a) +} + +func StatsStartTime_Get(p *radius.Packet) (value time.Time) { + value, _ = StatsStartTime_Lookup(p) + return +} + +func StatsStartTime_Gets(p *radius.Packet) (values []time.Time, err error) { + var i time.Time + for _, attr := range _FreeRADIUS_GetsVendor(p, 176) { + i, err = radius.Date(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsStartTime_Lookup(p *radius.Packet) (value time.Time, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 176) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.Date(a) + return +} + +func StatsStartTime_Set(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 176, a) +} + +func StatsStartTime_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 176) +} + +func StatsHUPTime_Add(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 177, a) +} + +func StatsHUPTime_Get(p *radius.Packet) (value time.Time) { + value, _ = StatsHUPTime_Lookup(p) + return +} + +func StatsHUPTime_Gets(p *radius.Packet) (values []time.Time, err error) { + var i time.Time + for _, attr := range _FreeRADIUS_GetsVendor(p, 177) { + i, err = radius.Date(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsHUPTime_Lookup(p *radius.Packet) (value time.Time, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 177) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.Date(a) + return +} + +func StatsHUPTime_Set(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 177, a) +} + +func StatsHUPTime_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 177) +} + +type ServerEMAWindow uint32 + +var ServerEMAWindow_Strings = map[ServerEMAWindow]string{} + +func (a ServerEMAWindow) String() string { + if str, ok := ServerEMAWindow_Strings[a]; ok { + return str + } + return "ServerEMAWindow(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func ServerEMAWindow_Add(p *radius.Packet, value ServerEMAWindow) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 178, a) +} + +func ServerEMAWindow_Get(p *radius.Packet) (value ServerEMAWindow) { + value, _ = ServerEMAWindow_Lookup(p) + return +} + +func ServerEMAWindow_Gets(p *radius.Packet) (values []ServerEMAWindow, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 178) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, ServerEMAWindow(i)) + } + return +} + +func ServerEMAWindow_Lookup(p *radius.Packet) (value ServerEMAWindow, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 178) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = ServerEMAWindow(i) + return +} + +func ServerEMAWindow_Set(p *radius.Packet, value ServerEMAWindow) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 178, a) +} + +func ServerEMAWindow_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 178) +} + +type ServerEMAUSECWindow1 uint32 + +var ServerEMAUSECWindow1_Strings = map[ServerEMAUSECWindow1]string{} + +func (a ServerEMAUSECWindow1) String() string { + if str, ok := ServerEMAUSECWindow1_Strings[a]; ok { + return str + } + return "ServerEMAUSECWindow1(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func ServerEMAUSECWindow1_Add(p *radius.Packet, value ServerEMAUSECWindow1) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 179, a) +} + +func ServerEMAUSECWindow1_Get(p *radius.Packet) (value ServerEMAUSECWindow1) { + value, _ = ServerEMAUSECWindow1_Lookup(p) + return +} + +func ServerEMAUSECWindow1_Gets(p *radius.Packet) (values []ServerEMAUSECWindow1, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 179) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, ServerEMAUSECWindow1(i)) + } + return +} + +func ServerEMAUSECWindow1_Lookup(p *radius.Packet) (value ServerEMAUSECWindow1, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 179) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = ServerEMAUSECWindow1(i) + return +} + +func ServerEMAUSECWindow1_Set(p *radius.Packet, value ServerEMAUSECWindow1) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 179, a) +} + +func ServerEMAUSECWindow1_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 179) +} + +type ServerEMAUSECWindow10 uint32 + +var ServerEMAUSECWindow10_Strings = map[ServerEMAUSECWindow10]string{} + +func (a ServerEMAUSECWindow10) String() string { + if str, ok := ServerEMAUSECWindow10_Strings[a]; ok { + return str + } + return "ServerEMAUSECWindow10(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func ServerEMAUSECWindow10_Add(p *radius.Packet, value ServerEMAUSECWindow10) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 180, a) +} + +func ServerEMAUSECWindow10_Get(p *radius.Packet) (value ServerEMAUSECWindow10) { + value, _ = ServerEMAUSECWindow10_Lookup(p) + return +} + +func ServerEMAUSECWindow10_Gets(p *radius.Packet) (values []ServerEMAUSECWindow10, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 180) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, ServerEMAUSECWindow10(i)) + } + return +} + +func ServerEMAUSECWindow10_Lookup(p *radius.Packet) (value ServerEMAUSECWindow10, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 180) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = ServerEMAUSECWindow10(i) + return +} + +func ServerEMAUSECWindow10_Set(p *radius.Packet, value ServerEMAUSECWindow10) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 180, a) +} + +func ServerEMAUSECWindow10_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 180) +} + +type QueuePPSIn uint32 + +var QueuePPSIn_Strings = map[QueuePPSIn]string{} + +func (a QueuePPSIn) String() string { + if str, ok := QueuePPSIn_Strings[a]; ok { + return str + } + return "QueuePPSIn(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueuePPSIn_Add(p *radius.Packet, value QueuePPSIn) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 181, a) +} + +func QueuePPSIn_Get(p *radius.Packet) (value QueuePPSIn) { + value, _ = QueuePPSIn_Lookup(p) + return +} + +func QueuePPSIn_Gets(p *radius.Packet) (values []QueuePPSIn, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 181) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueuePPSIn(i)) + } + return +} + +func QueuePPSIn_Lookup(p *radius.Packet) (value QueuePPSIn, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 181) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueuePPSIn(i) + return +} + +func QueuePPSIn_Set(p *radius.Packet, value QueuePPSIn) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 181, a) +} + +func QueuePPSIn_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 181) +} + +type QueuePPSOut uint32 + +var QueuePPSOut_Strings = map[QueuePPSOut]string{} + +func (a QueuePPSOut) String() string { + if str, ok := QueuePPSOut_Strings[a]; ok { + return str + } + return "QueuePPSOut(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueuePPSOut_Add(p *radius.Packet, value QueuePPSOut) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 182, a) +} + +func QueuePPSOut_Get(p *radius.Packet) (value QueuePPSOut) { + value, _ = QueuePPSOut_Lookup(p) + return +} + +func QueuePPSOut_Gets(p *radius.Packet) (values []QueuePPSOut, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 182) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueuePPSOut(i)) + } + return +} + +func QueuePPSOut_Lookup(p *radius.Packet) (value QueuePPSOut, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 182) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueuePPSOut(i) + return +} + +func QueuePPSOut_Set(p *radius.Packet, value QueuePPSOut) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 182, a) +} + +func QueuePPSOut_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 182) +} + +type QueueUsePercentage uint32 + +var QueueUsePercentage_Strings = map[QueueUsePercentage]string{} + +func (a QueueUsePercentage) String() string { + if str, ok := QueueUsePercentage_Strings[a]; ok { + return str + } + return "QueueUsePercentage(" + strconv.FormatUint(uint64(a), 10) + ")" +} + +func QueueUsePercentage_Add(p *radius.Packet, value QueueUsePercentage) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_AddVendor(p, 183, a) +} + +func QueueUsePercentage_Get(p *radius.Packet) (value QueueUsePercentage) { + value, _ = QueueUsePercentage_Lookup(p) + return +} + +func QueueUsePercentage_Gets(p *radius.Packet) (values []QueueUsePercentage, err error) { + var i uint32 + for _, attr := range _FreeRADIUS_GetsVendor(p, 183) { + i, err = radius.Integer(attr) + if err != nil { + return + } + values = append(values, QueueUsePercentage(i)) + } + return +} + +func QueueUsePercentage_Lookup(p *radius.Packet) (value QueueUsePercentage, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 183) + if !ok { + err = radius.ErrNoAttribute + return + } + var i uint32 + i, err = radius.Integer(a) + if err != nil { + return + } + value = QueueUsePercentage(i) + return +} + +func QueueUsePercentage_Set(p *radius.Packet, value QueueUsePercentage) (err error) { + a := radius.NewInteger(uint32(value)) + return _FreeRADIUS_SetVendor(p, 183, a) +} + +func QueueUsePercentage_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 183) +} + +func StatsLastPacketRecv_Add(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 184, a) +} + +func StatsLastPacketRecv_Get(p *radius.Packet) (value time.Time) { + value, _ = StatsLastPacketRecv_Lookup(p) + return +} + +func StatsLastPacketRecv_Gets(p *radius.Packet) (values []time.Time, err error) { + var i time.Time + for _, attr := range _FreeRADIUS_GetsVendor(p, 184) { + i, err = radius.Date(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsLastPacketRecv_Lookup(p *radius.Packet) (value time.Time, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 184) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.Date(a) + return +} + +func StatsLastPacketRecv_Set(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 184, a) +} + +func StatsLastPacketRecv_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 184) +} + +func StatsLastPacketSent_Add(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_AddVendor(p, 185, a) +} + +func StatsLastPacketSent_Get(p *radius.Packet) (value time.Time) { + value, _ = StatsLastPacketSent_Lookup(p) + return +} + +func StatsLastPacketSent_Gets(p *radius.Packet) (values []time.Time, err error) { + var i time.Time + for _, attr := range _FreeRADIUS_GetsVendor(p, 185) { + i, err = radius.Date(attr) + if err != nil { + return + } + values = append(values, i) + } + return +} + +func StatsLastPacketSent_Lookup(p *radius.Packet) (value time.Time, err error) { + a, ok := _FreeRADIUS_LookupVendor(p, 185) + if !ok { + err = radius.ErrNoAttribute + return + } + value, err = radius.Date(a) + return +} + +func StatsLastPacketSent_Set(p *radius.Packet, value time.Time) (err error) { + var a radius.Attribute + a, err = radius.NewDate(value) + if err != nil { + return + } + return _FreeRADIUS_SetVendor(p, 185, a) +} + +func StatsLastPacketSent_Del(p *radius.Packet) { + _FreeRADIUS_DelVendor(p, 185) +}