summaryrefslogtreecommitdiff
path: root/src/radius/radius_das.c
diff options
context:
space:
mode:
authorAndrew Shadura <andrewsh@debian.org>2016-10-20 18:23:40 +0200
committerAndrew Shadura <andrewsh@debian.org>2016-10-20 18:23:40 +0200
commit1e2b7568b4f69a9da79de660a1a04ef077479628 (patch)
tree252210229f2c2d4387457403887894a73eff4cf6 /src/radius/radius_das.c
parentaa5e2237f3bbd73853b3ffbb4bf693298c409792 (diff)
Imported Upstream version 2.6
Diffstat (limited to 'src/radius/radius_das.c')
-rw-r--r--src/radius/radius_das.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/radius/radius_das.c b/src/radius/radius_das.c
index b7d991b..8a3d7e0 100644
--- a/src/radius/radius_das.c
+++ b/src/radius/radius_das.c
@@ -23,6 +23,7 @@ struct radius_das_data {
struct hostapd_ip_addr client_addr;
unsigned int time_window;
int require_event_timestamp;
+ int require_message_authenticator;
void *ctx;
enum radius_das_res (*disconnect)(void *ctx,
struct radius_das_attrs *attr);
@@ -234,9 +235,11 @@ static void radius_das_receive(int sock, void *eloop_ctx, void *sock_ctx)
radius_msg_dump(msg);
if (radius_msg_verify_das_req(msg, das->shared_secret,
- das->shared_secret_len)) {
- wpa_printf(MSG_DEBUG, "DAS: Invalid authenticator in packet "
- "from %s:%d - drop", abuf, from_port);
+ das->shared_secret_len,
+ das->require_message_authenticator)) {
+ wpa_printf(MSG_DEBUG,
+ "DAS: Invalid authenticator or Message-Authenticator in packet from %s:%d - drop",
+ abuf, from_port);
goto fail;
}
@@ -362,6 +365,8 @@ radius_das_init(struct radius_das_conf *conf)
das->time_window = conf->time_window;
das->require_event_timestamp = conf->require_event_timestamp;
+ das->require_message_authenticator =
+ conf->require_message_authenticator;
das->ctx = conf->ctx;
das->disconnect = conf->disconnect;