Annotation of embedaddon/strongswan/src/libcharon/plugins/eap_radius/eap_radius.h, revision 1.1.1.1
1.1 misho 1: /*
2: * Copyright (C) 2009 Martin Willi
3: * HSR Hochschule fuer Technik Rapperswil
4: *
5: * This program is free software; you can redistribute it and/or modify it
6: * under the terms of the GNU General Public License as published by the
7: * Free Software Foundation; either version 2 of the License, or (at your
8: * option) any later version. See <http://www.fsf.org/copyleft/gpl.txt>.
9: *
10: * This program is distributed in the hope that it will be useful, but
11: * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
12: * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13: * for more details.
14: */
15:
16: /**
17: * @defgroup eap_radius_i eap_radius
18: * @{ @ingroup eap_radius
19: */
20:
21: #ifndef EAP_RADIUS_H_
22: #define EAP_RADIUS_H_
23:
24: typedef struct eap_radius_t eap_radius_t;
25:
26: #include <sa/eap/eap_method.h>
27: #include <radius_message.h>
28:
29: /**
30: * Implementation of the eap_method_t interface using a RADIUS server.
31: */
32: struct eap_radius_t {
33:
34: /**
35: * Implemented eap_method_t interface.
36: */
37: eap_method_t eap_method;
38: };
39:
40: /**
41: * Create a EAP RADIUS proxy.
42: *
43: * @param server ID of the EAP server
44: * @param peer ID of the EAP client
45: * @return eap_radius_t object
46: */
47: eap_radius_t *eap_radius_create(identification_t *server, identification_t *peer);
48:
49: /**
50: * Process additional attributes from an Access-Accept.
51: *
52: * Parses and applies additional authorization attributes from an Accept
53: * message, such as group membership information or IKE configuration
54: * attributes.
55: *
56: * @param message Access-Accept message to process
57: */
58: void eap_radius_process_attributes(radius_message_t *message);
59:
60: /**
61: * Build additional attributes for an Access-Request.
62: *
63: * Adds additional RADIUS attributes to use with Access-Request, such as
64: * different NAS specific attributes.
65: *
66: * @param message Access-Request message to add attributes to
67: */
68: void eap_radius_build_attributes(radius_message_t *message);
69:
70: #endif /** EAP_RADIUS_H_ @}*/
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>