From: David F. Skoll Date: Tue, 2 Apr 2002 14:15:07 +0000 (+0000) Subject: Corrected Linux MPPE kernel modules (Frank Cusack) X-Git-Tag: ppp-2.4.7~421 X-Git-Url: http://git.ozlabs.org/?p=ppp.git;a=commitdiff_plain;h=f79e0204d1134667d049c14f2c2ab38c9cb6a81a;ds=sidebyside Corrected Linux MPPE kernel modules (Frank Cusack) Corrected minor bug in chap.c (Frank Cusack) Allow domain\user in MSCHAPv2 (Frank Cusack) --- diff --git a/pppd/chap.c b/pppd/chap.c index 114ed4d..a9dc78c 100644 --- a/pppd/chap.c +++ b/pppd/chap.c @@ -33,7 +33,7 @@ * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ -#define RCSID "$Id: chap.c,v 1.30 2002/04/02 13:54:59 dfs Exp $" +#define RCSID "$Id: chap.c,v 1.31 2002/04/02 14:15:07 dfs Exp $" /* * TODO: @@ -648,8 +648,9 @@ ChapReceiveResponse(cstate, inp, id, len) ChapMS(cstate, cstate->challenge, secret, secret_len, &md); /* compare MDs and send the appropriate status */ - if (memcmp(&md + response_offset, - remmd + response_offset, response_size) == 0) + if (memcmp((u_char *) &md + response_offset, + (u_char *) remmd + response_offset, + response_size) == 0) code = CHAP_SUCCESS; /* they are the same! */ break; } diff --git a/pppd/chap_ms.c b/pppd/chap_ms.c index 318c0b6..0f627fb 100644 --- a/pppd/chap_ms.c +++ b/pppd/chap_ms.c @@ -40,7 +40,7 @@ * Copyright (c) 2002 Google, Inc. */ -#define RCSID "$Id: chap_ms.c,v 1.19 2002/04/02 13:54:59 dfs Exp $" +#define RCSID "$Id: chap_ms.c,v 1.20 2002/04/02 14:15:07 dfs Exp $" #ifdef CHAPMS @@ -261,11 +261,18 @@ ChallengeHash(u_char PeerChallenge[16], u_char *rchallenge, { SHA1_CTX sha1Context; u_char sha1Hash[SHA1_SIGNATURE_SIZE]; + char *user; + + /* remove domain from "domain\username" */ + if ((user = strrchr(username, '\\')) != NULL) + ++user; + else + user = username; SHA1_Init(&sha1Context); SHA1_Update(&sha1Context, PeerChallenge, 16); SHA1_Update(&sha1Context, rchallenge, 16); - SHA1_Update(&sha1Context, username, strlen(username)); + SHA1_Update(&sha1Context, user, strlen(user)); SHA1_Final(sha1Hash, &sha1Context); BCOPY(sha1Hash, Challenge, 8);