# -*- text -*-
# Copyright (C) 2019 The FreeRADIUS Server project and contributors
# This work is licensed under CC-BY version 4.0 https://creativecommons.org/licenses/by/4.0
##############################################################################
#
#	WiMAX Forum
#
#	Updated from NWG_R1_V1.2.1-Stage-3.pdf
#
#	NWG_R1_V1.2-Stage-3.pdf
#	RADIUS discussion is on pp. 432-498
#	WiMAX VSA's are on p. 450 and following.
#
#	DHCP && MIP keys are on p.48 and following.
#
#	WiMAX VSA's have a non-standard format:
#
#		type		1 octet
#		length		1 octet
#		continuation	1 octet      0bcrrrrrrr
#		value		1+ octets
#
#	If the high bit of the "continuation" field is set, then
#	the next attribute of the same WiMAX type should have it's
#	value concatenated to this one.
#
#	The C bit MUST be zero for all small types.  e.g.  integer,
#	ipaddr, ipv6addr, etc.  It MAY be set for "string" and "octet"
#	types.  The maximum attribute length for "string" and "octet"
#	types is still 253 bytes, even with continuations.  The WiMAX
#	specifications do not specify a maximum length, so we have chosen
#	to keep the traditional RADIUS maximum length here.
#
#	The C bit MAY be 1 for TLV types.  There is no restriction on
#	TLV length other than maximum packet size (a bit less than 4K).
#
#	The rest of the bits in the "continuation" octet are reserved,
#	and MUST be zero.
#
#	Each WiMAX VSA is packed into one Vendor-Specific attribute
#	with Vendor-Id of WiMAX.  Multiple WiMAX sub-TLV's ARE packed
#	into one VSA with an encapsulating TLV.
#
#	The WiMAX forum adds the following (non-standard) data types:
#
#	byte	 - one-octet unsigned integer
#	short	 - two-octet unsigned integer in network byte order
#	signed	 - 4-octet signed integer in network byte order.
#	combo-ip - if length 4, is the same as the "ipaddr" type.
#		   if length 16, is the same as "ipv6addr" type.
#	tlv	 - encapsulated sub-attributes
#		   i.e. Vendor-Specific -> WiMAX TLV -> WiMAX sub-tlv.
#
##############################################################################
#
#	$Id: 4d220eaf33b147454b80a41d5ab0f0c2c8363d71 $
#
##############################################################################

VENDOR		WiMAX				24757	format=1,1,c

BEGIN-VENDOR	WiMAX

ATTRIBUTE	WiMAX-Capability			1	tlv

BEGIN-TLV 	WiMAX-Capability
ATTRIBUTE	WiMAX-Release				1	string
ATTRIBUTE	WiMAX-Accounting-Capabilities		2	byte
ATTRIBUTE	WiMAX-Hotlining-Capabilities		3	byte
ATTRIBUTE	WiMAX-Idle-Mode-Notification-Cap	4	byte
ATTRIBUTE	WiMAX-ASN-IP-Service-Capabilities	5	byte
ATTRIBUTE	WiMAX-VCSN-IP-Service-Capabilities	6	byte
ATTRIBUTE	WiMAX-Authorized-IP-Services		7	byte
ATTRIBUTE	WiMAX-Authorized-Anchor-Locations	8	byte
ATTRIBUTE	WiMAX-ASN-Ethernet-Service-Capabilities	9	byte
ATTRIBUTE	WiMAX-VCSN-Ethernet-Service-Capabilities 10	byte
ATTRIBUTE	WiMAX-Authorized-Ethernet-Services	11	byte

# This is really a bitmap
VALUE	WiMAX-Accounting-Capabilities	No-Accounting		0
VALUE	WiMAX-Accounting-Capabilities	IP-Session-Based	1
VALUE	WiMAX-Accounting-Capabilities	Flow-Based		2

# This is really a bitmap
VALUE	WiMAX-Hotlining-Capabilities	Not-Supported		0
VALUE	WiMAX-Hotlining-Capabilities	Hotline-Profile-Id	1
VALUE	WiMAX-Hotlining-Capabilities	NAS-Filter-Rule		2
VALUE	WiMAX-Hotlining-Capabilities	HTTP-Redirection	4
VALUE	WiMAX-Hotlining-Capabilities	IP-Redirection		8

VALUE	WiMAX-Idle-Mode-Notification-Cap Not-Supported		0
VALUE	WiMAX-Idle-Mode-Notification-Cap Supported		1

VALUE	WiMAX-ASN-IP-Service-Capabilities DHCP-Relay		1
VALUE	WiMAX-ASN-IP-Service-Capabilities DHCP-Proxy		2
VALUE	WiMAX-ASN-IP-Service-Capabilities FA			4
VALUE	WiMAX-ASN-IP-Service-Capabilities PMIP-Client		8

VALUE	WiMAX-ASN-Ethernet-Service-Capabilities eAFF-IPv4-Transport 1
VALUE	WiMAX-ASN-Ethernet-Service-Capabilities eAFF-IPv6-Transport 2
VALUE	WiMAX-ASN-Ethernet-Service-Capabilities eFA		4

VALUE	WiMAX-VCSN-Ethernet-Service-Capabilities eCFF-IPv4-Transport 1
VALUE	WiMAX-VCSN-Ethernet-Service-Capabilities eCFF-IPv6-Transport 2
VALUE	WiMAX-VCSN-Ethernet-Service-Capabilities eHAv4		4
VALUE	WiMAX-VCSN-Ethernet-Service-Capabilities eHAv6		8
END-TLV		WiMAX-Capability

ATTRIBUTE	WiMAX-Device-Authentication-Indicator	2	byte
ATTRIBUTE	WiMAX-GMT-Timezone-offset		3	signed
ATTRIBUTE	WiMAX-AAA-Session-Id			4	octets

# 32 octets in length
ATTRIBUTE	WiMAX-MSK				5	octets encrypt=2
ATTRIBUTE	WiMAX-hHA-IP-MIP4			6	ipaddr
ATTRIBUTE	WiMAX-hHA-IP-MIP6			7	ipv6addr
ATTRIBUTE	WiMAX-DHCPv4-Server			8	combo-ip
ATTRIBUTE	WiMAX-DHCPv6-Server			9	combo-ip

# MN-HA-CMIP4 = H(MIP-RK, "CMIP4 MN HA" | HA-IPv4 | MN-NAI), or
# MN-HA-PMIP4 = H(MIP-RK, "PMIP4 MN HA" | HA-IPv4 | MN-NAI)
ATTRIBUTE	WiMAX-MN-hHA-MIP4-Key			10	octets encrypt=2

# MN-HA-CMIP4-SPI == MIP-SPI, or
# MN-HA-PIMP4-SPI == MIP-SPI + 1
ATTRIBUTE	WiMAX-MN-hHA-MIP4-SPI			11	integer

# MN-HA-CMIP6 = H(MIP-RK, "CMIP6 MN HA" | HA-IPv6 | MN-NAI)
ATTRIBUTE	WiMAX-MN-hHA-MIP6-Key			12	octets encrypt=2

# MN-HA-CMIP6-SPI == MIP-SPI + 2
ATTRIBUTE	WiMAX-MN-hHA-MIP6-SPI			13	integer

# FA-RK = H(MIP-RK, "FA-RK")
ATTRIBUTE	WiMAX-FA-RK-Key				14	octets encrypt=2

# 160 bit random number
ATTRIBUTE	WiMAX-HA-RK-Key				15	octets encrypt=2
# SPI-CMIP4
ATTRIBUTE	WiMAX-HA-RK-SPI				16	integer

ATTRIBUTE	WiMAX-HA-RK-Lifetime			17	integer

#  The same as MN-HA-CMIP4, etc.  But in different packets.
ATTRIBUTE	WiMAX-RRQ-HA-IP				18	combo-ip
ATTRIBUTE	WiMAX-RRQ-MN-HA-Key			19	octets encrypt=2
ATTRIBUTE	WiMAX-RRQ-MN-HA-SPI			20	integer

ATTRIBUTE	WiMAX-Session-Continue			21	integer
ATTRIBUTE	WiMAX-Beginning-Of-Session		22	integer
ATTRIBUTE	WiMAX-IP-Technology			23	integer

VALUE	WiMAX-IP-Technology		Reserved-0		0
VALUE	WiMAX-IP-Technology		Reserved-1		1
VALUE	WiMAX-IP-Technology		PMIP4			2
VALUE	WiMAX-IP-Technology		CMIP4			3
VALUE	WiMAX-IP-Technology		CMIP6			4
VALUE	WiMAX-IP-Technology		Ethernet-CS		5

ATTRIBUTE	WiMAX-Hotline-Indicator			24	string
ATTRIBUTE	WiMAX-Prepaid-Indicator			25	byte
ATTRIBUTE	WiMAX-PDFID				26	short
ATTRIBUTE	WiMAX-SDFID				27	short

ATTRIBUTE	WiMAX-Packet-Flow-Descriptor		28	tlv
BEGIN-TLV WiMAX-Packet-Flow-Descriptor
ATTRIBUTE	WiMAX-Packet-Data-Flow-Id		1	short
ATTRIBUTE	WiMAX-Service-Data-Flow-Id		2	short
ATTRIBUTE	WiMAX-Service-Profile-Id		3	integer
ATTRIBUTE	WiMAX-Direction				4	byte

VALUE	WiMAX-Direction			Reserved-0		0
VALUE	WiMAX-Direction			Uplink			1
VALUE	WiMAX-Direction			Downlink		2
VALUE	WiMAX-Direction			Bi-Directional		3

ATTRIBUTE	WiMAX-Activation-Trigger		5	byte	# bitmap
ATTRIBUTE	WiMAX-Transport-Type			6	byte

VALUE	WiMAX-Transport-Type		Reserved-0		0
VALUE	WiMAX-Transport-Type		IPv4-CS			1
VALUE	WiMAX-Transport-Type		IPv6-CS			2
VALUE	WiMAX-Transport-Type		Ethernet		3

ATTRIBUTE	WiMAX-Uplink-QOS-Id			7	byte
ATTRIBUTE	WiMAX-Downlink-QOS-Id			8	byte
ATTRIBUTE	WiMAX-Uplink-Classifier			9	string
ATTRIBUTE	WiMAX-Downlink-Classifier		10	string
ATTRIBUTE	WiMAX-Classifier			11	tlv

BEGIN-TLV	WiMAX-Classifier
	ATTRIBUTE	WiMAX-ClassifierID			1 integer
	ATTRIBUTE	WiMAX-Classifier-Priority		2 integer
	ATTRIBUTE	WiMAX-Classifier-Protocol		3 integer
	ATTRIBUTE	WiMAX-Classifier-Direction		4 byte

VALUE	WiMAX-Classifier-Direction	Reserved-0		0
VALUE	WiMAX-Classifier-Direction	IN			1
VALUE	WiMAX-Classifier-Direction	OUT			2
VALUE	WiMAX-Classifier-Direction	Bi-Directional		3
VALUE	WiMAX-Classifier-Direction	FF			4

# Sub-TLV inside sub-TLV inside sub-TLV. How deep does the rabbit hole go?
	ATTRIBUTE	WiMAX-Source-Specification		5 tlv

	BEGIN-TLV	WiMAX-Source-Specification
		ATTRIBUTE	WiMAX-Source-IPAddress			1	ipaddr
		ATTRIBUTE	WiMAX-Source-IPAddressRange		2	octets # 2 of ipv4addr OR ipv6addr
		ATTRIBUTE	WiMAX-Source-IPAddressMask		3	combo-ip
		ATTRIBUTE	WiMAX-Source-Port			4	short
		ATTRIBUTE	WiMAX-Source-Port-Range			5	integer # really 2 short
		ATTRIBUTE	WiMAX-Source-Inverted			6	byte
		ATTRIBUTE	WiMAX-Source-Assigned			7	byte
	END-TLV	WiMAX-Source-Specification

	ATTRIBUTE	WiMAX-Destination-Specification		6 tlv

	BEGIN-TLV	WiMAX-Destination-Specification
		ATTRIBUTE	WiMAX-Destination-IPAddress		1	ipaddr
		ATTRIBUTE	WiMAX-Destination-IPAddressRange	2	octets # 2 of ipv4addr OR ipv6addr
		ATTRIBUTE	WiMAX-Destination-IPAddressMask		3	combo-ip
		ATTRIBUTE	WiMAX-Destination-Port			4	short
		ATTRIBUTE	WiMAX-Destination-Port-Range		5	integer # really 2 short
		ATTRIBUTE	WiMAX-Destination-Inverted		6	byte
		ATTRIBUTE	WiMAX-Destination-Assigned		7	byte
	END-TLV	WiMAX-Destination-Specification

ATTRIBUTE	WiMAX-IP-TOS/DSCP-Range-and-Mask	7 octets
ATTRIBUTE	WiMAX-VLAN-ID				8 integer
ATTRIBUTE	WiMAX-802.1p				9 octets
END-TLV	WiMAX-Classifier
END-TLV	WiMAX-Packet-Flow-Descriptor

ATTRIBUTE	WiMAX-QoS-Descriptor			29	tlv

BEGIN-TLV WiMAX-QoS-Descriptor
ATTRIBUTE	WiMAX-QoS-Id				1	byte
ATTRIBUTE	WiMAX-Global-Service-Class-Name		2	string # 6 octets
ATTRIBUTE	WiMAX-Service-Class-Name		3	string
ATTRIBUTE	WiMAX-Schedule-Type			4	byte
ATTRIBUTE	WiMAX-Traffic-Priority			5	byte
ATTRIBUTE	WiMAX-Maximum-Sustained-Traffic-Rate	6	integer
ATTRIBUTE	WiMAX-Minimum-Reserved-Traffic-Rate	7	integer
ATTRIBUTE	WiMAX-Maximum-Traffic-Burst		8	integer
ATTRIBUTE	WiMAX-Tolerated-Jitter			9	integer
ATTRIBUTE	WiMAX-Maximum-Latency			10	integer
ATTRIBUTE	WiMAX-Reduced-Resources-Code		11	byte
ATTRIBUTE	WiMAX-Media-Flow-Type			12	byte
ATTRIBUTE	WiMAX-Unsolicited-Grant-Interval	13	short
ATTRIBUTE	WiMAX-SDU-Size				14	short
ATTRIBUTE	WiMAX-Unsolicited-Polling-Interval	15	short
ATTRIBUTE	WiMAX-Media-Flow-Description-SDP	16	string
ATTRIBUTE	WiMAX-R3-IF-Descriptor			17	tlv

BEGIN-TLV	WiMAX-R3-IF-Descriptor
	ATTRIBUTE	WiMAX-R3-IF-Name			1 string
	ATTRIBUTE	WiMAX-R3-IF-ID				2 octets
	# ATTRIBUTE	WiMAX-PDFID				3 short
	ATTRIBUTE	WiMAX-IPv4-addr				4 ipaddr
	ATTRIBUTE	WiMAX-IPv4-Netmask			5 ipaddr
	ATTRIBUTE	WiMAX-DGW-IPv4-addr			6 ipaddr
END-TLV	WiMAX-R3-IF-Descriptor

ATTRIBUTE	WiMAX-DHCP-Option			18	tlv

BEGIN-TLV	WiMAX-DHCP-Option
	ATTRIBUTE	WiMAX-Ref-R3-IF-Name			1 string
	ATTRIBUTE	WiMAX-DHCP-Option-Container		2 string
END-TLV	WiMAX-DHCP-Option

VALUE	WiMAX-Schedule-Type		Best-Effort		2
VALUE	WiMAX-Schedule-Type		nrtPS			3
VALUE	WiMAX-Schedule-Type		rtPS			4
VALUE	WiMAX-Schedule-Type		Extended-rtPS		5
VALUE	WiMAX-Schedule-Type		UGS			6

VALUE	WiMAX-Media-Flow-Type		VoIP			1
VALUE	WiMAX-Media-Flow-Type		Robust-Browser		2
VALUE	WiMAX-Media-Flow-Type		Secure-Browser-VPN	3
VALUE	WiMAX-Media-Flow-Type		Streaming-Video		4
VALUE	WiMAX-Media-Flow-Type		Streaming-Live-TV	5
VALUE	WiMAX-Media-Flow-Type		Music-Photo-Download	6
VALUE	WiMAX-Media-Flow-Type		Multi-Player-Gaming	7
VALUE	WiMAX-Media-Flow-Type		Location-Based-Services	8
VALUE	WiMAX-Media-Flow-Type		Text-Audio-Books	9
VALUE	WiMAX-Media-Flow-Type		Video-Conversation	10
VALUE	WiMAX-Media-Flow-Type		Message			11
VALUE	WiMAX-Media-Flow-Type		Control			12
VALUE	WiMAX-Media-Flow-Type		Data			13

END-TLV WiMAX-QoS-Descriptor

ATTRIBUTE	WiMAX-Uplink-Granted-QoS		30	tlv

BEGIN-TLV WiMAX-Uplink-Granted-QoS
ATTRIBUTE	WiMAX-QoS-Id				1	byte
ATTRIBUTE	WiMAX-Global-Service-Class-Name		2	string # 6 octets
ATTRIBUTE	WiMAX-Service-Class-Name		3	string
ATTRIBUTE	WiMAX-Schedule-Type			4	byte
ATTRIBUTE	WiMAX-Traffic-Priority			5	byte
ATTRIBUTE	WiMAX-Maximum-Sustained-Traffic-Rate	6	integer
ATTRIBUTE	WiMAX-Minimum-Reserved-Traffic-Rate	7	integer
ATTRIBUTE	WiMAX-Maximum-Traffic-Burst		8	integer
ATTRIBUTE	WiMAX-Tolerated-Jitter			9	integer
ATTRIBUTE	WiMAX-Maximum-Latency			10	integer
ATTRIBUTE	WiMAX-Reduced-Resources-Code		11	byte
ATTRIBUTE	WiMAX-Media-Flow-Type			12	byte
ATTRIBUTE	WiMAX-Unsolicited-Grant-Interval	13	short
ATTRIBUTE	WiMAX-SDU-Size				14	short
ATTRIBUTE	WiMAX-Unsolicited-Polling-Interval	15	short
ATTRIBUTE	WiMAX-Media-Flow-Description-SDP	16	string

VALUE	WiMAX-Schedule-Type		Best-Effort		2
VALUE	WiMAX-Schedule-Type		nrtPS			3
VALUE	WiMAX-Schedule-Type		rtPS			4
VALUE	WiMAX-Schedule-Type		Extended-rtPS		5
VALUE	WiMAX-Schedule-Type		UGS			6

VALUE	WiMAX-Media-Flow-Type		VoIP			1
VALUE	WiMAX-Media-Flow-Type		Robust-Browser		2
VALUE	WiMAX-Media-Flow-Type		Secure-Browser-VPN	3
VALUE	WiMAX-Media-Flow-Type		Streaming-Video		4
VALUE	WiMAX-Media-Flow-Type		Streaming-Live-TV	5
VALUE	WiMAX-Media-Flow-Type		Music-Photo-Download	6
VALUE	WiMAX-Media-Flow-Type		Multi-Player-Gaming	7
VALUE	WiMAX-Media-Flow-Type		Location-Based-Services	8
VALUE	WiMAX-Media-Flow-Type		Text-Audio-Books	9
VALUE	WiMAX-Media-Flow-Type		Video-Conversation	10
VALUE	WiMAX-Media-Flow-Type		Message			11
VALUE	WiMAX-Media-Flow-Type		Control			12
VALUE	WiMAX-Media-Flow-Type		Data			13

END-TLV WiMAX-Uplink-Granted-QoS

ATTRIBUTE	WiMAX-Control-Packets-In		31	integer
ATTRIBUTE	WiMAX-Control-Octets-In			32	integer
ATTRIBUTE	WiMAX-Control-Packets-Out		33	integer
ATTRIBUTE	WiMAX-Control-Octets-Out		34	integer
ATTRIBUTE	WiMAX-PPAC				35	tlv

BEGIN-TLV WiMAX-PPAC
ATTRIBUTE	WiMAX-Available-In-Client		1	integer

# Really a bitmap
VALUE	WiMAX-Available-In-Client	Volume-Metering		1
VALUE	WiMAX-Available-In-Client	Duration-Metering	2
VALUE	WiMAX-Available-In-Client	Resource-Metering	4
VALUE	WiMAX-Available-In-Client	Pools			8
VALUE	WiMAX-Available-In-Client	Rating-Groups		0x10
VALUE	WiMAX-Available-In-Client	Multi-Services		0x20
VALUE	WiMAX-Available-In-Client	Tariff-Switch		0x40
END-TLV WiMAX-PPAC

ATTRIBUTE	WiMAX-Session-Termination-Capability	36	integer

# Really a bitmap
VALUE	WiMAX-Session-Termination-Capability Dynamic-Authorization 1

ATTRIBUTE	WiMAX-PPAQ				37	tlv

BEGIN-TLV	WiMAX-PPAQ
ATTRIBUTE	WiMAX-PPAQ-Quota-Identifier		1	octets
ATTRIBUTE	WiMAX-Volume-Quota			2	integer #kb
ATTRIBUTE	WiMAX-Volume-Threshold			3	integer #kb
ATTRIBUTE	WiMAX-Duration-Quota			4	integer #s
ATTRIBUTE	WiMAX-Duration-Threshold		5	integer #s
ATTRIBUTE	WiMAX-Resource-Quota			6	integer
ATTRIBUTE	WiMAX-Resource-Threshold		7	integer
ATTRIBUTE	WiMAX-Update-Reason			8	integer
ATTRIBUTE	WiMAX-Prepaid-Server			9	combo-ip
ATTRIBUTE	WiMAX-Service-Id			10	string
ATTRIBUTE	WiMAX-Rating-Group-Id			11	integer
ATTRIBUTE	WiMAX-Termination-Action		12	byte
ATTRIBUTE	WiMAX-Pool-Id				13	integer
ATTRIBUTE	WiMAX-Pool-Multiplier			14	integer
ATTRIBUTE	WiMAX-Requested-Action			15	byte
ATTRIBUTE	WiMAX-Check-Balance-Result		16	byte

#
#  4 octets - integer representing 1/10's of lowest currency (e.g. cents)
#  4 octets - currency code as in ISO-4217
#  1+	    - UTF8 string containing text like "cost is $1 per minute"
#
ATTRIBUTE	WiMAX-Cost-Information-AVP		17	octets

VALUE	WiMAX-Update-Reason		Pre-Initialization	1
VALUE	WiMAX-Update-Reason		Initial-Request		2
VALUE	WiMAX-Update-Reason		Threshold-Reached	3
VALUE	WiMAX-Update-Reason		Quota-Reached		4
VALUE	WiMAX-Update-Reason		TITSU-Approaching	5
VALUE	WiMAX-Update-Reason		Remote-Forced-Disconnect 6
VALUE	WiMAX-Update-Reason		Client-Service-Termination 7
VALUE	WiMAX-Update-Reason		Access-Service-Terminated 8
VALUE	WiMAX-Update-Reason		Service-Not-Established	9
VALUE	WiMAX-Update-Reason		One-Time-Charging	10

VALUE	WiMAX-Termination-Action	Terminate		1
VALUE	WiMAX-Termination-Action	Request-More-Quota	2
VALUE	WiMAX-Termination-Action	Redirect-Or-Filter	3

VALUE	WiMAX-Requested-Action		Balance-Check		1
VALUE	WiMAX-Requested-Action		Price-Enquiry		2

END-TLV		WiMAX-PPAQ

ATTRIBUTE	WiMAX-Prepaid-Tariff-Switching		38	tlv

BEGIN-TLV	WiMAX-Prepaid-Tariff-Switching
ATTRIBUTE	WiMAX-Prepaid-Quota-Identifier		1	string
ATTRIBUTE	WiMAX-Volume-Used-After			2	integer #1k
ATTRIBUTE	WiMAX-Tariff-Switch-Interval		3	integer #s
ATTRIBUTE	WiMAX-Time-Interval-After		4	integer #s
END-TLV		WiMAX-Prepaid-Tariff-Switching

ATTRIBUTE	WiMAX-Active-Time-Duration		39	integer
ATTRIBUTE	WiMAX-DHCP-RK				40	octets encrypt=2
ATTRIBUTE	WiMAX-DHCP-RK-Key-Id			41	integer
ATTRIBUTE	WiMAX-DHCP-RK-Lifetime			42	integer
ATTRIBUTE	WiMAX-DHCP-Msg-Server-IP		43	ipaddr
ATTRIBUTE	WiMAX-Idle-Mode-Transition		44	byte
ATTRIBUTE	WiMAX-NAP-Id				45	octets

# 3 octets of NAP Id
# 3 octets of base-station Id
ATTRIBUTE	WiMAX-BS-Id				46	octets
ATTRIBUTE	WiMAX-Location				47	octets

# Number of times Acct-Input-Packets rolled over 2^32.
ATTRIBUTE	WiMAX-Acct-Input-Packets-Gigaword	48	integer
ATTRIBUTE	WiMAX-Acct-Output-Packets-Gigaword	49	integer

# Formatted as per IP Filter rule specification.
ATTRIBUTE	WiMAX-Uplink-Flow-Description		50	string

ATTRIBUTE	WiMAX-Blu-Coa-IPv6			51	ipv6addr
ATTRIBUTE	WiMAX-DNS-Server			52	combo-ip
ATTRIBUTE	WiMAX-Hotline-Profile-Id		53	string

# Formatted as per IP Filter rule specification.
ATTRIBUTE	WiMAX-HTTP-Redirection-Rule		54	string

# Formatted as per IP Filter rule specification.
ATTRIBUTE	WiMAX-IP-Redirection-Rule		55	string
ATTRIBUTE	WiMAX-Hotline-Session-Timer		56	integer

# 3 octets
ATTRIBUTE	WiMAX-NSP-Id				57	octets
ATTRIBUTE	WiMAX-HA-RK-Key-Requested		58	integer

VALUE	WiMAX-HA-RK-Key-Requested	No			0
VALUE	WiMAX-HA-RK-Key-Requested	Yes			1

ATTRIBUTE	WiMAX-Count-Type			59	byte
ATTRIBUTE	WiMAX-DM-Action-Code			60	integer

VALUE	WiMAX-DM-Action-Code		Deregister-MS		0
VALUE	WiMAX-DM-Action-Code		Suspend-MS-Traffic	1
VALUE	WiMAX-DM-Action-Code		Suspend-User-Traffic	2
VALUE	WiMAX-DM-Action-Code		Resume-Traffic		3
VALUE	WiMAX-DM-Action-Code		MS-Terminate		4
VALUE	WiMAX-DM-Action-Code		MS-Idle			5
VALUE	WiMAX-DM-Action-Code		MS-Completed-IPv6-Handover 6
VALUE	WiMAX-DM-Action-Code		BS-Sends-RES-Cmd	0xffff

# FA-RK-SPI = SPI-CMIP4 = MIP-SPI
ATTRIBUTE	WiMAX-FA-RK-SPI				61	integer

# Formatted as per IP Filter rule specification.
ATTRIBUTE	WiMAX-Downlink-Flow-Description		62	string

# Same as QoS-Descriptor... dang.
ATTRIBUTE	WiMAX-Downlink-Granted-QoS		63	tlv

BEGIN-TLV WiMAX-Downlink-Granted-QoS
ATTRIBUTE	WiMAX-QoS-Id				1	byte
ATTRIBUTE	WiMAX-Global-Service-Class-Name		2	string # 6 octets
ATTRIBUTE	WiMAX-Service-Class-Name		3	string
ATTRIBUTE	WiMAX-Schedule-Type			4	byte
ATTRIBUTE	WiMAX-Traffic-Priority			5	byte
ATTRIBUTE	WiMAX-Maximum-Sustained-Traffic-Rate	6	integer
ATTRIBUTE	WiMAX-Minimum-Reserved-Traffic-Rate	7	integer
ATTRIBUTE	WiMAX-Maximum-Traffic-Burst		8	integer
ATTRIBUTE	WiMAX-Tolerated-Jitter			9	integer
ATTRIBUTE	WiMAX-Maximum-Latency			10	integer
ATTRIBUTE	WiMAX-Reduced-Resources-Code		11	byte
ATTRIBUTE	WiMAX-Media-Flow-Type			12	byte
ATTRIBUTE	WiMAX-Unsolicited-Grant-Interval	13	short
ATTRIBUTE	WiMAX-SDU-Size				14	short
ATTRIBUTE	WiMAX-Unsolicited-Polling-Interval	15	short
ATTRIBUTE	WiMAX-Media-Flow-Description-SDP	16	string

VALUE	WiMAX-Schedule-Type		Best-Effort		2
VALUE	WiMAX-Schedule-Type		nrtPS			3
VALUE	WiMAX-Schedule-Type		rtPS			4
VALUE	WiMAX-Schedule-Type		Extended-rtPS		5
VALUE	WiMAX-Schedule-Type		UGS			6

VALUE	WiMAX-Media-Flow-Type		VoIP			1
VALUE	WiMAX-Media-Flow-Type		Robust-Browser		2
VALUE	WiMAX-Media-Flow-Type		Secure-Browser-VPN	3
VALUE	WiMAX-Media-Flow-Type		Streaming-Video		4
VALUE	WiMAX-Media-Flow-Type		Streaming-Live-TV	5
VALUE	WiMAX-Media-Flow-Type		Music-Photo-Download	6
VALUE	WiMAX-Media-Flow-Type		Multi-Player-Gaming	7
VALUE	WiMAX-Media-Flow-Type		Location-Based-Services	8
VALUE	WiMAX-Media-Flow-Type		Text-Audio-Books	9
VALUE	WiMAX-Media-Flow-Type		Video-Conversation	10
VALUE	WiMAX-Media-Flow-Type		Message			11
VALUE	WiMAX-Media-Flow-Type		Control			12
VALUE	WiMAX-Media-Flow-Type		Data			13

END-TLV WiMAX-Downlink-Granted-QoS

# More MIP keys, calculated as above... but in different packets.
# Why, oh why?
ATTRIBUTE	WiMAX-vHA-IP-MIP4			64	ipaddr
ATTRIBUTE	WiMAX-vHA-IP-MIP6			65	ipv6addr
ATTRIBUTE	WiMAX-vHA-MIP4-Key			66	octets encrypt=2
ATTRIBUTE	WiMAX-vHA-RK-Key			67	octets encrypt=2
ATTRIBUTE	WiMAX-vHA-RK-SPI			68	integer
ATTRIBUTE	WiMAX-vHA-RK-Lifetime			69	integer

ATTRIBUTE	WiMAX-MN-vHA-MIP6-Key			70	octets encrypt=2
ATTRIBUTE	WiMAX-MN-vHA-MIP4-SPI			71	integer
ATTRIBUTE	WiMAX-MN-vHA-MIP6-SPI			72	integer
ATTRIBUTE	WiMAX-vDHCPv4-Server			73	ipaddr
ATTRIBUTE	WiMAX-vDHCPv6-Server			74	ipv6addr
ATTRIBUTE	WiMAX-vDHCP-RK				75	octets encrypt=2
ATTRIBUTE	WiMAX-vDHCP-RK-Key-ID			76	integer
ATTRIBUTE	WiMAX-vDHCP-RK-Lifetime			77	integer

ATTRIBUTE	WiMAX-PMIP-Authenticated-Network-Identity 78	string
ATTRIBUTE	WiMAX-Visited-Framed-IP-Address		79	ipaddr
ATTRIBUTE	WiMAX-Visited-Framed-IPv6-Prefix	80	ipv6prefix
ATTRIBUTE	WiMAX-Visited-Framed-Interface-Id	81	ifid
ATTRIBUTE	WiMAX-MIP-Authorization-Status		82	integer

VALUE	WiMAX-MIP-Authorization-Status	False			0
VALUE	WiMAX-MIP-Authorization-Status	True			1

#
#  FIXME: See WiMAX-Src-Dst-Specification for TLVs
#
ATTRIBUTE	WiMAX-Flow-Descriptor-v2		83	tlv

ATTRIBUTE	WiMAX-Packet-Flow-Descriptor-v2		84	tlv
BEGIN-TLV	WiMAX-Packet-Flow-Descriptor-v2
ATTRIBUTE	WiMAX-PFDv2-Packet-Data-Flow-Id		1	short
ATTRIBUTE	WiMAX-PFDv2-Service-Data-Flow-Id	2	short
ATTRIBUTE	WiMAX-PFDv2-Service-Profile-Id		3	integer
ATTRIBUTE	WiMAX-PFDv2-Direction			4	byte
ATTRIBUTE	WiMAX-PFDv2-Activation-Trigger		5	byte
ATTRIBUTE	WiMAX-PFDv2-Transport-Type		6	byte
ATTRIBUTE	WiMAX-PFDv2-Uplink-QoS-Id		7	byte
ATTRIBUTE	WiMAX-PFDv2-Downlink-QoS-Id		8	byte

#
#  Classifiers
#
ATTRIBUTE	WiMAX-PFDv2-Classifier			9	tlv

BEGIN-TLV	WiMAX-PFDv2-Classifier
	ATTRIBUTE	WiMAX-PFDv2-Classifier-Id		1	byte
	ATTRIBUTE	WiMAX-PFDv2-Classifier-Priority		2	byte
	ATTRIBUTE	WiMAX-PFDv2-Classifier-Protocol		3	byte
	ATTRIBUTE	WiMAX-PFDv2-Classifier-Direction	4	byte

	ATTRIBUTE	WiMAX-PFDv2-Classifier-Source-Spec	5	tlv
	BEGIN-TLV	WiMAX-PFDv2-Classifier-Source-Spec
		ATTRIBUTE	WiMAX-PFDv2-Src-IP-Address		1	combo-ip
		ATTRIBUTE	WiMAX-PFDv2-Src-IP-Address-Range	2	octets # 2 of ipv4addr OR ipv6addr
		ATTRIBUTE	WiMAX-PFDv2-Src-IP-Address-Mask		3	combo-ip
		ATTRIBUTE	WiMAX-PFDv2-Src-Port			4	short
		ATTRIBUTE	WiMAX-PFDv2-Src-Port-Range		5	integer # really 2 short
		ATTRIBUTE	WiMAX-PFDv2-Src-Inverted		6	byte
		ATTRIBUTE	WiMAX-PFDv2-Src-Assigned		7	byte

		VALUE	WiMAX-PFDv2-Src-Assigned	Src-Assigned		1
		VALUE	WiMAX-PFDv2-Src-Assigned	Dst-Assigned		2
		VALUE	WiMAX-PFDv2-Src-Assigned	Src-Dst-Assigned	3

		ATTRIBUTE	WiMAX-PFDv2-Src-MAC-Address		8	ether
		ATTRIBUTE	WiMAX-PFDv2-Src-MAC-Mask		9	ether
	END-TLV	WiMAX-PFDv2-Classifier-Source-Spec

	ATTRIBUTE	WiMAX-PFDv2-Classifier-Dest-Spec	6	tlv
	ATTRIBUTE	WiMAX-PFDv2-Classifier-IP-ToS-DSCP	7	byte
	ATTRIBUTE	WiMAX-PFDv2-Classifier-Action		8	byte

	ATTRIBUTE	WiMAX-PFDv2-Classifier-Eth-Option	9	tlv

	BEGIN-TLV	WiMAX-PFDv2-Classifier-Eth-Option
		ATTRIBUTE	WiMAX-PFDv2-Eth-Proto-Type		1	tlv
		BEGIN-TLV	WiMAX-PFDv2-Eth-Proto-Type
			ATTRIBUTE	WiMAX-PFDv2-Eth-Proto-Type-Ethertype	1	short
			ATTRIBUTE	WiMAX-PFDv2-Eth-Proto-Type-DSAP		2	byte
		END-TLV	WiMAX-PFDv2-Eth-Proto-Type

		ATTRIBUTE	WiMAX-PFDv2-Eth-VLAN-Id			2	tlv
		BEGIN-TLV	WiMAX-PFDv2-Eth-VLAN-Id
			ATTRIBUTE	WiMAX-PFDv2-Eth-VLAN-Id-S-VID		1	integer
			ATTRIBUTE	WiMAX-PFDv2-Eth-VLAN-Id-C-VID		2	integer
		END-TLV	WiMAX-PFDv2-Eth-VLAN-Id


			ATTRIBUTE	WiMAX-PFDv2-Eth-Priority-Range		3	tlv
			BEGIN-TLV	WiMAX-PFDv2-Eth-Priority-Range
				ATTRIBUTE	WiMAX-PFDv2-Eth-Priority-Range-Low	1	byte
				ATTRIBUTE	WiMAX-PFDv2-Eth-Priority-Range-High	2	byte
			END-TLV	WiMAX-PFDv2-Eth-Priority-Range

			ATTRIBUTE	WiMAX-XXX				4	byte
		END-TLV	WiMAX-PFDv2-Classifier-Eth-Option

	ATTRIBUTE	WiMAX-PFDv2-Paging-Preference		10	byte
	ATTRIBUTE	WiMAX-PFDv2-VLAN-Tag-Rule-Id		11	short
END-TLV	WiMAX-PFDv2-Classifier

VALUE	WiMAX-PFDv2-Direction		Uplink			1
VALUE	WiMAX-PFDv2-Direction		Downlink		2
VALUE	WiMAX-PFDv2-Direction		Bi-Directional		3

VALUE	WiMAX-PFDv2-Activation-Trigger	Provisioned		1
VALUE	WiMAX-PFDv2-Activation-Trigger	Admit			2
VALUE	WiMAX-PFDv2-Activation-Trigger	Activate		4
VALUE	WiMAX-PFDv2-Activation-Trigger	Dynamic			8

VALUE	WiMAX-PFDv2-Transport-Type	IPv4-CS			1
VALUE	WiMAX-PFDv2-Transport-Type	IPv6-CS			2
VALUE	WiMAX-PFDv2-Transport-Type	Ethernet		3

END-TLV	WiMAX-Packet-Flow-Descriptor-v2

ATTRIBUTE	WiMAX-VLAN-Tag-Processing-Descriptor	85	tlv
BEGIN-TLV	WiMAX-VLAN-Tag-Processing-Descriptor
ATTRIBUTE	WiMAX-VLAN-Tag-Rule-Id			1	short
ATTRIBUTE	WiMAX-VLAN-Tag-C-VLAN-Priority		2	byte
ATTRIBUTE	WiMAX-VLAN-Tag-VLAN-Id-Assignment	3	short
ATTRIBUTE	WiMAX-VLAN-Tag-C-VLAN-Id		4	short
ATTRIBUTE	WiMAX-VLAN-Tag-S-VLAN-Id		5	short
ATTRIBUTE	WiMAX-VLAN-Tag-C-S-VLAN-Id-Mapping	6	integer
ATTRIBUTE	WiMAX-VLAN-Tag-Local-Config-Info	7	octets
END-TLV	WiMAX-VLAN-Tag-Processing-Descriptor

ATTRIBUTE	WiMAX-hDHCP-Server-Parameters		86	tlv
BEGIN-TLV	WiMAX-hDHCP-Server-Parameters
ATTRIBUTE	WiMAX-hDHCP-DHCPv4-Address		1	ipaddr
ATTRIBUTE	WiMAX-hDHCP-DHCPv6-Address		2	ipv6addr
ATTRIBUTE	WiMAX-hDHCP-DHCP-RK			3	string encrypt=2
ATTRIBUTE	WiMAX-hDHCP-DHCP-RK-Key-Id		4	integer
ATTRIBUTE	WiMAX-hDHCP-DHCP-RK-Lifetime		5	integer
END-TLV	WiMAX-hDHCP-Server-Parameters

ATTRIBUTE	WiMAX-vDHCP-Server-Parameters		87	tlv
BEGIN-TLV	WiMAX-vDHCP-Server-Parameters
ATTRIBUTE	WiMAX-vDHCP-DHCPv4-Address		1	ipaddr
ATTRIBUTE	WiMAX-vDHCP-DHCPv6-Address		2	ipv6addr
ATTRIBUTE	WiMAX-vDHCP-DHCP-RK			3	string encrypt=2
ATTRIBUTE	WiMAX-vDHCP-DHCP-RK-Key-Id		4	integer
ATTRIBUTE	WiMAX-vDHCP-DHCP-RK-Lifetime		5	integer
END-TLV	WiMAX-vDHCP-Server-Parameters

ATTRIBUTE	WiMAX-BS-Location			88	octets
ATTRIBUTE	WiMAX-Visited-IPv4-HoA-PMIP6		89	byte

VALUE	WiMAX-Visited-IPv4-HoA-PMIP6	Fixed			1
VALUE	WiMAX-Visited-IPv4-HoA-PMIP6	Nomadic			2
VALUE	WiMAX-Visited-IPv4-HoA-PMIP6	Mobile			3

ATTRIBUTE	WiMAX-MS-Authenticated			90	byte

VALUE	WiMAX-MS-Authenticated		No			0
VALUE	WiMAX-MS-Authenticated		Yes			1

ATTRIBUTE	WiMAX-PMIP6-Service-Info		126	short

ATTRIBUTE	WiMAX-hLMA-IPv6-PMIP6			127	ipv6addr
ATTRIBUTE	WiMAX-hLMA-IPv4-PMIP6			128	ipaddr
ATTRIBUTE	WiMAX-vLMA-IPv6-PMIP6			129	ipv6addr
ATTRIBUTE	WiMAX-vLMA-IPv4-PMIP6			130	ipaddr
ATTRIBUTE	WiMAX-PMIP6-RK-Key			131	octets encrypt=2
ATTRIBUTE	WiMAX-PMIP6-RK-SPI			132	integer
ATTRIBUTE	WiMAX-Home-HNP-PMIP6			133	ipv6prefix
ATTRIBUTE	WiMAX-Home-Interface-Id-PMIP6		134	ifid
ATTRIBUTE	WiMAX-Home-IPv4-HoA-PMIP6		135	ipaddr
ATTRIBUTE	WiMAX-Visited-HNP-PMIP6			136	ipv6prefix
ATTRIBUTE	WiMAX-Visited-Interface-Id-PMIP6	137	ifid
ATTRIBUTE	WiMAX-Visited-IPv4-HoA-PMIP6-2		138	ipaddr

ATTRIBUTE	WiMAX-AE-Command-Code			143	byte

VALUE	WiMAX-AE-Command-Code	Authentication-Information-Request	1
VALUE	WiMAX-AE-Command-Code	Authentication-Information-Answer	2
VALUE	WiMAX-AE-Command-Code	Update-Location-Request		3
VALUE	WiMAX-AE-Command-Code	Update-Location-Answer		4
VALUE	WiMAX-AE-Command-Code	Cancel-Location-Request		5
VALUE	WiMAX-AE-Command-Code	Cancel-Location-Answer		6
VALUE	WiMAX-AE-Command-Code	Purge-UE-Request		7
VALUE	WiMAX-AE-Command-Code	Purge-UE-Answer			8
VALUE	WiMAX-AE-Command-Code	Insert-Subscriber-Data-Request	9
VALUE	WiMAX-AE-Command-Code	Insert-Subscriber-Data-Answer	10
VALUE	WiMAX-AE-Command-Code	Delete-Subscriber-Data-Request	11
VALUE	WiMAX-AE-Command-Code	Delete-Subscriber-Data-Answer	12
VALUE	WiMAX-AE-Command-Code	Notification-Request		13
VALUE	WiMAX-AE-Command-Code	Notification-Answer		14
VALUE	WiMAX-AE-Command-Code	Accounting			15

ATTRIBUTE	WiMAX-Requested-EUTRAN-Authentication-Info	144	tlv
BEGIN-TLV	WiMAX-Requested-EUTRAN-Authentication-Info
ATTRIBUTE	WiMAX-Number-Of-Requested-Vectors	1	integer
ATTRIBUTE	WiMAX-Immediate-Response-Preferred	2	integer
ATTRIBUTE	WiMAX-Re-synchronization-Info		3	octets
END-TLV	WiMAX-Requested-EUTRAN-Authentication-Info

VALUE	WiMAX-Immediate-Response-Preferred	Yes		0

ATTRIBUTE	WiMAX-Authentication-Info		145	tlv
BEGIN-TLV	WiMAX-Authentication-Info
ATTRIBUTE	WiMAX-E-UTRAN-Vector			1	tlv
BEGIN-TLV	WiMAX-E-UTRAN-Vector
	ATTRIBUTE	WiMAX-E-UTRAN-Vector-Item-Number	1	integer
	ATTRIBUTE	WiMAX-E-UTRAN-Vector-RAND		2	octets
	ATTRIBUTE	WiMAX-E-UTRAN-Vector-XRES		3	octets
	ATTRIBUTE	WiMAX-E-UTRAN-Vector-AUTN		4	octets
	ATTRIBUTE	WiMAX-E-UTRAN-Vector-KASME		5	octets
END-TLV	WiMAX-E-UTRAN-Vector
END-TLV	WiMAX-Authentication-Info

ATTRIBUTE	WiMAX-Visited-PLMN-ID			146	octets

ATTRIBUTE	WiMAX-RAT-Type				150	integer

ATTRIBUTE	WiMAX-Terminal-Information		151	tlv
BEGIN-TLV	WiMAX-Terminal-Information
# These can't both be 2?
ATTRIBUTE	WiMAX-IMEI				2	string
ATTRIBUTE	WiMAX-Software-Version			2	string
END-TLV	WiMAX-Terminal-Information

ATTRIBUTE	WiMAX-Subscription-Data			154	tlv
BEGIN-TLV	WiMAX-Subscription-Data
ATTRIBUTE	WiMAX-UE-AMBR-DL			2	integer
ATTRIBUTE	WiMAX-UE-AMBR-UL			3	integer
END-TLV	WiMAX-Subscription-Data

ATTRIBUTE	WiMAX-Cancellation-Type			155	byte

VALUE	WiMAX-Cancellation-Type	MME_UPDATE_PROCEDURE		0
VALUE	WiMAX-Cancellation-Type	SUBSCRIPTION_WITHDRAWAL		2
VALUE	WiMAX-Cancellation-Type	INITIAL_ATTACH_PROCEDURE	4

ATTRIBUTE	WiMAX-EPS-Location-Information		156	tlv
BEGIN-TLV	WiMAX-EPS-Location-Information
ATTRIBUTE	WiMAX-E-UTRAN-Cell-Global-Identity	1	octets
ATTRIBUTE	WiMAX-Tracking-Area-Identity		2	octets
ATTRIBUTE	WiMAX-Geographical-Information		3	octets
ATTRIBUTE	WiMAX-Geodetic-Information		4	octets
ATTRIBUTE	WiMAX-Current-Location-Retrieved	5	byte
ATTRIBUTE	WiMAX-Age-Of-Location-Information	6	integer

VALUE	WiMAX-Current-Location-Retrieved	Active-Location-Retrieval	0
END-TLV	WiMAX-EPS-Location-Information

ATTRIBUTE	WiMAX-Service-Selection			166	string

END-VENDOR	WiMAX
