From e11f5bc72234c0cc5bd0739a341c4866556547a7 Mon Sep 17 00:00:00 2001 From: jow Date: Mon, 11 Jun 2012 01:12:03 +0000 Subject: [PATCH] [packages] shadow: update to v4.1.5.1, add "su", "passwd" and "groups" applet git-svn-id: svn://svn.openwrt.org/openwrt/packages@32186 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- utils/shadow/Makefile | 43 +++++- utils/shadow/patches/001-cross-compile.patch | 131 ------------------ .../patches/002-fix-malloc-prototype.patch | 11 -- .../patches/003-disable-nis-lookup.patch | 41 ------ .../patches/004-disable-ruser-lookup.patch | 27 ++-- 5 files changed, 44 insertions(+), 209 deletions(-) delete mode 100644 utils/shadow/patches/001-cross-compile.patch delete mode 100644 utils/shadow/patches/002-fix-malloc-prototype.patch delete mode 100644 utils/shadow/patches/003-disable-nis-lookup.patch diff --git a/utils/shadow/Makefile b/utils/shadow/Makefile index 2986312a7..d6448c113 100644 --- a/utils/shadow/Makefile +++ b/utils/shadow/Makefile @@ -1,5 +1,5 @@ # -# Copyright (C) 2008-2010 OpenWrt.org +# Copyright (C) 2008-2012 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:=shadow -PKG_VERSION:=4.0.3 +PKG_VERSION:=4.1.5.1 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 -PKG_SOURCE_URL:=http://ftp.pld-linux.org/software/shadow -PKG_MD5SUM:=4fa404ebb4e29828232b3c9a2abddefd +PKG_SOURCE_URL:=http://pkg-shadow.alioth.debian.org/releases +PKG_MD5SUM:=a00449aa439c69287b6d472191dc2247 PKG_FIXUP:=libtool @@ -22,13 +22,23 @@ PKG_INSTALL:=1 include $(INCLUDE_DIR)/package.mk UTILS := \ - groupadd groupdel groupmod useradd userdel usermod + groupadd groupdel groupmod useradd userdel usermod \ + su passwd groups + +CONFIGURE_ARGS += \ + --without-audit \ + --without-libpam \ + --without-selinux \ + --without-acl \ + --without-attr \ + --without-tcb \ + --without-nscd define Package/shadow SECTION:=utils CATEGORY:=Utilities TITLE:=The PLD Linux shadow utilities - URL:=http://ftp.pld-linux.org/software/shadow/ + URL:=http://pkg-shadow.alioth.debian.org/ DEPENDS:=$(foreach u,$(UTILS),+shadow-$(u)) endef @@ -43,12 +53,30 @@ define Package/shadow/install endef +define Package/shadow-common + SECTION:=utils + CATEGORY:=Utilities + TITLE:=Shared definitions for the shadow utilities + URL:=http://pkg-shadow.alioth.debian.org/ +endef + +define Package/shadow-common/conffiles +/etc/login.defs +endef + +define Package/shadow-common/install + $(INSTALL_DIR) $(1)/etc + $(INSTALL_CONF) $(PKG_INSTALL_DIR)/etc/login.defs $(1)/etc/ +endef + + define program define Package/shadow-$(1) SECTION:=utils CATEGORY:=Utilities TITLE:=Utility $(1) from the PLD Linux shadow utilities - URL:=http://ftp.pld-linux.org/software/shadow/ + URL:=http://pkg-shadow.alioth.debian.org/ + DEPENDS:=+shadow-common endef define Package/shadow-$(1)/description @@ -70,4 +98,5 @@ define program endef $(eval $(call BuildPackage,shadow)) +$(eval $(call BuildPackage,shadow-common)) $(foreach u,$(UTILS),$(eval $(call program,$(u)))) diff --git a/utils/shadow/patches/001-cross-compile.patch b/utils/shadow/patches/001-cross-compile.patch deleted file mode 100644 index 861397676..000000000 --- a/utils/shadow/patches/001-cross-compile.patch +++ /dev/null @@ -1,131 +0,0 @@ ---- a/configure.in -+++ b/configure.in -@@ -135,67 +135,26 @@ ac_cv_libc_shadowgrp=yes,ac_cv_libc_shad - if test "$ac_cv_libc_shadowgrp" = "yes"; then - AC_DEFINE(HAVE_SHADOWGRP) - fi --fi - --AC_MSG_CHECKING(location of shared mail directory) --for maildir in /var/spool/mail /var/mail /usr/spool/mail /usr/mail NONE; do -- if test "$maildir" = "NONE"; then -- AC_MSG_RESULT(None) -- elif test -d $maildir; then -- AC_DEFINE_UNQUOTED(MAIL_SPOOL_DIR, "$maildir") -- AC_MSG_RESULT($maildir) -- break -- fi --done -- --AC_MSG_CHECKING(location of user mail file) --for mailfile in Mailbox mailbox Mail mail .mail NONE; do -- if test "$mailfile" = "NONE"; then -- AC_MSG_RESULT(None) -- elif test -f $HOME/$mailfile; then -- AC_DEFINE_UNQUOTED(MAIL_SPOOL_FILE, "$mailfile") -- AC_MSG_RESULT($mailfile) -- break -- fi --done -- --AC_MSG_CHECKING(location of utmp) --for utmpdir in /var/run /var/adm /usr/adm /etc NONE; do -- if test "$utmpdir" = "NONE"; then -- AC_MSG_WARN(utmp file not found) -- elif test -f $utmpdir/utmp; then -- AC_DEFINE_UNQUOTED(_UTMP_FILE, "$utmpdir/utmp") -- AC_MSG_RESULT($utmpdir) -- break -- fi --done -- --AC_MSG_CHECKING(location of faillog/lastlog/wtmp) --for logdir in /var/log /var/adm /usr/adm /etc; do -- if test -d $logdir; then -- AC_DEFINE_UNQUOTED(_WTMP_FILE, "$logdir/wtmp") -- AC_DEFINE_UNQUOTED(LASTLOG_FILE, "$logdir/lastlog") -- AC_DEFINE_UNQUOTED(FAILLOG_FILE, "$logdir/faillog") -- AC_MSG_RESULT($logdir) -- break -- fi --done -- --AC_MSG_CHECKING(location of the passwd program) --if test -f /usr/bin/passwd; then -- passwd_dir=/usr/bin --else -- passwd_dir=/bin -+AC_CACHE_CHECK(for shadow password support, -+ac_cv_shadow_support, AC_TRY_COMPILE([#include ], -+[ struct spwd *spw = getspnam("root"); ], -+ac_cv_shadow_support=yes, ac_cv_shadow_support=no)) -+ -+if test "$ac_cv_shadow_support" = "yes"; then -+ AC_DEFINE(SHADOWPWD) -+fi - fi --AC_DEFINE_UNQUOTED(PASSWD_PROGRAM, "$passwd_dir/passwd") --AC_MSG_RESULT($passwd_dir) - - dnl XXX - quick hack, should disappear before anyone notices :). --AC_DEFINE(SHADOWPWD) - AC_DEFINE(USG) - AC_DEFINE(USE_SYSLOG) - AC_DEFINE(RLOGIN) - AC_DEFINE(RUSEROK, 0) -+AC_DEFINE_UNQUOTED(_WTMP_FILE, "/var/log/wtmp") -+AC_DEFINE_UNQUOTED(LASTLOG_FILE, "/var/log/lastlog") -+AC_DEFINE_UNQUOTED(FAILLOG_FILE, "/var/log/faillog") -+AC_DEFINE_UNQUOTED(PASSWD_PROGRAM, "/usr/bin/passwd") - - dnl Use our own version of getpass(), which handles long passwords - dnl (unlike many systems which have a limit of 8 characters), and can -@@ -282,25 +241,8 @@ else - AC_MSG_RESULT(yes) - fi - --ALL_LINGUAS="cs de el fr ja ko pl sv uk" --AM_GNU_GETTEXT -- - AC_OUTPUT([ - Makefile -- intl/Makefile -- po/Makefile.in -- doc/Makefile -- man/Makefile -- man/cs/Makefile -- man/de/Makefile -- man/fr/Makefile -- man/hu/Makefile -- man/id/Makefile -- man/it/Makefile -- man/ja/Makefile -- man/ko/Makefile -- man/pl/Makefile -- man/pt_BR/Makefile - libmisc/Makefile - lib/Makefile - src/Makefile ---- a/Makefile.in -+++ b/Makefile.in -@@ -111,8 +111,8 @@ EXTRA_DIST = NEWS README TODO shadow.spe - - AUTOMAKE_OPTIONS = 1.5 dist-bzip2 foreign - --SUBDIRS = intl po man libmisc lib src \ -- contrib debian doc etc -+SUBDIRS = libmisc lib src \ -+ contrib debian etc - - subdir = . - ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ---- a/Makefile.am -+++ b/Makefile.am -@@ -4,5 +4,5 @@ EXTRA_DIST = NEWS README TODO shadow.spe - - AUTOMAKE_OPTIONS = 1.5 dist-bzip2 foreign - --SUBDIRS = intl po man libmisc lib src \ -- contrib debian doc etc -+SUBDIRS = libmisc lib src \ -+ contrib debian etc diff --git a/utils/shadow/patches/002-fix-malloc-prototype.patch b/utils/shadow/patches/002-fix-malloc-prototype.patch deleted file mode 100644 index 637e86d51..000000000 --- a/utils/shadow/patches/002-fix-malloc-prototype.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/libmisc/xmalloc.c -+++ b/libmisc/xmalloc.c -@@ -16,7 +16,7 @@ RCSID("$Id: xmalloc.c,v 1.3 1998/12/28 2 - - #include "defines.h" - --extern char *malloc(); -+extern void *malloc(size_t size); - - char * - xmalloc(size_t size) diff --git a/utils/shadow/patches/003-disable-nis-lookup.patch b/utils/shadow/patches/003-disable-nis-lookup.patch deleted file mode 100644 index 1383e0e2e..000000000 --- a/utils/shadow/patches/003-disable-nis-lookup.patch +++ /dev/null @@ -1,41 +0,0 @@ ---- a/libmisc/login_access.c -+++ b/libmisc/login_access.c -@@ -53,7 +53,6 @@ RCSID("$Id: login_access.c,v 1.6 1998/01 - #include /* for inet_ntoa() */ - - extern struct group *getgrnam(); --extern int innetgr(); - #if 0 /* should be defined by */ - extern int errno; - #endif -@@ -193,29 +192,7 @@ myhostname(void) - static int - netgroup_match(const char *group, const char *machine, const char *user) - { --#if 0 /* original code */ --#ifdef NIS -- static char *mydomain = 0; -- -- if (mydomain == 0) -- yp_get_default_domain(&mydomain); -- return (innetgr(group, machine, user, mydomain)); --#else -- syslog(LOG_ERR, "NIS netgroup support not configured"); -- return (NO); --#endif --#else /* works better with glibc? */ -- static char *mydomain = 0; -- -- if (mydomain == 0) { -- static char domain[MAXHOSTNAMELEN+1]; -- -- getdomainname(domain, MAXHOSTNAMELEN); -- mydomain = domain; -- } -- -- return innetgr(group, machine, user, mydomain); --#endif -+ return (NO); - } - - /* user_match - match a username against one token */ diff --git a/utils/shadow/patches/004-disable-ruser-lookup.patch b/utils/shadow/patches/004-disable-ruser-lookup.patch index a59034cce..7a6f38e79 100644 --- a/utils/shadow/patches/004-disable-ruser-lookup.patch +++ b/utils/shadow/patches/004-disable-ruser-lookup.patch @@ -1,21 +1,10 @@ ---- a/configure -+++ b/configure -@@ -9192,7 +9192,7 @@ cat >>confdefs.h <<\EOF - EOF - - cat >>confdefs.h <<\EOF --#define RUSEROK 0 -+/* #define RUSEROK 1 */ - EOF - - cat >>confdefs.h <<\EOF --- a/configure.in +++ b/configure.in -@@ -150,7 +150,6 @@ dnl XXX - quick hack, should disappear b - AC_DEFINE(USG) - AC_DEFINE(USE_SYSLOG) - AC_DEFINE(RLOGIN) --AC_DEFINE(RUSEROK, 0) - AC_DEFINE_UNQUOTED(_WTMP_FILE, "/var/log/wtmp") - AC_DEFINE_UNQUOTED(LASTLOG_FILE, "/var/log/lastlog") - AC_DEFINE_UNQUOTED(FAILLOG_FILE, "/var/log/faillog") +@@ -195,7 +195,6 @@ AC_DEFINE_UNQUOTED(PASSWD_PROGRAM, "$sha + dnl XXX - quick hack, should disappear before anyone notices :). + AC_DEFINE(USE_SYSLOG, 1, [Define to use syslog().]) + AC_DEFINE(RLOGIN, 1, [Define if login should support the -r flag for rlogind.]) +-AC_DEFINE(RUSEROK, 0, [Define to the ruserok() "success" return value (0 or 1).]) + + AC_ARG_ENABLE(shadowgrp, + [AC_HELP_STRING([--enable-shadowgrp], [enable shadow group support @<:@default=yes@:>@])],