+/*
+ * radius.h Constants of the radius protocol.
+ *
+ * Version: $Id$
+ *
+ */
+
+
+#define PW_TYPE_STRING 0
+#define PW_TYPE_INTEGER 1
+#define PW_TYPE_IPADDR 2
+#define PW_TYPE_DATE 3
+#define PW_TYPE_ABINARY 4
+#define PW_TYPE_OCTETS 5
+#define PW_TYPE_IFID 6
+#define PW_TYPE_IPV6ADDR 7
+#define PW_TYPE_IPV6PREFIX 8
+#define PW_TYPE_BYTE 9
+#define PW_TYPE_SHORT 10
+#define PW_TYPE_ETHERNET 11
+#define PW_TYPE_SIGNED 12
+#define PW_TYPE_COMBO_IP 13
+#define PW_TYPE_TLV 14
+
+#define PW_AUTHENTICATION_REQUEST 1
+#define PW_AUTHENTICATION_ACK 2
+#define PW_AUTHENTICATION_REJECT 3
+#define PW_ACCOUNTING_REQUEST 4
+#define PW_ACCOUNTING_RESPONSE 5
+#define PW_ACCOUNTING_STATUS 6
+#define PW_PASSWORD_REQUEST 7
+#define PW_PASSWORD_ACK 8
+#define PW_PASSWORD_REJECT 9
+#define PW_ACCOUNTING_MESSAGE 10
+#define PW_ACCESS_CHALLENGE 11
+#define PW_STATUS_SERVER 12
+#define PW_STATUS_CLIENT 13
+#define PW_DISCONNECT_REQUEST 40
+#define PW_DISCONNECT_ACK 41
+#define PW_DISCONNECT_NAK 42
+#define PW_COA_REQUEST 43
+#define PW_COA_ACK 44
+#define PW_COA_NAK 45
+
+#define PW_AUTH_UDP_PORT 1812
+#define PW_ACCT_UDP_PORT 1813
+#define PW_POD_UDP_PORT 1700
+#define PW_COA_UDP_PORT 3799
+
+#define PW_USER_NAME 1
+#define PW_USER_PASSWORD 2
+#define PW_PASSWORD 2
+#define PW_CHAP_PASSWORD 3
+#define PW_NAS_IP_ADDRESS 4
+#define PW_NAS_PORT 5
+#define PW_SERVICE_TYPE 6
+#define PW_FRAMED_PROTOCOL 7
+#define PW_FRAMED_IP_ADDRESS 8
+#define PW_FRAMED_IP_NETMASK 9
+#define PW_FRAMED_ROUTING 10
+#define PW_FILTER_ID 11
+#define PW_FRAMED_MTU 12
+#define PW_FRAMED_COMPRESSION 13
+#define PW_LOGIN_IP_HOST 14
+#define PW_LOGIN_SERVICE 15
+#define PW_LOGIN_TCP_PORT 16
+#define PW_OLD_PASSWORD 17
+#define PW_REPLY_MESSAGE 18
+#define PW_CALLBACK_NUMBER 19
+#define PW_CALLBACK_ID 20
+#if 0
+/*
+ * Deprecated, and no longer used.
+ */
+#define PW_EXPIRATION 21
+#endif
+#define PW_FRAMED_ROUTE 22
+#define PW_FRAMED_IPXNET 23
+#define PW_STATE 24
+#define PW_CLASS 25
+#define PW_VENDOR_SPECIFIC 26
+#define PW_SESSION_TIMEOUT 27
+#define PW_IDLE_TIMEOUT 28
+#define PW_CALLED_STATION_ID 30
+#define PW_CALLING_STATION_ID 31
+#define PW_NAS_IDENTIFIER 32
+#define PW_PROXY_STATE 33
+
+#define PW_ACCT_STATUS_TYPE 40
+#define PW_ACCT_DELAY_TIME 41
+#define PW_ACCT_INPUT_OCTETS 42
+#define PW_ACCT_OUTPUT_OCTETS 43
+#define PW_ACCT_SESSION_ID 44
+#define PW_ACCT_AUTHENTIC 45
+#define PW_ACCT_SESSION_TIME 46
+#define PW_ACCT_INPUT_PACKETS 47
+#define PW_ACCT_OUTPUT_PACKETS 48
+#define PW_ACCT_TERMINATE_CAUSE 49
+
+#define PW_EVENT_TIMESTAMP 55
+
+#define PW_CHAP_CHALLENGE 60
+#define PW_NAS_PORT_TYPE 61
+#define PW_PORT_LIMIT 62
+
+#define PW_ARAP_PASSWORD 70
+#define PW_ARAP_FEATURES 71
+#define PW_ARAP_ZONE_ACCESS 72
+#define PW_ARAP_SECURITY 73
+#define PW_ARAP_SECURITY_DATA 74
+#define PW_PASSWORD_RETRY 75
+#define PW_PROMPT 76
+#define PW_CONNECT_INFO 77
+#define PW_CONFIGURATION_TOKEN 78
+#define PW_EAP_MESSAGE 79
+#define PW_MESSAGE_AUTHENTICATOR 80
+
+#define PW_ARAP_CHALLENGE_RESPONSE 84
+#define PW_NAS_PORT_ID_STRING 87
+#define PW_FRAMED_POOL 88
+#define PW_CHARGEABLE_USER_IDENTITY 89
+#define PW_NAS_IPV6_ADDRESS 95
+
+#define PW_EXTENDED_ATTRIBUTE 192
+
+#define PW_DIGEST_RESPONSE 206
+#define PW_DIGEST_ATTRIBUTES 207
+
+#define PW_FALL_THROUGH 500
+#define PW_EXEC_PROGRAM 502
+#define PW_EXEC_PROGRAM_WAIT 503
+
+#define PW_AUTH_TYPE 1000
+#define PW_PREFIX 1003
+#define PW_SUFFIX 1004
+#define PW_GROUP 1005
+#define PW_CRYPT_PASSWORD 1006
+#define PW_CONNECT_RATE 1007
+#define PW_ADD_PREFIX 1008
+#define PW_ADD_SUFFIX 1009
+#define PW_EXPIRATION 1010
+#define PW_AUTZ_TYPE 1011
+#define PW_ACCT_TYPE 1012
+#define PW_SESSION_TYPE 1013
+#define PW_POST_AUTH_TYPE 1014
+#define PW_PRE_PROXY_TYPE 1015
+#define PW_POST_PROXY_TYPE 1016
+#define PW_PRE_ACCT_TYPE 1017
+#define PW_EAP_TYPE 1018
+#define PW_EAP_TLS_REQUIRE_CLIENT_CERT 1019
+#define PW_CLIENT_SHORTNAME 1024
+#define PW_LOAD_BALANCE_KEY 1025
+#define PW_RAW_ATTRIBUTE 1026
+#define PW_TNC_VLAN_ACCESS 1027
+#define PW_TNC_VLAN_ISOLATE 1028
+#define PW_USER_CATEGORY 1029
+#define PW_GROUP_NAME 1030
+#define PW_HUNTGROUP_NAME 1031
+#define PW_SIMULTANEOUS_USE 1034
+#define PW_STRIP_USER_NAME 1035
+#define PW_HINT 1040
+#define PAM_AUTH_ATTR 1041
+#define PW_LOGIN_TIME 1042
+#define PW_STRIPPED_USER_NAME 1043
+#define PW_CURRENT_TIME 1044
+#define PW_REALM 1045
+#define PW_NO_SUCH_ATTRIBUTE 1046
+#define PW_PACKET_TYPE 1047
+#define PW_PROXY_TO_REALM 1048
+#define PW_REPLICATE_TO_REALM 1049
+#define PW_ACCT_SESSION_START_TIME 1050
+#define PW_ACCT_UNIQUE_SESSION_ID 1051
+#define PW_CLIENT_IP_ADDRESS 1052
+#define PW_LDAP_USERDN 1053
+#define PW_NS_MTA_MD5_PASSWORD 1054
+#define PW_SQL_USER_NAME 1055
+#define PW_LM_PASSWORD 1057
+#define PW_NT_PASSWORD 1058
+#define PW_SMB_ACCOUNT_CTRL 1059
+#define PW_SMB_ACCOUNT_CTRL_TEXT 1061
+#define PW_USER_PROFILE 1062
+#define PW_DIGEST_REALM 1063
+#define PW_DIGEST_NONCE 1064
+#define PW_DIGEST_METHOD 1065
+#define PW_DIGEST_URI 1066
+#define PW_DIGEST_QOP 1067
+#define PW_DIGEST_ALGORITHM 1068
+#define PW_DIGEST_BODY_DIGEST 1069
+#define PW_DIGEST_CNONCE 1070
+#define PW_DIGEST_NONCE_COUNT 1071
+#define PW_DIGEST_USER_NAME 1072
+#define PW_POOL_NAME 1073
+#define PW_LDAP_GROUP 1074
+#define PW_MODULE_SUCCESS_MESSAGE 1075
+#define PW_MODULE_FAILURE_MESSAGE 1076
+#if 0 /* no longer used */
+#define PW_X99_FAST 1077
+#endif
+#define PW_REWRITE_RULE 1078
+#define PW_SQL_GROUP 1079
+#define PW_RESPONSE_PACKET_TYPE 1080
+#define PW_DIGEST_HA1 1081
+#define PW_MS_CHAP_USE_NTLM_AUTH 1082
+#define PW_MS_CHAP_USER_NAME 1083
+#define PW_PACKET_SRC_IP_ADDRESS 1084
+#define PW_PACKET_DST_IP_ADDRESS 1085
+#define PW_PACKET_SRC_PORT 1086
+#define PW_PACKET_DST_PORT 1087
+#define PW_PACKET_AUTHENTICATION_VECTOR 1088
+#define PW_TIME_OF_DAY 1089
+#define PW_REQUEST_PROCESSING_STAGE 1090
+#define PW_CACHE_NO_CACHING 1091
+#define PW_CACHE_DELETE_CACHE 1092
+
+#define PW_SHA_PASSWORD 1093
+#define PW_SSHA_PASSWORD 1094
+#define PW_MD5_PASSWORD 1095
+#define PW_SMD5_PASSWORD 1096
+
+#define PW_PACKET_SRC_IPV6_ADDRESS 1097
+#define PW_PACKET_DST_IPV6_ADDRESS 1098
+#define PW_VIRTUAL_SERVER 1099
+#define PW_CLEARTEXT_PASSWORD 1100
+#define PW_PASSWORD_WITH_HEADER 1101
+#define PW_SEND_COA_REQUEST 1107
+#define PW_MODULE_RETURN_CODE 1108
+#define PW_PACKET_ORIGINAL_TIMESTAMP 1109
+#define PW_HOME_SERVER_POOL 1111
+#define PW_RECV_COA_TYPE 1131
+#define PW_SEND_COA_TYPE 1132
+#define PW_MSCHAP_PASSWORD 1133
+#define PW_PACKET_TRANSMIT_COUNTER 1134
+#define PW_CACHED_SESSION_POLICY 1135
+
+/*
+ * Integer Translations
+ */
+
+/* User Types */
+
+#define PW_LOGIN_USER 1
+#define PW_FRAMED_USER 2
+#define PW_CALLBACK_LOGIN_USER 3
+#define PW_CALLBACK_FRAMED_USER 4
+#define PW_OUTBOUND_USER 5
+#define PW_ADMINISTRATIVE_USER 6
+#define PW_NAS_PROMPT_USER 7
+#define PW_AUTHENTICATE_ONLY 8
+#define PW_CALLBACK_NAS_PROMPT 9
+
+/* Framed Protocols */
+
+#define PW_PPP 1
+#define PW_SLIP 2
+
+/* Framed Routing Values */
+
+#define PW_NONE 0
+#define PW_BROADCAST 1
+#define PW_LISTEN 2
+#define PW_BROADCAST_LISTEN 3
+
+/* Framed Compression Types */
+
+#define PW_VAN_JACOBSEN_TCP_IP 1
+
+/* Login Services */
+
+#define PW_TELNET 0
+#define PW_RLOGIN 1
+#define PW_TCP_CLEAR 2
+#define PW_PORTMASTER 3
+
+/* Authentication Level */
+
+#define PW_AUTHTYPE_LOCAL 0
+#define PW_AUTHTYPE_SYSTEM 1
+#define PW_AUTHTYPE_SECURID 2
+#define PW_AUTHTYPE_CRYPT 3
+#define PW_AUTHTYPE_REJECT 4
+#define PW_AUTHTYPE_ACTIVCARD 5
+#define PW_AUTHTYPE_EAP 6
+#define PW_AUTHTYPE_ACCEPT 254
+#define PW_AUTHTYPE_MS_CHAP 1028
+
+/* Port Types */
+
+#define PW_NAS_PORT_ASYNC 0
+#define PW_NAS_PORT_SYNC 1
+#define PW_NAS_PORT_ISDN 2
+#define PW_NAS_PORT_ISDN_V120 3
+#define PW_NAS_PORT_ISDN_V110 4
+
+/* Status Types */
+
+#define PW_STATUS_START 1
+#define PW_STATUS_STOP 2
+#define PW_STATUS_ALIVE 3
+#define PW_STATUS_ACCOUNTING_ON 7
+#define PW_STATUS_ACCOUNTING_OFF 8
+
+/*
+ * Vendor Private Enterprise Codes
+ */
+#define VENDORPEC_FREERADIUS 11344
+
+
+/*
+ * Vendor specific attributes
+ */
+#define PW_FREERADIUS_PROXIED_TO ((VENDORPEC_FREERADIUS<<16)|1)
+
+/*
+ * Microsoft has vendor code 311.
+ */
+#define PW_MSCHAP_RESPONSE ((311 << 16) | 1)
+#define PW_MSCHAP_ERROR ((311 << 16) | 2)
+#define PW_MSCHAP_CHALLENGE ((311 << 16) | 11)
+#define PW_MSCHAP2_RESPONSE ((311 << 16) | 25)
+#define PW_MSCHAP2_SUCCESS ((311 << 16) | 26)
+
+
+/*
+ * Old nonsense. Will be deleted ASAP
+ */
+#define PW_AUTHTYPE 1000
+#define PW_AUTZTYPE 1011
+#define PW_ACCTTYPE 1012
+#define PW_SESSTYPE 1013
+#define PW_POSTAUTHTYPE 1014
+
+/*
+ * Cisco's VLAN Query Protocol.
+ */
+#define PW_VQP_PACKET_TYPE 0x2b00
+#define PW_VQP_ERROR_CODE 0x2b01
+#define PW_VQP_SEQUENCE_NUMBER 0x2b02
+
+#define PW_VQP_CLIENT_IP_ADDRESS 0x2c01
+#define PW_VQP_PORT_NAME 0x2c02
+#define PW_VQP_VLAN_NAME 0x2c03
+#define PW_VQP_DOMAIN_NAME 0x2c04
+#define PW_VQP_ETHERNET_FRAME 0x2c05
+#define PW_VQP_MAC 0x2c06
+#define PW_VQP_UNKNOWN 0x2c07
+#define PW_VQP_COOKIE 0x2c08