[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
This commit is contained in:
jow 2012-06-11 01:12:03 +00:00
parent 65112e8b31
commit e11f5bc722
5 changed files with 44 additions and 209 deletions

View File

@ -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))))

View File

@ -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 <shadow.h>],
+[ 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

View File

@ -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)

View File

@ -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 <arpa/inet.h> /* for inet_ntoa() */
extern struct group *getgrnam();
-extern int innetgr();
#if 0 /* should be defined by <errno.h> */
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 */

View File

@ -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@:>@])],