Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Jan 1997 09:32:27 -0800 (PST)
From:      Leonard Chua <lenc@earth.infinetconsulting.com>
To:        freebsd-hackers@freebsd.org
Subject:   pppd and the login option
Message-ID:  <Pine.BSF.3.91.970110093202.27653A-100000@earth.infinetconsulting.com>

next in thread | raw e-mail | index | archive | help
Hi. I've been working on setting up a ppp dialup server. I've gotten it to 
work with PAP via pap-secrets, and I'm now experimenting with it doing 
PAP authentication through the system password database (by the 'login' 
option). I've found that pppd keeps dying at login verification. 

On going through the source code, I've managed to pinpoint the problem to 
the crypt() call in login():
    (file auth.c somewhere about line 500:)

    epasswd = (char *) crypt(passwd, pw->pw_passwd); 
    if (strcmp(epasswd, pw->pw_passwd)) {
    syslog(LOG_WARNING,"FAILED crypt validation.");
	return (UPAP_AUTHNAK);
    }

It core dumps with a segmentation fault at the crypt() call. 
To make sure that crypt() is not at fault, I made a similar copy of the 
login function in a separate test file, and it works there. 
I can put up the test file if anyone likes to take a look.

Anyone have any ideas? The mailing lists show quite a few people with 
problems with the login option. Maybe this is the reason. 

Thanks.
Len.

PS> why do I want to use the system database? Simple - I don't like 
having a unencrypted password file anywhere (even if it's supposedly 
group and world unreadable).





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.91.970110093202.27653A-100000>