radius.c File Reference

hostapd / RADIUS message processing More...

#include "includes.h"
#include "common.h"
#include "radius.h"
#include "md5.h"
#include "crypto.h"
Include dependency graph for radius.c:

Go to the source code of this file.

Data Structures

struct  radius_attr_type
struct  radius_tunnel_attrs

Defines

#define RADIUS_ATTRS   (sizeof(radius_attrs) / sizeof(radius_attrs[0]))

Functions

struct radius_msgradius_msg_new (u8 code, u8 identifier)
int radius_msg_initialize (struct radius_msg *msg, size_t init_len)
void radius_msg_set_hdr (struct radius_msg *msg, u8 code, u8 identifier)
void radius_msg_free (struct radius_msg *msg)
void radius_msg_dump (struct radius_msg *msg)
int radius_msg_finish (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_finish_acct (struct radius_msg *msg, const u8 *secret, size_t secret_len)
struct radius_attr_hdrradius_msg_add_attr (struct radius_msg *msg, u8 type, const u8 *data, size_t data_len)
struct radius_msgradius_msg_parse (const u8 *data, size_t len)
int radius_msg_add_eap (struct radius_msg *msg, const u8 *data, size_t data_len)
u8 * radius_msg_get_eap (struct radius_msg *msg, size_t *eap_len)
int radius_msg_verify_msg_auth (struct radius_msg *msg, const u8 *secret, size_t secret_len, const u8 *req_auth)
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_copy_attr (struct radius_msg *dst, struct radius_msg *src, u8 type)
void radius_msg_make_authenticator (struct radius_msg *msg, const u8 *data, size_t len)
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)
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)
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)
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_get_attr (struct radius_msg *msg, u8 type, u8 *buf, size_t len)
int radius_msg_get_attr_ptr (struct radius_msg *msg, u8 type, u8 **buf, size_t *len, const u8 *start)
int radius_msg_count_attr (struct radius_msg *msg, u8 type, int min_len)
int radius_msg_get_vlanid (struct radius_msg *msg)
 Parse RADIUS attributes for VLAN tunnel information.
void radius_free_class (struct radius_class_data *c)
int radius_copy_class (struct radius_class_data *dst, const struct radius_class_data *src)

Detailed Description

hostapd / RADIUS message processing

Copyright
Copyright (c) 2002-2008, Jouni Malinen <j@w1.fi>

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

Alternatively, this software may be distributed under the terms of BSD license.

See README and COPYING for more details.

Definition in file radius.c.


Function Documentation

int radius_msg_get_vlanid ( struct radius_msg msg  ) 

Parse RADIUS attributes for VLAN tunnel information.

Parameters:
msg RADIUS message
Returns:
VLAN ID for the first tunnel configuration of -1 if none is found

Definition at line 1176 of file radius.c.

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on Sat Nov 21 23:22:08 2009 for hostapd by  doxygen 1.6.1