X-Git-Url: http://git.ozlabs.org/?a=blobdiff_plain;f=pppd%2Fchap.c;h=2c997cc908f34dfcaf85880b1a975efd7b8b2a10;hb=aefcf5ac90dee434d605167b6a719c58c0ffcf03;hp=e47d52f6ba68c76e610c229210e8f7fd8aaf81ab;hpb=cccb82a2e9bbc20f343bf4ef7550f79566f84758;p=ppp.git diff --git a/pppd/chap.c b/pppd/chap.c index e47d52f..2c997cc 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.35 2002/10/12 01:28:05 fcusack Exp $" +#define RCSID "$Id: chap.c,v 1.37 2002/10/12 20:09:36 fcusack Exp $" /* * TODO: @@ -576,10 +576,8 @@ ChapReceiveResponse(cstate, inp, id, len) UNTIMEOUT(ChapChallengeTimeout, cstate); - if (len >= sizeof(rhostname)) - len = sizeof(rhostname) - 1; - BCOPY(inp, rhostname, len); - rhostname[len] = '\000'; + /* Null terminate and clean remote name. */ + slprintf(rhostname, sizeof(rhostname), "%.*v", len, inp); #ifdef CHAPMS /* copy the flags into cstate for use elsewhere */ @@ -606,7 +604,7 @@ ChapReceiveResponse(cstate, inp, id, len) if (!auth_number()) { /* We do not want to leak info about the chap result. */ code = CHAP_FAILURE; /* XXX exit value will be "wrong" */ - error("calling number %q is not authorized", remote_number); + warn("calling number %q is not authorized", remote_number); } }