Classes | Defines | Enumerations | Functions | Variables
radius.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  radius_attr_data
struct  radius_attr_hdr
struct  radius_attr_vendor
struct  radius_class_data
struct  radius_hdr
struct  radius_ms_mppe_keys

Defines

#define RADIUS_802_1X_ADDR_FORMAT   "%02X-%02X-%02X-%02X-%02X-%02X"
#define RADIUS_ACCT_AUTHENTIC_LOCAL   2
#define RADIUS_ACCT_AUTHENTIC_RADIUS   1
#define RADIUS_ACCT_AUTHENTIC_REMOTE   3
#define RADIUS_ACCT_STATUS_TYPE_ACCOUNTING_OFF   8
#define RADIUS_ACCT_STATUS_TYPE_ACCOUNTING_ON   7
#define RADIUS_ACCT_STATUS_TYPE_INTERIM_UPDATE   3
#define RADIUS_ACCT_STATUS_TYPE_START   1
#define RADIUS_ACCT_STATUS_TYPE_STOP   2
#define RADIUS_ACCT_TERMINATE_CAUSE_ADMIN_REBOOT   7
#define RADIUS_ACCT_TERMINATE_CAUSE_ADMIN_RESET   6
#define RADIUS_ACCT_TERMINATE_CAUSE_CALLBACK   16
#define RADIUS_ACCT_TERMINATE_CAUSE_HOST_REQUEST   18
#define RADIUS_ACCT_TERMINATE_CAUSE_IDLE_TIMEOUT   4
#define RADIUS_ACCT_TERMINATE_CAUSE_LOST_CARRIER   2
#define RADIUS_ACCT_TERMINATE_CAUSE_LOST_SERVICE   3
#define RADIUS_ACCT_TERMINATE_CAUSE_NAS_ERROR   9
#define RADIUS_ACCT_TERMINATE_CAUSE_NAS_REBOOT   11
#define RADIUS_ACCT_TERMINATE_CAUSE_NAS_REQUEST   10
#define RADIUS_ACCT_TERMINATE_CAUSE_PORT_ERROR   8
#define RADIUS_ACCT_TERMINATE_CAUSE_PORT_PREEMPTED   13
#define RADIUS_ACCT_TERMINATE_CAUSE_PORT_SUSPENDED   14
#define RADIUS_ACCT_TERMINATE_CAUSE_PORT_UNNEEDED   12
#define RADIUS_ACCT_TERMINATE_CAUSE_SERVICE_UNAVAILABLE   15
#define RADIUS_ACCT_TERMINATE_CAUSE_SESSION_TIMEOUT   5
#define RADIUS_ACCT_TERMINATE_CAUSE_USER_ERROR   17
#define RADIUS_ACCT_TERMINATE_CAUSE_USER_REQUEST   1
#define RADIUS_ADDR_FORMAT   "%02x%02x%02x%02x%02x%02x"
#define RADIUS_CISCO_AV_PAIR   1
#define RADIUS_DEFAULT_ATTR_COUNT   16
#define RADIUS_DEFAULT_MSG_SIZE   1024
#define RADIUS_MAX_ATTR_LEN   (255 - sizeof(struct radius_attr_hdr))
#define RADIUS_NAS_PORT_TYPE_IEEE_802_11   19
#define RADIUS_TERMINATION_ACTION_DEFAULT   0
#define RADIUS_TERMINATION_ACTION_RADIUS_REQUEST   1
#define RADIUS_TUNNEL_MEDIUM_TYPE_802   6
#define RADIUS_TUNNEL_MEDIUM_TYPE_IPV4   1
#define RADIUS_TUNNEL_MEDIUM_TYPE_IPV6   2
#define RADIUS_TUNNEL_TAGS   32
#define RADIUS_TUNNEL_TYPE_GRE   10
#define RADIUS_TUNNEL_TYPE_IPIP   7
#define RADIUS_TUNNEL_TYPE_L2TP   3
#define RADIUS_TUNNEL_TYPE_PPTP   1
#define RADIUS_TUNNEL_TYPE_VLAN   13
#define RADIUS_VENDOR_ID_CISCO   9
#define RADIUS_VENDOR_ID_MICROSOFT   311

Enumerations

enum  {
  RADIUS_CODE_ACCESS_REQUEST = 1, RADIUS_CODE_ACCESS_ACCEPT = 2, RADIUS_CODE_ACCESS_REJECT = 3, RADIUS_CODE_ACCOUNTING_REQUEST = 4,
  RADIUS_CODE_ACCOUNTING_RESPONSE = 5, RADIUS_CODE_ACCESS_CHALLENGE = 11, RADIUS_CODE_STATUS_SERVER = 12, RADIUS_CODE_STATUS_CLIENT = 13,
  RADIUS_CODE_RESERVED = 255
}
enum  {
  RADIUS_ATTR_USER_NAME = 1, RADIUS_ATTR_USER_PASSWORD = 2, RADIUS_ATTR_NAS_IP_ADDRESS = 4, RADIUS_ATTR_NAS_PORT = 5,
  RADIUS_ATTR_FRAMED_MTU = 12, RADIUS_ATTR_REPLY_MESSAGE = 18, RADIUS_ATTR_STATE = 24, RADIUS_ATTR_CLASS = 25,
  RADIUS_ATTR_VENDOR_SPECIFIC = 26, RADIUS_ATTR_SESSION_TIMEOUT = 27, RADIUS_ATTR_IDLE_TIMEOUT = 28, RADIUS_ATTR_TERMINATION_ACTION = 29,
  RADIUS_ATTR_CALLED_STATION_ID = 30, RADIUS_ATTR_CALLING_STATION_ID = 31, RADIUS_ATTR_NAS_IDENTIFIER = 32, RADIUS_ATTR_PROXY_STATE = 33,
  RADIUS_ATTR_ACCT_STATUS_TYPE = 40, RADIUS_ATTR_ACCT_DELAY_TIME = 41, RADIUS_ATTR_ACCT_INPUT_OCTETS = 42, RADIUS_ATTR_ACCT_OUTPUT_OCTETS = 43,
  RADIUS_ATTR_ACCT_SESSION_ID = 44, RADIUS_ATTR_ACCT_AUTHENTIC = 45, RADIUS_ATTR_ACCT_SESSION_TIME = 46, RADIUS_ATTR_ACCT_INPUT_PACKETS = 47,
  RADIUS_ATTR_ACCT_OUTPUT_PACKETS = 48, RADIUS_ATTR_ACCT_TERMINATE_CAUSE = 49, RADIUS_ATTR_ACCT_MULTI_SESSION_ID = 50, RADIUS_ATTR_ACCT_LINK_COUNT = 51,
  RADIUS_ATTR_ACCT_INPUT_GIGAWORDS = 52, RADIUS_ATTR_ACCT_OUTPUT_GIGAWORDS = 53, RADIUS_ATTR_EVENT_TIMESTAMP = 55, RADIUS_ATTR_NAS_PORT_TYPE = 61,
  RADIUS_ATTR_TUNNEL_TYPE = 64, RADIUS_ATTR_TUNNEL_MEDIUM_TYPE = 65, RADIUS_ATTR_CONNECT_INFO = 77, RADIUS_ATTR_EAP_MESSAGE = 79,
  RADIUS_ATTR_MESSAGE_AUTHENTICATOR = 80, RADIUS_ATTR_TUNNEL_PRIVATE_GROUP_ID = 81, RADIUS_ATTR_ACCT_INTERIM_INTERVAL = 85, RADIUS_ATTR_CHARGEABLE_USER_IDENTITY = 89,
  RADIUS_ATTR_NAS_IPV6_ADDRESS = 95
}
enum  { RADIUS_VENDOR_ATTR_MS_MPPE_SEND_KEY = 16, RADIUS_VENDOR_ATTR_MS_MPPE_RECV_KEY = 17 }

Functions

int radius_copy_class (struct radius_class_data *dst, const struct radius_class_data *src)
void radius_free_class (struct radius_class_data *c)
struct radius_attr_hdrradius_msg_add_attr (struct radius_msg *msg, u8 type, const u8 *data, size_t data_len)
static int radius_msg_add_attr_int32 (struct radius_msg *msg, u8 type, u32 value)
struct radius_attr_hdrradius_msg_add_attr_user_password (struct radius_msg *msg, const u8 *data, size_t data_len, const u8 *secret, size_t secret_len)
int radius_msg_add_eap (struct radius_msg *msg, const u8 *data, size_t data_len)
int radius_msg_add_mppe_keys (struct radius_msg *msg, const u8 *req_authenticator, const u8 *secret, size_t secret_len, const u8 *send_key, size_t send_key_len, const u8 *recv_key, size_t recv_key_len)
int radius_msg_copy_attr (struct radius_msg *dst, struct radius_msg *src, u8 type)
int radius_msg_count_attr (struct radius_msg *msg, u8 type, int min_len)
void radius_msg_dump (struct radius_msg *msg)
int radius_msg_finish (struct radius_msg *msg, const u8 *secret, size_t secret_len)
void radius_msg_finish_acct (struct radius_msg *msg, const u8 *secret, size_t secret_len)
int radius_msg_finish_srv (struct radius_msg *msg, const u8 *secret, size_t secret_len, const u8 *req_authenticator)
void radius_msg_free (struct radius_msg *msg)
int radius_msg_get_attr (struct radius_msg *msg, u8 type, u8 *buf, size_t len)
static int radius_msg_get_attr_int32 (struct radius_msg *msg, u8 type, u32 *value)
int radius_msg_get_attr_ptr (struct radius_msg *msg, u8 type, u8 **buf, size_t *len, const u8 *start)
struct wpabufradius_msg_get_buf (struct radius_msg *msg)
struct radius_ms_mppe_keysradius_msg_get_cisco_keys (struct radius_msg *msg, struct radius_msg *sent_msg, const u8 *secret, size_t secret_len)
u8 * radius_msg_get_eap (struct radius_msg *msg, size_t *len)
struct radius_hdrradius_msg_get_hdr (struct radius_msg *msg)
struct radius_ms_mppe_keysradius_msg_get_ms_keys (struct radius_msg *msg, struct radius_msg *sent_msg, const u8 *secret, size_t secret_len)
int radius_msg_get_vlanid (struct radius_msg *msg)
void radius_msg_make_authenticator (struct radius_msg *msg, const u8 *data, size_t len)
struct radius_msgradius_msg_new (u8 code, u8 identifier)
struct radius_msgradius_msg_parse (const u8 *data, size_t len)
int radius_msg_verify (struct radius_msg *msg, const u8 *secret, size_t secret_len, struct radius_msg *sent_msg, int auth)
int radius_msg_verify_msg_auth (struct radius_msg *msg, const u8 *secret, size_t secret_len, const u8 *req_auth)

Variables

struct radius_hdr STRUCT_PACKED

Define Documentation

#define RADIUS_802_1X_ADDR_FORMAT   "%02X-%02X-%02X-%02X-%02X-%02X"

Definition at line 187 of file radius.h.

Definition at line 111 of file radius.h.

Definition at line 110 of file radius.h.

Definition at line 112 of file radius.h.

Definition at line 107 of file radius.h.

Definition at line 106 of file radius.h.

Definition at line 105 of file radius.h.

Definition at line 103 of file radius.h.

Definition at line 104 of file radius.h.

Definition at line 121 of file radius.h.

Definition at line 120 of file radius.h.

Definition at line 130 of file radius.h.

Definition at line 132 of file radius.h.

Definition at line 118 of file radius.h.

Definition at line 116 of file radius.h.

Definition at line 117 of file radius.h.

Definition at line 123 of file radius.h.

Definition at line 125 of file radius.h.

Definition at line 124 of file radius.h.

Definition at line 122 of file radius.h.

Definition at line 127 of file radius.h.

Definition at line 128 of file radius.h.

Definition at line 126 of file radius.h.

Definition at line 129 of file radius.h.

Definition at line 119 of file radius.h.

Definition at line 131 of file radius.h.

Definition at line 115 of file radius.h.

#define RADIUS_ADDR_FORMAT   "%02x%02x%02x%02x%02x%02x"

Definition at line 189 of file radius.h.

#define RADIUS_CISCO_AV_PAIR   1

Definition at line 155 of file radius.h.

#define RADIUS_DEFAULT_ATTR_COUNT   16

Definition at line 182 of file radius.h.

#define RADIUS_DEFAULT_MSG_SIZE   1024

Definition at line 179 of file radius.h.

#define RADIUS_MAX_ATTR_LEN   (255 - sizeof(struct radius_attr_hdr))

Definition at line 49 of file radius.h.

Definition at line 100 of file radius.h.

Definition at line 96 of file radius.h.

Definition at line 97 of file radius.h.

Definition at line 146 of file radius.h.

Definition at line 144 of file radius.h.

Definition at line 145 of file radius.h.

#define RADIUS_TUNNEL_TAGS   32

Definition at line 134 of file radius.h.

#define RADIUS_TUNNEL_TYPE_GRE   10

Definition at line 140 of file radius.h.

#define RADIUS_TUNNEL_TYPE_IPIP   7

Definition at line 139 of file radius.h.

#define RADIUS_TUNNEL_TYPE_L2TP   3

Definition at line 138 of file radius.h.

#define RADIUS_TUNNEL_TYPE_PPTP   1

Definition at line 137 of file radius.h.

#define RADIUS_TUNNEL_TYPE_VLAN   13

Definition at line 141 of file radius.h.

#define RADIUS_VENDOR_ID_CISCO   9

Definition at line 154 of file radius.h.

#define RADIUS_VENDOR_ID_MICROSOFT   311

Definition at line 158 of file radius.h.


Enumeration Type Documentation

anonymous enum
Enumerator:
RADIUS_CODE_ACCESS_REQUEST 
RADIUS_CODE_ACCESS_ACCEPT 
RADIUS_CODE_ACCESS_REJECT 
RADIUS_CODE_ACCOUNTING_REQUEST 
RADIUS_CODE_ACCOUNTING_RESPONSE 
RADIUS_CODE_ACCESS_CHALLENGE 
RADIUS_CODE_STATUS_SERVER 
RADIUS_CODE_STATUS_CLIENT 
RADIUS_CODE_RESERVED 

Definition at line 32 of file radius.h.

anonymous enum
Enumerator:
RADIUS_ATTR_USER_NAME 
RADIUS_ATTR_USER_PASSWORD 
RADIUS_ATTR_NAS_IP_ADDRESS 
RADIUS_ATTR_NAS_PORT 
RADIUS_ATTR_FRAMED_MTU 
RADIUS_ATTR_REPLY_MESSAGE 
RADIUS_ATTR_STATE 
RADIUS_ATTR_CLASS 
RADIUS_ATTR_VENDOR_SPECIFIC 
RADIUS_ATTR_SESSION_TIMEOUT 
RADIUS_ATTR_IDLE_TIMEOUT 
RADIUS_ATTR_TERMINATION_ACTION 
RADIUS_ATTR_CALLED_STATION_ID 
RADIUS_ATTR_CALLING_STATION_ID 
RADIUS_ATTR_NAS_IDENTIFIER 
RADIUS_ATTR_PROXY_STATE 
RADIUS_ATTR_ACCT_STATUS_TYPE 
RADIUS_ATTR_ACCT_DELAY_TIME 
RADIUS_ATTR_ACCT_INPUT_OCTETS 
RADIUS_ATTR_ACCT_OUTPUT_OCTETS 
RADIUS_ATTR_ACCT_SESSION_ID 
RADIUS_ATTR_ACCT_AUTHENTIC 
RADIUS_ATTR_ACCT_SESSION_TIME 
RADIUS_ATTR_ACCT_INPUT_PACKETS 
RADIUS_ATTR_ACCT_OUTPUT_PACKETS 
RADIUS_ATTR_ACCT_TERMINATE_CAUSE 
RADIUS_ATTR_ACCT_MULTI_SESSION_ID 
RADIUS_ATTR_ACCT_LINK_COUNT 
RADIUS_ATTR_ACCT_INPUT_GIGAWORDS 
RADIUS_ATTR_ACCT_OUTPUT_GIGAWORDS 
RADIUS_ATTR_EVENT_TIMESTAMP 
RADIUS_ATTR_NAS_PORT_TYPE 
RADIUS_ATTR_TUNNEL_TYPE 
RADIUS_ATTR_TUNNEL_MEDIUM_TYPE 
RADIUS_ATTR_CONNECT_INFO 
RADIUS_ATTR_EAP_MESSAGE 
RADIUS_ATTR_MESSAGE_AUTHENTICATOR 
RADIUS_ATTR_TUNNEL_PRIVATE_GROUP_ID 
RADIUS_ATTR_ACCT_INTERIM_INTERVAL 
RADIUS_ATTR_CHARGEABLE_USER_IDENTITY 
RADIUS_ATTR_NAS_IPV6_ADDRESS 

Definition at line 51 of file radius.h.

anonymous enum
Enumerator:
RADIUS_VENDOR_ATTR_MS_MPPE_SEND_KEY 
RADIUS_VENDOR_ATTR_MS_MPPE_RECV_KEY 

Definition at line 160 of file radius.h.


Function Documentation

int radius_copy_class ( struct radius_class_data dst,
const struct radius_class_data src 
)
void radius_free_class ( struct radius_class_data c)
struct radius_attr_hdr* radius_msg_add_attr ( struct radius_msg msg,
u8  type,
const u8 *  data,
size_t  data_len 
) [read]
static int radius_msg_add_attr_int32 ( struct radius_msg msg,
u8  type,
u32  value 
) [inline, static]

Definition at line 235 of file radius.h.

struct radius_attr_hdr* radius_msg_add_attr_user_password ( struct radius_msg msg,
const u8 *  data,
size_t  data_len,
const u8 *  secret,
size_t  secret_len 
) [read]
int radius_msg_add_eap ( struct radius_msg msg,
const u8 *  data,
size_t  data_len 
)
int radius_msg_add_mppe_keys ( struct radius_msg msg,
const u8 *  req_authenticator,
const u8 *  secret,
size_t  secret_len,
const u8 *  send_key,
size_t  send_key_len,
const u8 *  recv_key,
size_t  recv_key_len 
)
int radius_msg_copy_attr ( struct radius_msg dst,
struct radius_msg src,
u8  type 
)
int radius_msg_count_attr ( struct radius_msg msg,
u8  type,
int  min_len 
)
void radius_msg_dump ( struct radius_msg msg)
int radius_msg_finish ( struct radius_msg msg,
const u8 *  secret,
size_t  secret_len 
)
void radius_msg_finish_acct ( struct radius_msg msg,
const u8 *  secret,
size_t  secret_len 
)
int radius_msg_finish_srv ( struct radius_msg msg,
const u8 *  secret,
size_t  secret_len,
const u8 *  req_authenticator 
)
void radius_msg_free ( struct radius_msg msg)
int radius_msg_get_attr ( struct radius_msg msg,
u8  type,
u8 *  buf,
size_t  len 
)
static int radius_msg_get_attr_int32 ( struct radius_msg msg,
u8  type,
u32 *  value 
) [inline, static]

Definition at line 242 of file radius.h.

int radius_msg_get_attr_ptr ( struct radius_msg msg,
u8  type,
u8 **  buf,
size_t *  len,
const u8 *  start 
)
struct wpabuf* radius_msg_get_buf ( struct radius_msg msg) [read]

Definition at line 64 of file radius.c.

struct radius_ms_mppe_keys* radius_msg_get_cisco_keys ( struct radius_msg msg,
struct radius_msg sent_msg,
const u8 *  secret,
size_t  secret_len 
) [read]
u8* radius_msg_get_eap ( struct radius_msg msg,
size_t *  len 
)
struct radius_hdr* radius_msg_get_hdr ( struct radius_msg msg) [read]

Definition at line 58 of file radius.c.

struct radius_ms_mppe_keys* radius_msg_get_ms_keys ( struct radius_msg msg,
struct radius_msg sent_msg,
const u8 *  secret,
size_t  secret_len 
) [read]
int radius_msg_get_vlanid ( struct radius_msg msg)
void radius_msg_make_authenticator ( struct radius_msg msg,
const u8 *  data,
size_t  len 
)
struct radius_msg* radius_msg_new ( u8  code,
u8  identifier 
) [read]
struct radius_msg* radius_msg_parse ( const u8 *  data,
size_t  len 
) [read]
int radius_msg_verify ( struct radius_msg msg,
const u8 *  secret,
size_t  secret_len,
struct radius_msg sent_msg,
int  auth 
)
int radius_msg_verify_msg_auth ( struct radius_msg msg,
const u8 *  secret,
size_t  secret_len,
const u8 *  req_auth 
)

Variable Documentation



wpa_supplicant_node
Author(s): Package maintained by Blaise Gassend
autogenerated on Thu Jan 2 2014 11:25:18