diff --git a/Makefile.am b/Makefile.am index bd68d0f0..ef0d9442 100644 --- a/Makefile.am +++ b/Makefile.am @@ -427,7 +427,6 @@ unit_test_wsc_LDADD = $(ell_ldadd) unit_test_eap_mschapv2_SOURCES = src/eap-mschapv2.h src/eap-mschapv2.c \ src/eap.c src/eap.h src/eap-private.h \ src/mschaputil.h src/mschaputil.c \ - src/util.h src/util.c \ unit/test-eap-mschapv2.c unit_test_eap_mschapv2_LDADD = $(ell_ldadd) diff --git a/src/mschaputil.c b/src/mschaputil.c index 05e24f1f..b1ccf630 100644 --- a/src/mschaputil.c +++ b/src/mschaputil.c @@ -28,7 +28,6 @@ #include "src/missing.h" #include "src/mschaputil.h" -#include "src/util.h" /** * Internal function for generate_nt_response. @@ -126,6 +125,20 @@ cleanup: return r; } +static const char *mschapv2_exlude_domain_name(const char *username) +{ + const char *c; + + for (c = username; *c; c++) { + if (*c != '\\') + continue; + + return c + 1; + } + + return username; +} + /** * Internal function to generate the challenge used in nt_response * https://tools.ietf.org/html/rfc2759 @@ -148,7 +161,7 @@ static bool mschapv2_challenge_hash(const uint8_t *peer_challenge, if (!check) return false; - username = util_get_username(username); + username = mschapv2_exlude_domain_name(username); l_checksum_update(check, peer_challenge, 16); l_checksum_update(check, server_challenge, 16);