+20010321
+ - (djm) Fix ttyname breakage for AIX and Tru64. Patch from Steve
+ VanDevender <stevev@darkwing.uoregon.edu>
+ - (djm) Make sure pam_retval is initialised on call to pam_end. Patch
+ from Solar Designer <solar@openwall.com>
+ - (djm) Don't loop forever when changing password via PAM. Patch
+ from Solar Designer <solar@openwall.com>
+ - (djm) Generate config files before build
+
20010320
- (bal) glob.c update to added GLOB_LIMITS (OpenBSD CVS).
- (bal) glob.c update to set gl_pathv to NULL (OpenBSD CVS).
- Wrote replacements for strlcpy and mkdtemp
- Released 1.0pre1
-$Id: ChangeLog,v 1.991.2.2 2001/03/20 04:49:46 tim Exp $
+$Id: ChangeLog,v 1.991.2.3 2001/03/21 02:12:12 djm Exp $
-# $Id: Makefile.in,v 1.161 2001/03/14 00:39:46 djm Exp $
+# $Id: Makefile.in,v 1.161.2.1 2001/03/21 02:12:12 djm Exp $
prefix=@prefix@
exec_prefix=@exec_prefix@
FIXPATHSCMD = $(PERL) $(srcdir)/fixpaths $(PATHSUBS)
-all: $(TARGETS) $(CONFIGFILES)
+all: $(CONFIGFILES) $(TARGETS)
manpages: $(MANPAGES)
Programming:
- Grep for 'XXX' comments and fix
+- Link order is incorrect for some systems using Kerberos 4 and AFS. Result
+is multiple inclusion of DES symbols.
+
- Integrate contrib/mdoc2man.pl so platforms which only have the troff
'an' macros can have readable manpages.
- HP-UX: Provide DEPOT package scripts.
(gilbert.r.loomis@saic.com)
-$Id: TODO,v 1.38 2001/03/19 14:58:47 stevesk Exp $
+$Id: TODO,v 1.38.2.1 2001/03/21 02:12:12 djm Exp $
#include "canohost.h"
#include "readpass.h"
-RCSID("$Id: auth-pam.c,v 1.31 2001/02/28 22:18:58 djm Exp $");
+RCSID("$Id: auth-pam.c,v 1.31.2.1 2001/03/21 02:12:13 djm Exp $");
#define NEW_AUTHTOK_MSG \
"Warning: Your password has expired, please change it now"
/* Called at exit to cleanly shutdown PAM */
void do_pam_cleanup_proc(void *context)
{
- int pam_retval;
+ int pam_retval = PAM_SUCCESS;
if (__pamh && session_opened) {
pam_retval = pam_close_session(__pamh, 0);
if (password_change_required) {
pamstate = OTHER;
- /* XXX: should we really loop forever? */
- do {
- pam_retval = pam_chauthtok(__pamh,
- PAM_CHANGE_EXPIRED_AUTHTOK);
- if (pam_retval != PAM_SUCCESS)
- log("PAM pam_chauthtok failed[%d]: %.200s",
- pam_retval, PAM_STRERROR(__pamh, pam_retval));
- } while (pam_retval != PAM_SUCCESS);
+ pam_retval = pam_chauthtok(__pamh, PAM_CHANGE_EXPIRED_AUTHTOK);
+ if (pam_retval != PAM_SUCCESS)
+ fatal("PAM pam_chauthtok failed[%d]: %.200s",
+ pam_retval, PAM_STRERROR(__pamh, pam_retval));
}
}
switch, so we let login(1) to this for us. */
if (!options.use_login) {
#ifdef HAVE_OSF_SIA
- session_setup_sia(pw->pw_name, ttyname);
+ session_setup_sia(pw->pw_name, s->tty);
#else /* HAVE_OSF_SIA */
#ifdef HAVE_CYGWIN
if (is_winnt) {
* other stuff is stored - a few applications
* actually use this and die if it's not set
*/
- cp = xmalloc(22 + strlen(ttyname) +
+ cp = xmalloc(22 + strlen(s->tty) +
2 * strlen(pw->pw_name));
i = sprintf(cp, "LOGNAME=%s%cNAME=%s%cTTY=%s%c%c",
- pw->pw_name, 0, pw->pw_name, 0, ttyname, 0,0);
+ pw->pw_name, 0, pw->pw_name, 0, s->tty, 0,0);
if (usrinfo(SETUINFO, cp, i) == -1)
fatal("Couldn't set usrinfo: %s",
strerror(errno));