1 /* $OpenBSD: radius.h,v 1.2 2000/10/03 14:31:58 ho Exp $ */ 2 3 /* RADIUS support for tcpdump, Thomas Ptacek <tqbf@enteract.com> */ 4 5 /* ------------------------------------------------------------ */ 6 7 /* RADIUS attribute encoding types */ 8 9 #define RD_INT 1 10 #define RD_DATE 2 11 #define RD_ADDRESS 3 12 #define RD_STRING 4 13 #define RD_HEX 5 14 15 /* ------------------------------------------------------------ */ 16 17 /* RADIUS packet opcodes */ 18 19 #define RADIUS_CODE_ACCESS_REQUEST 1 20 #define RADIUS_CODE_ACCESS_ACCEPT 2 21 #define RADIUS_CODE_ACCESS_REJECT 3 22 #define RADIUS_CODE_ACCOUNT_REQUEST 4 23 #define RADIUS_CODE_ACCOUNT_RESPONSE 5 24 #define RADIUS_CODE_ACCOUNT_STATUS 6 25 #define RADIUS_CODE_PASSCHG_REQUEST 7 26 #define RADIUS_CODE_PASSCHG_ACCEPT 8 27 #define RADIUS_CODE_PASSCHG_REJECT 9 28 #define RADIUS_CODE_ACCOUNT_MESSAGE 10 29 #define RADIUS_CODE_ACCESS_CHALLENGE 11 30 31 /* ------------------------------------------------------------ */ 32 33 /* slew o' attributes */ 34 35 #define RADIUS_ATT_USER_NAME 1 36 #define RADIUS_ATT_PASSWORD 2 37 #define RADIUS_ATT_CHAP_PASS 3 38 #define RADIUS_ATT_NAS_IP 4 39 #define RADIUS_ATT_NAS_PORT 5 40 #define RADIUS_ATT_USER_SERVICE 6 41 #define RADIUS_ATT_PROTOCOL 7 42 #define RADIUS_ATT_FRAMED_ADDRESS 8 43 #define RADIUS_ATT_NETMASK 9 44 #define RADIUS_ATT_ROUTING 10 45 #define RADIUS_ATT_FILTER 11 46 #define RADIUS_ATT_MTU 12 47 #define RADIUS_ATT_COMPRESSION 13 48 #define RADIUS_ATT_LOGIN_HOST 14 49 #define RADIUS_ATT_LOGIN_SERVICE 15 50 #define RADIUS_ATT_LOGIN_TCP_PORT 16 51 #define RADIUS_ATT_OLD_PASSWORD 17 52 #define RADIUS_ATT_PORT_MESSAGE 18 53 #define RADIUS_ATT_DIALBACK_NO 19 54 #define RADIUS_ATT_DIALBACK_NAME 20 55 #define RADIUS_ATT_EXPIRATION 21 56 #define RADIUS_ATT_FRAMED_ROUTE 22 57 #define RADIUS_ATT_FRAMED_IPX 23 58 #define RADIUS_ATT_CHALLENGE_STATE 24 59 #define RADIUS_ATT_CLASS 25 60 #define RADIUS_ATT_VENDOR_SPECIFIC 26 61 #define RADIUS_ATT_SESSION_TIMEOUT 27 62 #define RADIUS_ATT_IDLE_TIMEOUT 28 63 #define RADIUS_ATT_TERMINATE_ACTION 29 64 #define RADIUS_ATT_CALLED_ID 30 65 #define RADIUS_ATT_CALLER_ID 31 66 67 #define RADIUS_ATT_STATUS_TYPE 40 68 69 /* the accounting attributes change way too much 70 * for me to want to hardcode them in. 71 */ 72 73 /* ------------------------------------------------------------ */ 74 75 /* RADIUS packet header */ 76 77 #define RADFIXEDSZ 20 78 79 struct radius_header { 80 u_char code; 81 u_char id; 82 u_short len; 83 u_char auth[16]; 84 }; 85 86 /* ------------------------------------------------------------ */ 87