aboutsummaryrefslogtreecommitdiffstats
path: root/src/libimcv/pa_tnc/pa_tnc_attr_manager.c
diff options
context:
space:
mode:
authorAndreas Steffen <andreas.steffen@strongswan.org>2014-09-26 13:24:33 +0200
committerAndreas Steffen <andreas.steffen@strongswan.org>2014-10-05 12:55:38 +0200
commite77df5a1f6d81f43b7afd387e390c6d96e734607 (patch)
tree1ab7f2a8f670103cb73cfb1d4cf274660b85a5ed /src/libimcv/pa_tnc/pa_tnc_attr_manager.c
parentebfd8278f9f3fff88ee2dfce4f4506dc2b1e11bc (diff)
downloadstrongswan-e77df5a1f6d81f43b7afd387e390c6d96e734607.tar.bz2
strongswan-e77df5a1f6d81f43b7afd387e390c6d96e734607.tar.xz
Added total length parameter in PA-TNC attribute constructor
Diffstat (limited to 'src/libimcv/pa_tnc/pa_tnc_attr_manager.c')
-rw-r--r--src/libimcv/pa_tnc/pa_tnc_attr_manager.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libimcv/pa_tnc/pa_tnc_attr_manager.c b/src/libimcv/pa_tnc/pa_tnc_attr_manager.c
index 7fae9a9dd..71f294d10 100644
--- a/src/libimcv/pa_tnc/pa_tnc_attr_manager.c
+++ b/src/libimcv/pa_tnc/pa_tnc_attr_manager.c
@@ -176,8 +176,9 @@ METHOD(pa_tnc_attr_manager_t, create, pa_tnc_attr_t*,
msg_info, *offset + PA_TNC_ATTR_INFO_SIZE);
return NULL;
}
+ length -= PA_TNC_ATTR_HEADER_SIZE;
- if (!reader->read_data(reader, length - PA_TNC_ATTR_HEADER_SIZE, &value))
+ if (!reader->read_data(reader, length, &value))
{
DBG1(DBG_TNC, "insufficient bytes for PA-TNC attribute value");
*error = ietf_attr_pa_tnc_error_create_with_offset(error_code,
@@ -207,7 +208,7 @@ METHOD(pa_tnc_attr_manager_t, create, pa_tnc_attr_t*,
{
if (entry->attr_create)
{
- attr = entry->attr_create(type, value);
+ attr = entry->attr_create(type, length, value);
}
break;
}