aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/plugins/eap_radius/eap_radius.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-02-24 16:41:10 +0100
committerMartin Willi <martin@revosec.ch>2012-03-05 18:06:15 +0100
commit99cb35396883c9eab3a872a3e4ec60cc3a7db884 (patch)
tree3157c39899232734da9d1acaa29e2503a29a4d0d /src/libcharon/plugins/eap_radius/eap_radius.c
parent007d5b92183803f79f336cf48853f7784fac963b (diff)
downloadstrongswan-99cb35396883c9eab3a872a3e4ec60cc3a7db884.tar.bz2
strongswan-99cb35396883c9eab3a872a3e4ec60cc3a7db884.tar.xz
Forward specifcied RADIUS attributes between AAA backend and client
Diffstat (limited to 'src/libcharon/plugins/eap_radius/eap_radius.c')
-rw-r--r--src/libcharon/plugins/eap_radius/eap_radius.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/libcharon/plugins/eap_radius/eap_radius.c b/src/libcharon/plugins/eap_radius/eap_radius.c
index 3d8c823b8..d62bcd7d0 100644
--- a/src/libcharon/plugins/eap_radius/eap_radius.c
+++ b/src/libcharon/plugins/eap_radius/eap_radius.c
@@ -14,6 +14,7 @@
*/
#include "eap_radius.h"
+#include "eap_radius_forward.h"
#include "radius_message.h"
#include "radius_client.h"
@@ -175,10 +176,12 @@ METHOD(eap_method_t, initiate, status_t,
{
add_eap_identity(this, request);
}
+ eap_radius_forward_from_ike(request);
response = this->client->request(this->client, request);
if (response)
{
+ eap_radius_forward_to_ike(response);
if (radius2ike(this, response, out))
{
status = NEED_MORE;
@@ -327,9 +330,11 @@ METHOD(eap_method_t, process, status_t,
}
request->add(request, RAT_EAP_MESSAGE, data);
+ eap_radius_forward_from_ike(request);
response = this->client->request(this->client, request);
if (response)
{
+ eap_radius_forward_to_ike(response);
switch (response->get_code(response))
{
case RMC_ACCESS_CHALLENGE: