From: Andreas Steffen Date: Fri, 9 Mar 2012 07:48:46 +0000 (+0100) Subject: define MAX_RADIUS_ATTRIBUTE_SIZE X-Git-Tag: 4.6.3~91 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4853efe89180dc66e20ecca13e15ffdab40137fe;p=thirdparty%2Fstrongswan.git define MAX_RADIUS_ATTRIBUTE_SIZE --- diff --git a/src/libcharon/plugins/eap_radius/eap_radius.c b/src/libcharon/plugins/eap_radius/eap_radius.c index 051d46ecf1..556baa2642 100644 --- a/src/libcharon/plugins/eap_radius/eap_radius.c +++ b/src/libcharon/plugins/eap_radius/eap_radius.c @@ -327,11 +327,12 @@ METHOD(eap_method_t, process, status_t, data = in->get_data(in); DBG3(DBG_IKE, "%N payload %B", eap_type_names, this->type, &data); - /* fragment data suitable for RADIUS (not more than 253 bytes) */ - while (data.len > 253) + /* fragment data suitable for RADIUS */ + while (data.len > MAX_RADIUS_ATTRIBUTE_SIZE) { - request->add(request, RAT_EAP_MESSAGE, chunk_create(data.ptr, 253)); - data = chunk_skip(data, 253); + request->add(request, RAT_EAP_MESSAGE, + chunk_create(data.ptr,MAX_RADIUS_ATTRIBUTE_SIZE)); + data = chunk_skip(data, MAX_RADIUS_ATTRIBUTE_SIZE); } request->add(request, RAT_EAP_MESSAGE, data); diff --git a/src/libradius/radius_message.h b/src/libradius/radius_message.h index a03af3362f..55cb484ffe 100644 --- a/src/libradius/radius_message.h +++ b/src/libradius/radius_message.h @@ -28,6 +28,8 @@ #include +#define MAX_RADIUS_ATTRIBUTE_SIZE 253 + typedef struct radius_message_t radius_message_t; typedef enum radius_message_code_t radius_message_code_t; typedef enum radius_attribute_type_t radius_attribute_type_t;