From 6548ed08a764608402a63cdd610420b8e91384e4 Mon Sep 17 00:00:00 2001 From: markd Date: Tue, 27 Apr 2004 12:30:23 +0000 Subject: Add handling of utmpx/wtmpx on NetBSD-current. Bump PKGREVISION. --- security/openssh/Makefile | 8 ++++-- security/openssh/distinfo | 8 +++--- security/openssh/patches/patch-aa | 52 ++++++++++++++++++++++++++++++++++++--- security/openssh/patches/patch-ab | 46 +++++++++++++++++++++++++++++++--- security/openssh/patches/patch-ac | 29 ++++++++++++++++++++++ security/openssh/patches/patch-ad | 22 +++++++++++++++++ 6 files changed, 154 insertions(+), 11 deletions(-) create mode 100644 security/openssh/patches/patch-ac create mode 100644 security/openssh/patches/patch-ad diff --git a/security/openssh/Makefile b/security/openssh/Makefile index bc39e180e1e..7af0f5a9e21 100644 --- a/security/openssh/Makefile +++ b/security/openssh/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.128 2004/04/27 12:26:31 markd Exp $ +# $NetBSD: Makefile,v 1.129 2004/04/27 12:30:23 markd Exp $ DISTNAME= openssh-3.8p1 PKGNAME= openssh-3.8.1 -PKGREVISION= 1 +PKGREVISION= 2 SVR4_PKGNAME= ossh CATEGORIES= security MASTER_SITES= ftp://ftp.openssh.com/pub/OpenBSD/OpenSSH/portable/ \ @@ -99,6 +99,10 @@ CPPFLAGS+= -I/usr/include/kerberosIV LDFLAGS+= -lkrb -lcom_err -lroken -ldes -lcrypto .endif +.if ${OPSYS} == "NetBSD" && exists(/usr/include/utmpx.h) +# if we have utmpx et al do not try to use login() +CONFIGURE_ARGS+= --disable-libutil +.endif .if ${OPSYS} == "SunOS" && (${OS_VERSION} == "5.8" || ${OS_VERSION} == "5.9") CONFIGURE_ARGS+= --disable-utmp --disable-wtmp .endif diff --git a/security/openssh/distinfo b/security/openssh/distinfo index 7d9d38362f8..181e7b4cc1a 100644 --- a/security/openssh/distinfo +++ b/security/openssh/distinfo @@ -1,7 +1,9 @@ -$NetBSD: distinfo,v 1.30 2004/03/12 19:24:47 wiz Exp $ +$NetBSD: distinfo,v 1.31 2004/04/27 12:30:23 markd Exp $ SHA1 (openssh-3.8p1.tar.gz) = b30c4ec4945f4e8b1691470495c15caf522fbc16 Size (openssh-3.8p1.tar.gz) = 826588 bytes -SHA1 (patch-aa) = bd1a2cb9baa415a3c0ec52646d22378985fe7967 -SHA1 (patch-ab) = 858157467277e224cfd8ecd94a8faaabf63851b1 +SHA1 (patch-aa) = 7cc830cfe60afa021c1ac69e27e566c259994f61 +SHA1 (patch-ab) = 9893f9aa4cbd022328358f0d93ba1cd27ee5e320 +SHA1 (patch-ac) = ae77aa9a6bdbb69231d24ed6b01e6cefa13b38ee +SHA1 (patch-ad) = 644e2fe1f2967fe97c51a7cc61cad557bc42ed6a SHA1 (patch-ah) = 8f1fa190e4fb115bb5311b4ccd839a649e1b09e5 diff --git a/security/openssh/patches/patch-aa b/security/openssh/patches/patch-aa index 2f2751d2c04..f77c73205e1 100644 --- a/security/openssh/patches/patch-aa +++ b/security/openssh/patches/patch-aa @@ -1,6 +1,6 @@ -$NetBSD: patch-aa,v 1.32 2004/03/12 19:24:47 wiz Exp $ +$NetBSD: patch-aa,v 1.33 2004/04/27 12:30:23 markd Exp $ ---- configure.orig Tue Feb 24 07:22:59 2004 +--- configure.orig 2004-02-24 19:22:59.000000000 +1300 +++ configure @@ -4803,6 +4803,9 @@ EOF ;; @@ -23,7 +23,53 @@ $NetBSD: patch-aa,v 1.32 2004/03/12 19:24:47 wiz Exp $ #include int deny_severity = 0, allow_severity = 0; -@@ -17983,7 +17990,7 @@ echo "OpenSSH has been configured with t +@@ -17009,12 +17016,20 @@ fi + rm -f conftest.$ac_objext conftest.$ac_ext + if test -z "$conf_utmpx_location"; then + if test x"$system_utmpx_path" = x"no" ; then +- cat >>confdefs.h <<\EOF ++ for f in /var/run/utmpx; do ++ if test -f $f ; then ++ conf_utmpx_location=$f ++ fi ++ done ++ if test -z "$conf_utmpx_location"; then ++ cat >>confdefs.h <<\EOF + #define DISABLE_UTMPX 1 + EOF + ++ fi + fi +-else ++fi ++if test -n "$conf_utmpx_location"; then + cat >>confdefs.h <>confdefs.h <<\EOF ++ for f in /var/log/wtmpx; do ++ if test -f $f ; then ++ conf_wtmpx_location=$f ++ fi ++ done ++ if test -z "$conf_wtmpx_location"; then ++ cat >>confdefs.h <<\EOF + #define DISABLE_WTMPX 1 + EOF + ++ fi + fi +-else ++fi ++if test -n "$conf_wtmpx_location"; then + cat >>confdefs.h < int deny_severity = 0, allow_severity = 0; ], -@@ -2793,7 +2800,7 @@ echo "OpenSSH has been configured with t +@@ -2725,9 +2732,17 @@ AC_TRY_COMPILE([ + ) + if test -z "$conf_utmpx_location"; then + if test x"$system_utmpx_path" = x"no" ; then +- AC_DEFINE(DISABLE_UTMPX) ++ for f in /var/run/utmpx; do ++ if test -f $f ; then ++ conf_utmpx_location=$f ++ fi ++ done ++ if test -z "$conf_utmpx_location"; then ++ AC_DEFINE(DISABLE_UTMPX) ++ fi + fi +-else ++fi ++if test -n "$conf_utmpx_location"; then + AC_DEFINE_UNQUOTED(CONF_UTMPX_FILE, "$conf_utmpx_location") + fi + +@@ -2750,9 +2765,17 @@ AC_TRY_COMPILE([ + ) + if test -z "$conf_wtmpx_location"; then + if test x"$system_wtmpx_path" = x"no" ; then +- AC_DEFINE(DISABLE_WTMPX) ++ for f in /var/log/wtmpx; do ++ if test -f $f ; then ++ conf_wtmpx_location=$f ++ fi ++ done ++ if test -z "$conf_wtmpx_location"; then ++ AC_DEFINE(DISABLE_WTMPX) ++ fi + fi +-else ++fi ++if test -n "$conf_wtmpx_location"; then + AC_DEFINE_UNQUOTED(CONF_WTMPX_FILE, "$conf_wtmpx_location") + fi + +@@ -2793,7 +2816,7 @@ echo "OpenSSH has been configured with t echo " User binaries: $B" echo " System binaries: $C" echo " Configuration files: $D" diff --git a/security/openssh/patches/patch-ac b/security/openssh/patches/patch-ac new file mode 100644 index 00000000000..160d8095f14 --- /dev/null +++ b/security/openssh/patches/patch-ac @@ -0,0 +1,29 @@ +$NetBSD: patch-ac,v 1.9 2004/04/27 12:30:23 markd Exp $ + +--- defines.h.orig 2004-02-10 15:01:14.000000000 +1300 ++++ defines.h +@@ -574,6 +574,24 @@ struct winsize { + # endif + # endif + #endif ++#ifndef UTMPX_FILE ++# ifdef _PATH_UTMPX ++# define UTMPX_FILE _PATH_UTMPX ++# else ++# ifdef CONF_UTMPX_FILE ++# define UTMPX_FILE CONF_UTMPX_FILE ++# endif ++# endif ++#endif ++#ifndef WTMPX_FILE ++# ifdef _PATH_WTMPX ++# define WTMPX_FILE _PATH_WTMPX ++# else ++# ifdef CONF_WTMPX_FILE ++# define WTMPX_FILE CONF_WTMPX_FILE ++# endif ++# endif ++#endif + /* pick up the user's location for lastlog if given */ + #ifndef LASTLOG_FILE + # ifdef _PATH_LASTLOG diff --git a/security/openssh/patches/patch-ad b/security/openssh/patches/patch-ad new file mode 100644 index 00000000000..094a675707c --- /dev/null +++ b/security/openssh/patches/patch-ad @@ -0,0 +1,22 @@ +$NetBSD: patch-ad,v 1.6 2004/04/27 12:30:23 markd Exp $ + +--- loginrec.c.orig 2004-02-10 18:49:35.000000000 +1300 ++++ loginrec.c +@@ -720,8 +720,6 @@ construct_utmpx(struct logininfo *li, st + line_stripname(utx->ut_line, li->line, sizeof(utx->ut_line)); + set_utmpx_time(li, utx); + utx->ut_pid = li->pid; +- /* strncpy(): Don't necessarily want null termination */ +- strncpy(utx->ut_name, li->username, MIN_SIZEOF(utx->ut_name, li->username)); + + if (li->type == LTYPE_LOGOUT) + return; +@@ -731,6 +729,8 @@ construct_utmpx(struct logininfo *li, st + * for logouts. + */ + ++ /* strncpy(): Don't necessarily want null termination */ ++ strncpy(utx->ut_name, li->username, MIN_SIZEOF(utx->ut_name, li->username)); + # ifdef HAVE_HOST_IN_UTMPX + strncpy(utx->ut_host, li->hostname, MIN_SIZEOF(utx->ut_host, li->hostname)); + # endif -- cgit v1.2.3