Commit Graph

13 Commits

Author SHA1 Message Date
Dag-Erling Smørgrav
b584000fa2 Remove bogus calls to xfree(). 2003-09-24 19:11:52 +00:00
Dag-Erling Smørgrav
8cc2c63b43 resp is a pointer to an array of structs, not an array of pointers to structs. 2003-09-24 18:26:29 +00:00
Dag-Erling Smørgrav
7a94787140 - when using a child process instead of a thread, change the child's
name to reflect its role
- try to handle expired passwords a little better

MFC after:	1 week
2003-03-31 13:48:18 +00:00
Dag-Erling Smørgrav
b7f9a9adc7 Paranoia: instead of a NULL conversation function, use one that always
returns PAM_CONV_ERR; moreover, make sure we always have the right
conversation function installed before calling PAM service functions.
Also unwrap some not-so-long lines.

MFC after:	3 days
2003-02-16 11:03:55 +00:00
Dag-Erling Smørgrav
2adf4e49c2 Linux-PAM's pam_start(3) fails with a bogus error message if passed the
pam_conv argument is NULL.  OpenPAM doesn't care, but to make things
easier for people porting this code to other systems (or -STABLE), use
a dummy struct pam_conv instead of NULL.

Pointed out by:	Damien Miller <djm@mindrot.org>
2003-02-03 14:10:28 +00:00
Dag-Erling Smørgrav
d46e273b14 The previous commit contained a stupid mistake: ctxt->pam_[cp]sock was
initialized after the call to pthread_create() instead of before.  It just
happened to work with threads enabled because ctxt is shared, but of
course it doesn't work when we use a child process instead of threads.
2002-12-21 15:09:58 +00:00
Dag-Erling Smørgrav
d953f52834 If possible, use pthreads instead of a child process for PAM.
Reimplement the necessary bits from auth_pam.c and auth2_pam.c so that
they share the PAM context used by the keyboard-interactive thread.  If
a child process is used instead, they will (necessarily) use a separate
context.

Constify do_pam_account() and do_pam_session().

Sponsored by:	DARPA, NAI Labs
2002-12-14 13:52:39 +00:00
Dag-Erling Smørgrav
7e4224fafd Switch to two-clause license, with NAI's permission. 2002-11-02 19:55:23 +00:00
Dag-Erling Smørgrav
f388f5ef26 Resolve conflicts. 2002-10-29 10:16:02 +00:00
Dag-Erling Smørgrav
c6b7459669 Whitespace nit. 2002-07-23 17:57:17 +00:00
Dag-Erling Smørgrav
f335483476 In pam_init_ctx(), register a cleanup function that will kill the child
process if a fatal error occurs.  Deregister it in pam_free_ctx().
2002-07-17 17:44:02 +00:00
Dag-Erling Smørgrav
d2030524ec Rewrite to use the buffer API instead of roll-your-own messaging.
Suggested by:	Markus Friedl <markus@openbsd.org>
Sponsored by:	DARPA, NAI Labs
2002-07-05 15:27:26 +00:00
Dag-Erling Smørgrav
382d19ee61 PAM support, the FreeBSD way.
Sponsored by:	DARPA, NAI Labs
2002-06-29 10:56:23 +00:00