Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Jan 2003 09:09:51 -0800 (PST)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 23422 for review
Message-ID:  <200301081709.h08H9pQ0063617@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help

http://perforce.freebsd.org/chv.cgi?CH=23422

Change 23422 by peter@peter_daintree on 2003/01/08 09:09:30

	IFC @23421

Affected files ...

.. //depot/projects/ia64/bin/sh/expand.c#8 integrate
.. //depot/projects/ia64/contrib/com_err/getarg.c#3 integrate
.. //depot/projects/ia64/contrib/diff/prepend_args.c#3 integrate
.. //depot/projects/ia64/contrib/groff/tmac/doc-syms#3 integrate
.. //depot/projects/ia64/contrib/lukemftpd/src/ftpd.c#4 integrate
.. //depot/projects/ia64/contrib/openpam/CREDITS#6 integrate
.. //depot/projects/ia64/contrib/openpam/HISTORY#13 integrate
.. //depot/projects/ia64/contrib/openpam/RELNOTES#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam.3#3 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_borrow_cred.3#9 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_free_data.3#9 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_get_option.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_log.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_nullconv.3#4 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_restore_cred.3#9 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_set_option.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/openpam_ttyconv.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_acct_mgmt.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_authenticate.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_chauthtok.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_close_session.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_end.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_error.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_get_authtok.3#14 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_get_data.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_get_item.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_get_user.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_getenv.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_getenvlist.3#14 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_info.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_open_session.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_prompt.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_putenv.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_set_data.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_set_item.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_setcred.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_setenv.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_sm_acct_mgmt.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_sm_authenticate.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_sm_chauthtok.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_sm_close_session.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_sm_open_session.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_sm_setcred.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_start.3#14 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_strerror.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_verror.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_vinfo.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/doc/man/pam_vprompt.3#13 integrate
.. //depot/projects/ia64/contrib/openpam/lib/openpam_impl.h#13 integrate
.. //depot/projects/ia64/contrib/openpam/lib/openpam_ttyconv.c#13 integrate
.. //depot/projects/ia64/contrib/openpam/lib/pam_getenv.c#9 integrate
.. //depot/projects/ia64/contrib/openpam/misc/gendoc.pl#10 integrate
.. //depot/projects/ia64/contrib/tcp_wrappers/inetcf.c#3 integrate
.. //depot/projects/ia64/include/pthread_np.h#5 integrate
.. //depot/projects/ia64/include/ulimit.h#3 integrate
.. //depot/projects/ia64/lib/libc/gen/stringlist.c#4 integrate
.. //depot/projects/ia64/lib/libc/gen/wordexp.c#4 integrate
.. //depot/projects/ia64/lib/libc/include/namespace.h#7 integrate
.. //depot/projects/ia64/lib/libc/include/un-namespace.h#5 integrate
.. //depot/projects/ia64/lib/libc/stdio/stdio.c#3 integrate
.. //depot/projects/ia64/lib/libc/stdio/vswprintf.c#3 integrate
.. //depot/projects/ia64/lib/libc/sys/madvise.2#6 integrate
.. //depot/projects/ia64/lib/libc/sys/pathconf.2#6 integrate
.. //depot/projects/ia64/lib/libc/sys/setuid.2#4 integrate
.. //depot/projects/ia64/lib/libc_r/man/pthread_attr_get_np.3#4 integrate
.. //depot/projects/ia64/lib/libc_r/uthread/uthread_attr_get_np.c#2 integrate
.. //depot/projects/ia64/lib/libugidfw/Makefile#3 integrate
.. //depot/projects/ia64/lib/libugidfw/bsde_get_rule.3#1 branch
.. //depot/projects/ia64/lib/libugidfw/bsde_get_rule_count.3#1 branch
.. //depot/projects/ia64/lib/libugidfw/bsde_parse_rule.3#1 branch
.. //depot/projects/ia64/lib/libugidfw/bsde_rule_to_string.3#1 branch
.. //depot/projects/ia64/lib/libugidfw/libugidfw.3#1 branch
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/early-adopter/article.sgml#7 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/errata/article.sgml#4 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/artheader.sgml#3 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#34 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/hardware/pc98/proc-pc98.sgml#2 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/installation/common/artheader.sgml#3 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/readme/article.sgml#9 integrate
.. //depot/projects/ia64/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#61 integrate
.. //depot/projects/ia64/release/doc/fr_FR.ISO8859-1/early-adopter/article.sgml#2 integrate
.. //depot/projects/ia64/release/doc/fr_FR.ISO8859-1/errata/article.sgml#4 integrate
.. //depot/projects/ia64/release/doc/fr_FR.ISO8859-1/hardware/common/artheader.sgml#2 integrate
.. //depot/projects/ia64/release/doc/fr_FR.ISO8859-1/installation/common/artheader.sgml#2 integrate
.. //depot/projects/ia64/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#5 integrate
.. //depot/projects/ia64/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#13 integrate
.. //depot/projects/ia64/sbin/devd/devd.cc#4 integrate
.. //depot/projects/ia64/sbin/slattach/slattach.c#5 integrate
.. //depot/projects/ia64/share/examples/cvsup/refuse#2 integrate
.. //depot/projects/ia64/share/examples/cvsup/refuse.README#3 integrate
.. //depot/projects/ia64/share/man/man4/Makefile#32 integrate
.. //depot/projects/ia64/share/man/man4/mac_biba.4#8 integrate
.. //depot/projects/ia64/share/man/man4/mac_bsdextended.4#5 integrate
.. //depot/projects/ia64/share/man/man4/mac_ifoff.4#2 integrate
.. //depot/projects/ia64/share/man/man4/mac_lomac.4#1 branch
.. //depot/projects/ia64/share/man/man4/mac_mls.4#6 integrate
.. //depot/projects/ia64/share/man/man4/mac_none.4#3 integrate
.. //depot/projects/ia64/share/man/man4/mac_partition.4#3 integrate
.. //depot/projects/ia64/share/man/man4/mac_seeotheruids.4#3 integrate
.. //depot/projects/ia64/share/man/man4/mac_test.4#3 integrate
.. //depot/projects/ia64/share/man/man4/ng_one2many.4#2 integrate
.. //depot/projects/ia64/share/man/man5/Makefile#10 integrate
.. //depot/projects/ia64/share/man/man5/elf.5#2 integrate
.. //depot/projects/ia64/share/man/man9/mac.9#6 integrate
.. //depot/projects/ia64/sys/cam/scsi/scsi_da.c#27 integrate
.. //depot/projects/ia64/sys/dev/ata/ata-dma.c#19 integrate
.. //depot/projects/ia64/sys/dev/ata/ata-pci.c#19 integrate
.. //depot/projects/ia64/sys/dev/bge/if_bge.c#18 integrate
.. //depot/projects/ia64/sys/dev/bge/if_bgereg.h#11 integrate
.. //depot/projects/ia64/sys/dev/em/LICENSE#1 branch
.. //depot/projects/ia64/sys/dev/firewire/firewire.c#9 integrate
.. //depot/projects/ia64/sys/dev/firewire/firewirereg.h#4 integrate
.. //depot/projects/ia64/sys/dev/firewire/sbp.c#9 integrate
.. //depot/projects/ia64/sys/dev/gem/if_gem.c#10 integrate
.. //depot/projects/ia64/sys/dev/gem/if_gemvar.h#5 integrate
.. //depot/projects/ia64/sys/dev/hme/if_hme.c#8 integrate
.. //depot/projects/ia64/sys/dev/hme/if_hmereg.h#4 integrate
.. //depot/projects/ia64/sys/dev/hme/if_hmevar.h#3 integrate
.. //depot/projects/ia64/sys/dev/mly/mly.c#6 integrate
.. //depot/projects/ia64/sys/dev/sab/sab.c#6 integrate
.. //depot/projects/ia64/sys/dev/sound/isa/mss.c#7 integrate
.. //depot/projects/ia64/sys/dev/ubsec/ubsec.c#7 integrate
.. //depot/projects/ia64/sys/dev/ubsec/ubsecvar.h#3 integrate
.. //depot/projects/ia64/sys/dev/usb/usb_subr.c#8 integrate
.. //depot/projects/ia64/sys/dev/zs/zs.c#3 integrate
.. //depot/projects/ia64/sys/geom/geom_bsd.c#22 integrate
.. //depot/projects/ia64/sys/geom/geom_pc98.c#17 integrate
.. //depot/projects/ia64/sys/i386/i386/identcpu.c#10 integrate
.. //depot/projects/ia64/sys/i386/i386/initcpu.c#7 integrate
.. //depot/projects/ia64/sys/i386/i386/locore.s#7 integrate
.. //depot/projects/ia64/sys/i386/i386/mp_machdep.c#13 integrate
.. //depot/projects/ia64/sys/i386/include/md_var.h#10 integrate
.. //depot/projects/ia64/sys/i386/include/specialreg.h#3 integrate
.. //depot/projects/ia64/sys/kern/init_sysent.c#23 integrate
.. //depot/projects/ia64/sys/kern/kern_exec.c#40 integrate
.. //depot/projects/ia64/sys/kern/kern_module.c#6 integrate
.. //depot/projects/ia64/sys/kern/kern_sig.c#33 integrate
.. //depot/projects/ia64/sys/kern/kern_thread.c#24 integrate
.. //depot/projects/ia64/sys/kern/subr_prf.c#18 integrate
.. //depot/projects/ia64/sys/kern/subr_prof.c#7 integrate
.. //depot/projects/ia64/sys/kern/syscalls.c#24 integrate
.. //depot/projects/ia64/sys/kern/vfs_bio.c#35 integrate
.. //depot/projects/ia64/sys/kern/vfs_vnops.c#24 integrate
.. //depot/projects/ia64/sys/net/if_loop.c#11 integrate
.. //depot/projects/ia64/sys/netinet6/esp_input.c#8 integrate
.. //depot/projects/ia64/sys/netinet6/ip6_fw.c#8 integrate
.. //depot/projects/ia64/sys/netinet6/ip6_input.c#12 integrate
.. //depot/projects/ia64/sys/netinet6/ip6_output.c#11 integrate
.. //depot/projects/ia64/sys/netinet6/ipsec.c#7 integrate
.. //depot/projects/ia64/sys/opencrypto/crypto.c#5 integrate
.. //depot/projects/ia64/sys/pci/if_xl.c#18 integrate
.. //depot/projects/ia64/sys/posix4/p1003_1b.c#5 integrate
.. //depot/projects/ia64/sys/powerpc/include/bus.h#5 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/autoconf.c#6 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/busdma_machdep.c#3 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/clock.c#7 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/copyinout.c#8 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/interrupt.c#3 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/machdep.c#20 integrate
.. //depot/projects/ia64/sys/powerpc/powerpc/vm_machdep.c#14 integrate
.. //depot/projects/ia64/sys/sparc64/include/bus.h#9 integrate
.. //depot/projects/ia64/sys/sparc64/include/bus_private.h#2 integrate
.. //depot/projects/ia64/sys/sparc64/include/iommureg.h#4 integrate
.. //depot/projects/ia64/sys/sparc64/include/iommuvar.h#6 integrate
.. //depot/projects/ia64/sys/sparc64/pci/ofw_pci.c#7 integrate
.. //depot/projects/ia64/sys/sparc64/pci/psycho.c#15 integrate
.. //depot/projects/ia64/sys/sparc64/pci/psychoreg.h#6 integrate
.. //depot/projects/ia64/sys/sparc64/pci/psychovar.h#5 integrate
.. //depot/projects/ia64/sys/sparc64/sbus/sbus.c#6 integrate
.. //depot/projects/ia64/sys/sparc64/sparc64/bus_machdep.c#7 integrate
.. //depot/projects/ia64/sys/sparc64/sparc64/iommu.c#8 integrate
.. //depot/projects/ia64/sys/sys/copyright.h#4 integrate
.. //depot/projects/ia64/sys/sys/syscall.h#23 integrate
.. //depot/projects/ia64/sys/sys/syscall.mk#23 integrate
.. //depot/projects/ia64/sys/sys/sysproto.h#25 integrate
.. //depot/projects/ia64/sys/ufs/ffs/ffs_softdep.c#21 integrate
.. //depot/projects/ia64/sys/ufs/ufs/ufsmount.h#7 integrate
.. //depot/projects/ia64/tools/regression/geom/Test/Makefile.inc#6 integrate
.. //depot/projects/ia64/tools/tools/crypto/Makefile#2 integrate
.. //depot/projects/ia64/tools/tools/crypto/cryptokeytest.c#1 branch
.. //depot/projects/ia64/tools/tools/crypto/cryptostats.c#1 branch
.. //depot/projects/ia64/tools/tools/crypto/cryptotest.c#2 integrate
.. //depot/projects/ia64/usr.sbin/sysinstall/config.c#9 integrate
.. //depot/projects/ia64/usr.sbin/sysinstall/dist.c#13 integrate
.. //depot/projects/ia64/usr.sbin/sysinstall/menus.c#22 integrate
.. //depot/projects/ia64/usr.sbin/sysinstall/misc.c#3 integrate
.. //depot/projects/ia64/usr.sbin/sysinstall/sysinstall.h#14 integrate

Differences ...

==== //depot/projects/ia64/bin/sh/expand.c#8 (text+ko) ====

@@ -40,7 +40,7 @@
 #endif
 #endif /* not lint */
 #include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/sh/expand.c,v 1.40 2002/12/26 14:28:54 tjr Exp $");
+__FBSDID("$FreeBSD: src/bin/sh/expand.c,v 1.41 2003/01/08 10:50:08 tjr Exp $");
 
 #include <sys/types.h>
 #include <sys/time.h>
@@ -278,7 +278,7 @@
 	char c, *startp = p;
 	struct passwd *pw;
 	char *home;
-	int quotes = flag & (EXP_FULL | EXP_CASE);
+	int quotes = flag & (EXP_FULL | EXP_CASE | EXP_REDIR);
 
 	while ((c = *p) != '\0') {
 		switch(c) {
@@ -369,7 +369,7 @@
 	char *p, *start;
 	int result;
 	int begoff;
-	int quotes = flag & (EXP_FULL | EXP_CASE);
+	int quotes = flag & (EXP_FULL | EXP_CASE | EXP_REDIR);
 	int quoted;
 
 
@@ -436,7 +436,7 @@
 	int startloc = dest - stackblock();
 	char const *syntax = quoted? DQSYNTAX : BASESYNTAX;
 	int saveherefd;
-	int quotes = flag & (EXP_FULL | EXP_CASE);
+	int quotes = flag & (EXP_FULL | EXP_CASE | EXP_REDIR);
 
 	INTOFF;
 	saveifs = ifsfirst;
@@ -635,7 +635,7 @@
 	int startloc;
 	int varlen;
 	int easy;
-	int quotes = flag & (EXP_FULL | EXP_CASE);
+	int quotes = flag & (EXP_FULL | EXP_CASE | EXP_REDIR);
 
 	varflags = *p++;
 	subtype = varflags & VSTYPE;

==== //depot/projects/ia64/contrib/com_err/getarg.c#3 (text+ko) ====

@@ -34,6 +34,8 @@
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 
  * SUCH DAMAGE. 
+ *
+ * $FreeBSD: src/contrib/com_err/getarg.c,v 1.2 2003/01/08 17:05:52 peter Exp $
  */
 
 #if 0

==== //depot/projects/ia64/contrib/diff/prepend_args.c#3 (text+ko) ====

@@ -16,7 +16,7 @@
    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
    02111-1307, USA.  */
 
-/* $FreeBSD: src/contrib/diff/prepend_args.c,v 1.1 1999/11/26 02:51:44 obrien Exp $ */
+/* $FreeBSD: src/contrib/diff/prepend_args.c,v 1.2 2003/01/08 06:40:35 peter Exp $ */
 
 
 #ifdef HAVE_CONFIG_H

==== //depot/projects/ia64/contrib/groff/tmac/doc-syms#3 (text+ko) ====

@@ -30,7 +30,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     @(#)doc-syms	8.1 (Berkeley) 06/08/93
-.\" $FreeBSD: src/contrib/groff/tmac/doc-syms,v 1.41 2001/12/24 08:59:48 ru Exp $
+.\" $FreeBSD: src/contrib/groff/tmac/doc-syms,v 1.42 2003/01/07 11:30:53 chris Exp $
 .\"
 .\"     %beginstrip%
 .
@@ -688,6 +688,7 @@
 .ds doc-str-Lb-libposix    \*[Px] Compatibility Library (libposix, \-lposix)
 .ds doc-str-Lb-libresolv   DNS Resolver Library (libresolv, \-lresolv)
 .ds doc-str-Lb-libtermcap  Termcap Access Library (libtermcap, \-ltermcap)
+.ds doc-str-Lb-libugidfw   File System Firewall Interface Library (libugidfw, \-lugidfw)
 .ds doc-str-Lb-libutil     System Utilities Library (libutil, \-lutil)
 .ds doc-str-Lb-libz        Compression Library (libz, \-lz)
 .

==== //depot/projects/ia64/contrib/lukemftpd/src/ftpd.c#4 (text+ko) ====

@@ -112,6 +112,7 @@
 __RCSID("$NetBSD: ftpd.c,v 1.147 2002/11/29 14:40:00 lukem Exp $");
 #endif
 #endif /* not lint */
+__FBSDID("$FreeBSD: src/contrib/lukemftpd/src/ftpd.c,v 1.2 2003/01/07 17:31:23 obrien Exp $");
 
 /*
  * FTP server.
@@ -227,6 +228,21 @@
 	SS_DATA_ERROR			/* data send error */
 };
 
+
+#ifdef USE_OPIE
+#include <opie.h>
+static struct opie opiedata;
+static char opieprompt[OPIE_CHALLENGE_MAX+1];
+static int pwok;
+#endif
+
+#ifdef USE_PAM
+#include <security/pam_appl.h>
+pam_handle_t	*pamh = NULL;
+#include "pamize.h"
+#endif
+
+
 static int	 bind_pasv_addr(void);
 static int	 checkuser(const char *, const char *, int, int, char **);
 static int	 checkaccess(const char *);
@@ -745,6 +761,18 @@
 			    curname);
 		} else
 #endif
+
+#ifdef USE_OPIE
+		if (opiechallenge(&opiedata, (char *)curname, opieprompt) ==
+		    0) {
+			pwok = (pw != NULL) &&
+			    opieaccessfile(remotehost) &&
+			    opiealways(pw->pw_dir);
+			reply(331, "Response to %s %s for %s.",
+			    opieprompt, pwok ? "requested" : "required",
+			    curname);
+		} else
+#endif
 			reply(331, "Password required for %s.", curname);
 	}
 
@@ -987,6 +1015,9 @@
 static void
 end_login(void)
 {
+#ifdef USE_PAM
+	int e;
+#endif
 	logout_utmp();
 	show_chdir_messages(-1);		/* flush chdir cache */
 	if (pw != NULL && pw->pw_passwd != NULL)
@@ -999,11 +1030,23 @@
 	gidcount = 0;
 	curclass.type = CLASS_REAL;
 	(void) seteuid((uid_t)0);
+#ifdef USE_PAM
+	if ((e = pam_setcred(pamh, PAM_DELETE_CRED)) != PAM_SUCCESS)
+		syslog(LOG_ERR, "pam_setcred: %s", pam_strerror(pamh, e));
+	if ((e = pam_close_session(pamh,0)) != PAM_SUCCESS)
+		syslog(LOG_ERR, "pam_close_session: %s", pam_strerror(pamh, e));
+	if ((e = pam_end(pamh, e)) != PAM_SUCCESS)
+		syslog(LOG_ERR, "pam_end: %s", pam_strerror(pamh, e));
+	pamh = NULL;
+#endif
 }
 
 void
 pass(const char *passwd)
 {
+#ifdef USE_PAM
+	int		 e;
+#endif
 	int		 rval;
 	char		 root[MAXPATHLEN];
 
@@ -1044,6 +1087,27 @@
 			}
 		}
 #endif
+
+#ifdef USE_PAM
+		rval = auth_pam(&pw, passwd);
+		if (rval >= 0) {
+#ifdef USE_OPIE
+			opieunlock();
+#endif
+			goto skip;
+ 		}
+#endif
+#ifdef USE_OPIE
+		if (opieverify(&opiedata, (char *)passwd) == 0) {
+			/* OPIE says ok, check expire time */
+			if (pw->pw_expire && time(NULL) >= pw->pw_expire)
+				rval = 2;
+			else
+				rval = 0;
+			goto skip;
+		}
+#endif
+
 		if (!sflag)
 			rval = checkpassword(pw, passwd);
 		else
@@ -1095,6 +1159,19 @@
 			/* cache groups for cmds.c::matchgroup() */
 	gidcount = getgroups(sizeof(gidlist), gidlist);
 
+#ifdef USE_PAM
+       	if (pamh) {
+		if ((e = pam_open_session(pamh, 0)) != PAM_SUCCESS) {
+			syslog(LOG_ERR, "pam_open_session: %s",
+			    pam_strerror(pamh, e));
+		} else if ((e = pam_setcred(pamh, PAM_ESTABLISH_CRED)) !=
+		    PAM_SUCCESS) {
+			syslog(LOG_ERR, "pam_setcred: %s",
+			    pam_strerror(pamh, e));
+		}
+	}
+#endif
+
 	/* open utmp/wtmp before chroot */
 	login_utmp(ttyline, pw->pw_name, remotehost);
 

==== //depot/projects/ia64/contrib/openpam/CREDITS#6 (text) ====

@@ -17,10 +17,12 @@
 	Eric Melville <eric@freebsd.org>
 	Gary Winiger <Gary.Winiger@sun.com>
 	Joe Marcus Clarke <marcus@marcuscom.com>
+	Juli Mallett <jmallett@freebsd.org>
 	Mark Murray <markm@freebsd.org>
+	Mikko Työläjärvi <mbsd@pacbell.net>
 	Robert Watson <rwatson@freebsd.org>
 	Ruslan Ermilov <ru@freebsd.org>
 	Solar Designer <solar@openwall.com>
 	Takanori Saneto <sanewo@ba2.so-net.ne.jp>
 
-$P4: //depot/projects/openpam/CREDITS#4 $
+$P4: //depot/projects/openpam/CREDITS#6 $

==== //depot/projects/ia64/contrib/openpam/HISTORY#13 (text) ====

@@ -1,3 +1,11 @@
+OpenPAM Daffodil						2003-01-06
+
+ - ENHANCE: Document dependency on <sys/types.h> (for size_t)
+
+ - ENHANCE: Slightly improve error detection in openpam_ttyconv().
+
+ - BUGFIX: Fix several typos in debugging macros.
+============================================================================
 OpenPAM Cyclamen						2002-12-12
 
  - ENHANCE: Improve recursion detection in openpam_dispatch().
@@ -198,4 +206,4 @@
 
 First (beta) release.
 ============================================================================
-$P4: //depot/projects/openpam/HISTORY#16 $
+$P4: //depot/projects/openpam/HISTORY#17 $

==== //depot/projects/ia64/contrib/openpam/RELNOTES#13 (text) ====

@@ -1,7 +1,11 @@
 
-		  Release notes for OpenPAM Cyclamen
+		  Release notes for OpenPAM Daffodil
 		  ==================================
 
+This is a bugfix release.  The previous release, Cyclamen, was rushed
+out without sufficient testing, and contained a number of small but
+serious errors.
+
 This release corresponds to the code used in FreeBSD-CURRENT as of the
 release date.  It has also been successfully built on NetBSD 1.6, and
 should build with minimal or no changes on OpenBSD.  Work is underway
@@ -23,4 +27,4 @@
 lost your name and email address.  Please contact me so I can give you
 proper credit for your contribution.
 
-$P4: //depot/projects/openpam/RELNOTES#13 $
+$P4: //depot/projects/openpam/RELNOTES#14 $

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam.3#3 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM 3
 .Os
 .Sh NAME

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_borrow_cred.3#9 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_BORROW_CRED 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft int

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_free_data.3#9 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_FREE_DATA 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft void

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_get_option.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_GET_OPTION 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft const char *

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_log.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_LOG 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft void

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_nullconv.3#4 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_NULLCONV 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft int

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_restore_cred.3#9 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_RESTORE_CRED 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft int

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_set_option.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_SET_OPTION 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft int

==== //depot/projects/ia64/contrib/openpam/doc/man/openpam_ttyconv.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt OPENPAM_TTYCONV 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .In security/openpam.h
 .Ft int

==== //depot/projects/ia64/contrib/openpam/doc/man/pam.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM 3
 .Os
 .Sh NAME

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_acct_mgmt.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_ACCT_MGMT 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_acct_mgmt "pam_handle_t *pamh" "int flags"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_authenticate.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_AUTHENTICATE 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_authenticate "pam_handle_t *pamh" "int flags"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_chauthtok.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_CHAUTHTOK 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_chauthtok "pam_handle_t *pamh" "int flags"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_close_session.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_CLOSE_SESSION 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_close_session "pam_handle_t *pamh" "int flags"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_end.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_END 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_end "pam_handle_t *pamh" "int status"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_error.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_ERROR 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_error "pam_handle_t *pamh" "const char *fmt" "..."

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_get_authtok.3#14 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_GET_AUTHTOK 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_get_authtok "pam_handle_t *pamh" "int item" "const char **authtok" "const char *prompt"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_get_data.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_GET_DATA 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_get_data "pam_handle_t *pamh" "const char *module_data_name" "const void **data"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_get_item.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_GET_ITEM 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_get_item "pam_handle_t *pamh" "int item_type" "const void **item"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_get_user.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_GET_USER 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_get_user "pam_handle_t *pamh" "const char **user" "const char *prompt"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_getenv.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_GETENV 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft char *
 .Fn pam_getenv "pam_handle_t *pamh" "const char *name"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_getenvlist.3#14 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_GETENVLIST 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft char **
 .Fn pam_getenvlist "pam_handle_t *pamh"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_info.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_INFO 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_info "pam_handle_t *pamh" "const char *fmt" "..."

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_open_session.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_OPEN_SESSION 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_open_session "pam_handle_t *pamh" "int flags"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_prompt.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_PROMPT 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_prompt "pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "..."

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_putenv.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_PUTENV 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY
 .Lb libpam
 .Sh SYNOPSIS
+.In sys/types.h
 .In security/pam_appl.h
 .Ft int
 .Fn pam_putenv "pam_handle_t *pamh" "const char *namevalue"

==== //depot/projects/ia64/contrib/openpam/doc/man/pam_set_data.3#13 (text) ====

@@ -33,7 +33,7 @@
 .\"
 .\" $P4$
 .\"
-.Dd December 12, 2002
+.Dd January 6, 2003
 .Dt PAM_SET_DATA 3
 .Os
 .Sh NAME
@@ -42,6 +42,7 @@
 .Sh LIBRARY

>>> TRUNCATED FOR MAIL (1000 lines) <<<

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe p4-projects" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200301081709.h08H9pQ0063617>