From 4e3fe42600c83589c2860b588328a0273e2db0c6 Mon Sep 17 00:00:00 2001 From: nekral-guest Date: Sun, 7 Oct 2007 11:44:38 +0000 Subject: [PATCH] [svn-upgrade] Integrating new upstream version, shadow (20001012) --- ChangeLog | 290 ++++ Makefile.am | 4 +- Makefile.in | 28 +- doc/CHANGES => NEWS | 18 +- README | 28 + TODO | 7 + aclocal.m4 | 64 +- config.guess | 312 ++-- config.sub | 95 +- configure | 751 +++++---- configure.in | 9 +- contrib/Makefile.am | 4 +- contrib/Makefile.in | 15 +- contrib/rpasswd.c | 591 ------- contrib/udbachk.tgz | Bin 0 -> 17571 bytes contrib/udbachk.v012.tgz | Bin 20228 -> 0 bytes debian/FILES | 70 - debian/Makefile.am | 2 +- debian/Makefile.in | 15 +- doc/LSM | 4 +- doc/Makefile.am | 2 +- doc/Makefile.in | 15 +- doc/README.debian | 68 - etc/Makefile.am | 3 +- etc/Makefile.in | 16 +- etc/pam.d/Makefile.am | 2 +- etc/pam.d/Makefile.in | 15 +- etc/pam.d/passwd | 2 - etc/pam.d/shadow | 6 + etc/pam.d/su | 2 - etc/shells | 10 - etc/suauth | 4 - intl/Makefile.in | 18 +- intl/dcgettext.c | 43 +- intl/explodename.c | 15 +- intl/hash-string.h | 8 +- intl/l10nflist.c | 2 +- intl/loadinfo.h | 4 +- intl/loadmsgcat.c | 26 +- intl/localealias.c | 24 +- lib/Makefile.in | 50 +- libmisc/Makefile.am | 53 +- libmisc/Makefile.in | 112 +- libmisc/pwdcheck.c | 69 - ltconfig | 233 ++- ltmain.sh | 125 +- man/Makefile.am | 53 +- man/Makefile.in | 23 +- man/chage.1 | 109 -- man/chfn.1 | 66 - man/chpasswd.8 | 62 - man/chsh.1 | 66 - man/dialups.5 | 22 - man/dpasswd.8 | 55 - man/faillog.5 | 59 - man/faillog.8 | 100 -- man/gpasswd.1 | 73 - man/groupadd.8 | 64 - man/groupdel.8 | 60 - man/groupmod.8 | 66 - man/grpck.8 | 101 -- man/lastlog.8 | 63 - man/limits.5 | 76 - man/login.1 | 155 -- man/login.access.5 | 52 - man/login.defs.5 | 573 ------- man/logoutd.8 | 51 - man/mkpasswd.8 | 81 - man/newgrp.1 | 80 - man/newusers.8 | 68 - man/passwd.1 | 190 --- man/passwd.5 | 111 -- man/pl/Makefile.am | 30 +- man/pl/Makefile.in | 262 ++-- man/pl/chage.1 | 110 -- man/pl/chfn.1 | 77 - man/pl/chpasswd.8 | 62 - man/pl/chsh.1 | 70 - man/pl/d_passwd.5 | 30 - man/pl/dialups.5 | 24 - man/pl/dpasswd.8 | 56 - man/pl/faillog.5 | 59 - man/pl/faillog.8 | 95 -- man/pl/gpasswd.1 | 65 - man/pl/groupadd.8 | 72 - man/pl/groupdel.8 | 68 - man/pl/groupmod.8 | 77 - man/pl/groups.1 | 61 - man/pl/grpck.8 | 103 -- man/pl/id.1 | 57 - man/pl/lastlog.8 | 64 - man/pl/limits.5 | 79 - man/pl/login.1 | 134 -- man/pl/login.access.5 | 54 - man/pl/login.defs.5 | 557 ------- man/pl/logoutd.8 | 50 - man/pl/mkpasswd.8 | 80 - man/pl/newgrp.1 | 87 -- man/pl/newusers.8 | 69 - man/pl/passwd.1 | 201 --- man/pl/passwd.5 | 88 -- man/pl/porttime.5 | 81 - man/pl/pw_auth.3 | 152 -- man/pl/pwauth.8 | 65 - man/pl/pwck.8 | 109 -- man/pl/pwconv.8 | 66 - man/pl/shadow.3 | 148 -- man/pl/shadow.5 | 92 -- man/pl/shadowconfig.8 | 27 - man/pl/su.1 | 87 -- man/pl/suauth.5 | 115 -- man/pl/sulogin.8 | 94 -- man/porttime.5 | 84 - man/pwck.8 | 107 -- man/pwconv.8 | 63 - man/shadow.3 | 148 -- man/shadow.5 | 99 -- man/shadowconfig.8 | 24 - man/su.1 | 87 -- man/suauth.5 | 112 -- man/useradd.8 | 197 --- man/userdel.8 | 69 - man/usermod.8 | 162 -- man/vipw.8 | 29 - po/Makefile.in.in | 12 +- po/cat-id-tbl.c | 806 +++++----- po/cs.gmo | Bin 0 -> 40991 bytes po/cs.po | 2426 +++++++++++++++++++++++++++++ po/el.po | 408 ++--- po/fr.gmo | Bin 40067 -> 40067 bytes po/fr.po | 408 ++--- po/pl.gmo | Bin 40513 -> 40513 bytes po/pl.po | 408 ++--- po/shadow.pot | 408 ++--- po/sv.po | 408 ++--- redhat/Makefile.am | 8 - redhat/Makefile.in | 214 --- redhat/README | 29 - redhat/shadow-970616-fix.patch | 256 --- redhat/shadow-970616-glibc.patch | 11 - redhat/shadow-970616-rh.patch | 1242 --------------- redhat/shadow-970616-utuser.patch | 12 - redhat/shadow-970616.login.defs | 57 - redhat/shadow-970616.useradd | 7 - redhat/shadow-utils-970616.spec | 137 -- redhat/shadow-utils.spec.in | 154 -- shadow-utils.spec.in | 93 ++ src/Makefile.am | 31 +- src/Makefile.in | 153 +- src/chage.c | 71 +- src/chpasswd.c | 69 +- src/groupadd.c | 69 +- src/groupdel.c | 69 +- src/groupmod.c | 69 +- src/newusers.c | 71 +- src/useradd.c | 82 +- src/userdel.c | 69 +- src/usermod.c | 69 +- stamp-h.in | 1 - 159 files changed, 6387 insertions(+), 12711 deletions(-) create mode 100644 ChangeLog rename doc/CHANGES => NEWS (97%) create mode 100644 README create mode 100644 TODO delete mode 100644 contrib/rpasswd.c create mode 100644 contrib/udbachk.tgz delete mode 100644 contrib/udbachk.v012.tgz delete mode 100644 debian/FILES delete mode 100644 doc/README.debian create mode 100644 etc/pam.d/shadow delete mode 100644 etc/shells delete mode 100644 etc/suauth delete mode 100644 libmisc/pwdcheck.c delete mode 100644 man/chage.1 delete mode 100644 man/chfn.1 delete mode 100644 man/chpasswd.8 delete mode 100644 man/chsh.1 delete mode 100644 man/dialups.5 delete mode 100644 man/dpasswd.8 delete mode 100644 man/faillog.5 delete mode 100644 man/faillog.8 delete mode 100644 man/gpasswd.1 delete mode 100644 man/groupadd.8 delete mode 100644 man/groupdel.8 delete mode 100644 man/groupmod.8 delete mode 100644 man/grpck.8 delete mode 100644 man/lastlog.8 delete mode 100644 man/limits.5 delete mode 100644 man/login.1 delete mode 100644 man/login.access.5 delete mode 100644 man/login.defs.5 delete mode 100644 man/logoutd.8 delete mode 100644 man/mkpasswd.8 delete mode 100644 man/newgrp.1 delete mode 100644 man/newusers.8 delete mode 100644 man/passwd.1 delete mode 100644 man/passwd.5 delete mode 100644 man/pl/chage.1 delete mode 100644 man/pl/chfn.1 delete mode 100644 man/pl/chpasswd.8 delete mode 100644 man/pl/chsh.1 delete mode 100644 man/pl/d_passwd.5 delete mode 100644 man/pl/dialups.5 delete mode 100644 man/pl/dpasswd.8 delete mode 100644 man/pl/faillog.5 delete mode 100644 man/pl/faillog.8 delete mode 100644 man/pl/gpasswd.1 delete mode 100644 man/pl/groupadd.8 delete mode 100644 man/pl/groupdel.8 delete mode 100644 man/pl/groupmod.8 delete mode 100644 man/pl/groups.1 delete mode 100644 man/pl/grpck.8 delete mode 100644 man/pl/id.1 delete mode 100644 man/pl/lastlog.8 delete mode 100644 man/pl/limits.5 delete mode 100644 man/pl/login.1 delete mode 100644 man/pl/login.access.5 delete mode 100644 man/pl/login.defs.5 delete mode 100644 man/pl/logoutd.8 delete mode 100644 man/pl/mkpasswd.8 delete mode 100644 man/pl/newgrp.1 delete mode 100644 man/pl/newusers.8 delete mode 100644 man/pl/passwd.1 delete mode 100644 man/pl/passwd.5 delete mode 100644 man/pl/porttime.5 delete mode 100644 man/pl/pw_auth.3 delete mode 100644 man/pl/pwauth.8 delete mode 100644 man/pl/pwck.8 delete mode 100644 man/pl/pwconv.8 delete mode 100644 man/pl/shadow.3 delete mode 100644 man/pl/shadow.5 delete mode 100644 man/pl/shadowconfig.8 delete mode 100644 man/pl/su.1 delete mode 100644 man/pl/suauth.5 delete mode 100644 man/pl/sulogin.8 delete mode 100644 man/porttime.5 delete mode 100644 man/pwck.8 delete mode 100644 man/pwconv.8 delete mode 100644 man/shadow.3 delete mode 100644 man/shadow.5 delete mode 100644 man/shadowconfig.8 delete mode 100644 man/su.1 delete mode 100644 man/suauth.5 delete mode 100644 man/useradd.8 delete mode 100644 man/userdel.8 delete mode 100644 man/usermod.8 delete mode 100644 man/vipw.8 create mode 100644 po/cs.gmo create mode 100644 po/cs.po delete mode 100644 redhat/Makefile.am delete mode 100644 redhat/Makefile.in delete mode 100644 redhat/README delete mode 100644 redhat/shadow-970616-fix.patch delete mode 100644 redhat/shadow-970616-glibc.patch delete mode 100644 redhat/shadow-970616-rh.patch delete mode 100644 redhat/shadow-970616-utuser.patch delete mode 100644 redhat/shadow-970616.login.defs delete mode 100644 redhat/shadow-970616.useradd delete mode 100644 redhat/shadow-utils-970616.spec delete mode 100644 redhat/shadow-utils.spec.in create mode 100644 shadow-utils.spec.in diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 00000000..bd97da8b --- /dev/null +++ b/ChangeLog @@ -0,0 +1,290 @@ +2000-10-12 Tomasz K³oczko + + * NEWS: - summary changes description for shadow-20001012. + + * configure.in: - release changed to 20001012. + + * etc/Makefile.am: - removed shells and suauth from EXTRA_DIST. + + * doc/Makefile.am: - removed README.debian from EXTRA_DIST. + + * libmisc/Makefile.am: - removed pwdcheck.c from libmisc_a_SOURCES. + + * debian/Makefile.am: - removed FILES from EXTRA_DIST. + + * contrib/Makefile.am: - s/udbachk.v012.tgz/udbachk.tgz/ + + * doc/Makefile.am: - removed CHANGES (this file was moved to ../NEWS). + +2000-10-10 Tomasz K³oczko + + * po/ChangeLog: - add empty file (gettext requires this). + +2000-10-10 Arkadiusz Mi¶kiewicz + + * README: typos fixed + +2000-10-10 Tomasz K³oczko + + * Makefile.am: - added shadow-utils.spec.in to EXTR_DIST. + + * redhat/Attic/shadow-utils.spec.in: - obsoleted. + + * Attic/stamp-h.in: - removed (this file is autogenerated by autoconf). + + * po/pl.po, po/sv.po, po/cs.po, po/el.po, po/fr.po: + - update before release. + + * doc/LSM: - new maintainer and new primary site. + + * Makefile.am: - README added to EXTRA_DIST. + + * README: - added README with all shadow sites and resources details. + + * shadow-utils.spec.in: - partialy rewrited. + + * configure.in: - change version to 20001010. + + * Makefile.am: - added NEWS to EXTRA_DIST. + + * Makefile.am, TODO: - added TODO. + + * doc/Attic/CHANGES, NEWS: - rename doc/CHANGES -> NEWS. + +2000-10-09 Tomasz K³oczko + + * redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970616-fix.patch, redhat/Attic/shadow-970616-glibc.patch, redhat/Attic/shadow-970616-rh.patch, redhat/Attic/shadow-970616-utuser.patch, redhat/Attic/shadow-970616.login.defs, redhat/Attic/shadow-970616.useradd, redhat/Attic/shadow-utils-970616.spec, Makefile.am, configure.in, shadow-utils.spec.in: + - remove redhat/ directory with obsoleted files. + + * man/Makefile.am: - removed redundant ${man_MANS} from EXTRA_DIST. + + * src/useradd.c: + - fix a security bug (adduser could overwrite previously existing + groups (shadow-19990827-group.patch from RH), + + * po/cs.po, po/el.po, po/fr.po, po/pl.po, po/sv.po: + - "make updated-po". + + * man/pl/Makefile.am, man/pl/grpconv.8, man/pl/grpunconv.8, man/pl/pwunconv.8, man/Makefile.am, man/grpconv.8, man/grpunconv.8, man/pwunconv.8: + - added man pages for grpconv(8), grpunconv(8), pwunconv(8) (.so link to + pwconv(8)) + + * man/pl/Makefile.am, man/pl/adduser.8, man/Makefile.am, man/adduser.8: + - added man page for adduser(8) (.so link to useradd(8)). + + * po/Attic/doit: + - removed (in po/Makefile.in.in exist special update-po target). + + * etc/pam.d/passwd, etc/pam.d/su: - cosmetics. + + * etc/pam.d/shadow: - sample PAM config file for shadow utils. + + * etc/pam.d/Makefile.am: - added shadow to EXTRA_DIST + + * src/chpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/newusers.c, src/useradd.c, src/userdel.c, src/usermod.c: + - bind to shadow PAM file instead userdb (mainly PAMimication all shadow + utils is used for proper updating db files but in real this can be used + for perform many other tasks). + + * src/Makefile.am: - added linking with @LIBPAM@ all PAMified tools. + + * src/chpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/newusers.c, src/useradd.c, src/userdel.c, src/usermod.c: + - added PAM support (bind to common "userdb" PAM authentication description + file). + + * src/chage.c: - added PAM support. + +2000-10-06 Tomasz K³oczko + + * autogen.sh: + - added autogen.sh script which prepare raw source code from cvs to use. + +2000-10-04 Tomasz K³oczko + + * man/pl/useradd.8, man/pl/userdel.8, man/pl/usermod.8, man/pl/vipw.8: + - merged changes from PTM. + + * man/pl/Makefile.am: + - simplified: use only man_MANS and remaped $(mandir) variable. + +2000-09-27 Tomasz K³oczko + + * po/cs.po, configure.in: + - added cs translation (Jiri Pavlovsky ). + +2000-09-05 Marek Micha³kiewicz + + * man/pl/sulogin.8, man/pl/vipw.8, po/el.po, po/fr.po, po/pl.po, po/sv.po, man/pl/chage.1, man/pl/chfn.1, man/pl/chpasswd.8, man/pl/chsh.1, man/pl/d_passwd.5, man/pl/dialups.5, man/pl/dpasswd.8, man/pl/faillog.5, man/pl/faillog.8, man/pl/gpasswd.1, man/pl/groups.1, man/pl/grpck.8, man/pl/id.1, man/pl/lastlog.8, man/pl/limits.5, man/pl/login.1, man/pl/login.access.5, man/pl/login.defs.5, man/pl/logoutd.8, man/pl/mkpasswd.8, man/pl/newgrp.1, man/pl/newusers.8, man/pl/passwd.1, man/pl/passwd.5, man/pl/porttime.5, man/pl/pw_auth.3, man/pl/pwauth.8, man/pl/pwck.8, man/pl/pwconv.8, man/pl/shadow.3, man/pl/shadow.5, man/pl/shadowconfig.8, man/pl/su.1, man/pl/suauth.5: + *** empty log message *** + +2000-09-02 Marek Micha³kiewicz + + * src/groupmod.c, src/grpck.c, src/login.c, src/logoutd.c, src/newgrp.c, src/passwd.c, src/pwck.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, lib/commonio.h, lib/defines.h, lib/groupio.c, lib/pwio.c, lib/sgroupio.c, lib/shadowio.c, man/usermod.8, po/el.po, po/fr.po, po/pl.po, po/sv.po, redhat/Attic/shadow-utils.spec.in, src/chage.c, src/chfn.c, src/chsh.c, src/dpasswd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, configure.in, debian/rules, doc/Attic/CHANGES, doc/LSM, lib/commonio.c: + *** empty log message *** + +2000-08-26 Marek Micha³kiewicz + + * contrib/Makefile.am, contrib/groupmems.shar, doc/LSM, po/el.po, po/fr.po, po/pl.po, po/sv.po, doc/README.mirrors, src/vipw.c, src/Makefile.am, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/logoutd.c, src/mkpasswd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, lib/Makefile.am, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/dialchk.h, lib/dialup.h, lib/encrypt.c, lib/getdef.c, lib/getdef.h, lib/groupio.c, lib/groupio.h, lib/prototypes.h, lib/pwauth.c, lib/pwio.c, lib/pwio.h, lib/rad64.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadowio.h, lib/tcfsio.h, libmisc/chkname.h, libmisc/chowndir.c, libmisc/copydir.c, libmisc/entry.c, libmisc/failure.h, libmisc/getdate.h, libmisc/hushed.c, libmisc/loginprompt.c, libmisc/setupenv.c, libmisc/suauth.c, libmisc/sulog.c, man/Makefile.am, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/pl/Makefile.am, man/pl/groupadd.8, man/pl/groupdel.8, man/pl/groupmod.8, man/pl/useradd.8, man/pl/userdel.8, man/pl/usermod.8, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/shadow.3, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8, etc/login.defs.hurd, etc/login.defs.linux, doc/ANNOUNCE, doc/Attic/CHANGES, doc/README, doc/README.linux, doc/README.pam, doc/WISHLIST, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, Attic/mkinstalldirs, configure.in, Makefile.am: + *** empty log message *** + +1999-08-27 Marek Micha³kiewicz + + * doc/LSM, po/el.po, po/fr.po, po/pl.po, po/sv.po, debian/passwd.postinst, lib/dialchk.c, lib/getdef.c, lib/getpass.c, lib/pwauth.c, libmisc/limits.c, libmisc/rlogin.c, man/limits.5, man/newgrp.1, src/chage.c, src/dpasswd.c, src/gpasswd.c, src/login.c, src/logoutd.c, src/newgrp.c, src/passwd.c, src/sulogin.c, acconfig.h, configure.in, debian/Attic/logoutd, debian/Makefile.am, debian/changelog, debian/control.gnu, debian/control.linux, debian/login.postrm, debian/logoutd.init, debian/passwd.conffiles, debian/passwd.cron, debian/passwd.init, debian/passwd.postrm, debian/rules, doc/Attic/CHANGES, doc/README.mirrors, doc/WISHLIST, etc/Makefile.am, etc/login.defs.hurd, etc/login.defs.linux, lib/defines.h: + *** empty log message *** + +1999-07-09 Marek Micha³kiewicz + + * configure.in, contrib/Makefile.am, debian/changelog, doc/Attic/CHANGES, doc/LSM, doc/WISHLIST, lib/prototypes.h, lib/strcasecmp.c, libmisc/Makefile.am, man/faillog.8, po/el.po, po/pl.po, src/Makefile.am, src/chfn.c, src/chsh.c, src/faillog.c, src/groupmod.c, src/grpconv.c, src/grpunconv.c, src/newgrp.c, src/passwd.c, src/vipw.c: + *** empty log message *** + +1999-06-07 Marek Micha³kiewicz + + * redhat/Attic/shadow-utils.spec.in, src/Makefile.am, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/logoutd.c, src/mkpasswd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/usermod.c, contrib/Makefile.am, contrib/README, contrib/udbachk.tgz, debian/changelog, debian/rules, doc/Attic/CHANGES, doc/LSM, doc/README.linux, doc/README.mirrors, doc/README.platforms, doc/WISHLIST, lib/Makefile.am, lib/fputsx.c, lib/getpass.c, lib/pam_defs.h, lib/prototypes.h, lib/rcsid.h, libmisc/login_desrpc.c, libmisc/pam_pass.c, libmisc/utmp.c, man/login.1, po/el.po, po/pl.po, acconfig.h, configure.in: + *** empty log message *** + +1999-03-07 Marek Micha³kiewicz + + * po/pl.po, po/el.po, doc/LSM, src/useradd.c, src/su.c, src/pwconv.c, src/pwck.c, src/passwd.c, src/newusers.c, src/newgrp.c, src/logoutd.c, src/login.c, src/grpconv.c, src/grpck.c, src/groupadd.c, src/gpasswd.c, src/dpasswd.c, src/chfn.c, src/chage.c, man/usermod.8, man/useradd.8, man/limits.5, man/chage.1, libmisc/valid.c, libmisc/sub.c, libmisc/strtoday.c, libmisc/setupenv.c, libmisc/obscure.c, libmisc/limits.c, libmisc/env.c, lib/snprintf.h, lib/getdef.c, lib/encrypt.c, lib/defines.h, etc/login.defs.linux, doc/WISHLIST, doc/README.nls, doc/README.pam, doc/README.platforms, doc/README.mirrors, doc/README.linux, doc/Makefile.am, doc/Attic/CHANGES, debian/tar.c, debian/rules, debian/Attic/logoutd, debian/control, debian/changelog, configure.in: + *** empty log message *** + +1998-12-28 Marek Micha³kiewicz + + * src/usermod.c, src/userdel.c, src/useradd.c, src/sulogin.c, src/su.c, src/pwunconv.c, src/pwconv.c, src/pwck.c, src/passwd.c, src/newusers.c, src/newgrp.c, src/mkpasswd.c, src/logoutd.c, src/login.c, src/lastlog.c, src/id.c, src/grpunconv.c, src/grpconv.c, src/grpck.c, src/groups.c, src/groupmod.c, src/groupdel.c, src/groupadd.c, src/gpasswd.c, src/faillog.c, src/expiry.c, src/dpasswd.c, src/chsh.c, src/chpasswd.c, src/chfn.c, src/chage.c, po/Attic/doit, po/POTFILES.in, po/el.po, src/Makefile.am, man/usermod.8, man/userdel.8, man/useradd.8, man/sulogin.8, man/su.1, man/shadow.5, man/shadow.3, man/pwck.8, man/pwauth.8, man/pw_auth.3, man/porttime.5, man/passwd.5, man/passwd.1, man/newusers.8, man/newgrp.1, man/mkpasswd.8, man/logoutd.8, man/login.defs.5, man/login.1, man/lastlog.8, man/id.1, man/grpck.8, man/groups.1, man/groupmod.8, man/groupdel.8, man/groupadd.8, man/faillog.8, man/faillog.5, man/dpasswd.8, man/chsh.1, man/chpasswd.8, man/chfn.1, man/chage.1, libmisc/xmalloc.c, libmisc/sub.c, libmisc/suauth.c, libmisc/shell.c, libmisc/setupenv.c, libmisc/pam_pass.c, libmisc/obscure.c, libmisc/mail.c, libmisc/login_desrpc.c, libmisc/limits.c, libmisc/failure.c, libmisc/env.c, libmisc/console.c, libmisc/chowntty.c, libmisc/age.c, libmisc/addgrps.c, libmisc/Makefile.am, lib/strerror.c, lib/pwauth.c, lib/prototypes.h, lib/getpass.c, lib/getdef.c, lib/dialchk.c, lib/defines.h, lib/Makefile.am, doc/WISHLIST, doc/README.platforms, doc/README.mirrors, doc/README.linux, doc/README, doc/LSM, doc/Attic/CHANGES, debian/secure-su.copyright, debian/passwd.copyright, debian/login.copyright, debian/control, debian/changelog, configure.in, acconfig.h, Makefile.am: + *** empty log message *** + +1998-07-24 Marek Micha³kiewicz + + * src/passwd.c, src/su.c, src/userdel.c, src/Makefile.am, src/chage.c, src/faillog.c, src/login.c, lib/pwauth.c, lib/tcfsio.c, lib/tcfsio.h, libmisc/chowntty.c, libmisc/pam_pass.c, libmisc/setugid.c, etc/pam.d/passwd, etc/pam.d/su, lib/Makefile.am, lib/commonio.c, lib/defines.h, lib/prototypes.h, doc/Makefile.am, doc/README.linux, doc/README.mirrors, doc/README.platforms, doc/WISHLIST, etc/Makefile.am, etc/pam.d/Makefile.am, doc/Attic/CHANGES, debian/changelog, configure.in, acconfig.h: + *** empty log message *** + +1998-06-26 Marek Micha³kiewicz + + * src/passwd.c, src/usermod.c, man/faillog.8, man/pwconv.8, src/logoutd.c, lib/getpass.c, libmisc/copydir.c, doc/README.linux, doc/README.mirrors, doc/WISHLIST, lib/commonio.c, debian/changelog, doc/Attic/CHANGES, configure.in: + *** empty log message *** + +1998-05-29 Marek Micha³kiewicz + + * man/lastlog.8, man/login.1, src/usermod.c, doc/Attic/CHANGES, doc/README.linux, etc/login.defs.linux, lib/defines.h, debian/changelog, debian/login.copyright, debian/login.postinst, debian/passwd.copyright, debian/rules, debian/secure-su.copyright, configure.in, contrib/Makefile.am, contrib/shadow-anonftp.patch: + *** empty log message *** + +1998-04-16 Marek Micha³kiewicz + + * src/useradd.c, src/userdel.c, src/usermod.c, src/passwd.c, src/sulogin.c, src/groupdel.c, src/login.c, src/logoutd.c, src/newgrp.c, src/chage.c, src/dpasswd.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, redhat/Attic/shadow-970616-rh.patch, redhat/Attic/shadow-970616-utuser.patch, redhat/Attic/shadow-970616.login.defs, redhat/Attic/shadow-970616.useradd, redhat/Attic/shadow-utils-970616.spec, src/Makefile.am, libmisc/utmp.c, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970616-fix.patch, redhat/Attic/shadow-970616-glibc.patch, libmisc/limits.c, libmisc/log.c, libmisc/login_desrpc.c, libmisc/loginprompt.c, libmisc/obscure.c, libmisc/strtoday.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/copydir.c, libmisc/failure.c, lib/defines.h, lib/dialchk.c, lib/pwauth.c, lib/pwpack.c, doc/Attic/CHANGES, doc/README.linux, doc/WISHLIST, doc/cracklib26.diff, lib/commonio.c, acconfig.h, configure.in, debian/tar.c: + *** empty log message *** + +1998-04-02 Marek Micha³kiewicz + + * src/groupmod.c, libmisc/sulog.c, lib/sgetspent.c, lib/sgetpwent.c, lib/sgetgrent.c, lib/putgrent.c, lib/gshadow.c, lib/getdef.c, lib/fputsx.c, lib/commonio.c, doc/README.linux, doc/README.mirrors, doc/Attic/CHANGES, configure.in: + *** empty log message *** + +1998-01-30 Marek Micha³kiewicz + + * Attic/install-sh, src/userdel.c, src/usermod.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/useradd.c, src/newgrp.c, src/newusers.c, src/passwd.c, src/pwck.c, src/groupmod.c, src/login.c, src/logoutd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/expiry.c, redhat/Attic/README, redhat/Attic/shadow-utils.spec.in, src/Makefile.am, src/chage.c, man/login.defs.5, man/useradd.8, man/usermod.8, redhat/Attic/Makefile.am, libmisc/pam_pass.c, libmisc/strtoday.c, libmisc/tz.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/obscure.c, libmisc/age.c, libmisc/env.c, libmisc/limits.c, lib/shadow.c, lib/shadowio.c, lib/shadowio.h, lib/strstr.c, lib/utent.c, lib/pwio.c, lib/pwio.h, lib/rmdir.c, lib/sgetspent.c, lib/sgroupio.c, lib/mkdir.c, lib/prototypes.h, lib/putgrent.c, lib/pwauth.c, lib/md5crypt.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/commonio.h, lib/defines.h, lib/encrypt.c, lib/getdef.c, lib/getdef.h, doc/Attic/automake-1.0.diff, doc/README.mirrors, doc/WISHLIST, lib/Makefile.am, lib/commonio.c, doc/ANNOUNCE, doc/Attic/CHANGES, doc/Makefile.am, doc/README.limits, doc/README.linux, debian/Makefile.am, debian/changelog, debian/login.copyright, debian/rules, Attic/mkinstalldirs, Attic/shadow-utils.spec, contrib/README, Attic/aclocal.m4, acconfig.h, configure.in, Makefile.am: + *** empty log message *** + +1998-01-25 Marek Micha³kiewicz + + * acconfig.h: *** empty log message *** + +1997-12-14 Marek Micha³kiewicz + + * doc/Attic/CHANGES, debian/checksums, debian/rules, debian/Makefile.am, src/Makefile.am, src/userdel.c, src/usermod.c, src/pwck.c, src/useradd.c, src/mkpasswd.c, src/gpasswd.c, src/grpck.c, src/login.c, src/chage.c, src/chfn.c, src/chsh.c, man/shadowconfig.8, man/vipw.8, old/Makefile.am, old/pwunconv.8, man/Makefile.am, man/login.defs.5, man/pwconv.8, man/pwunconv.8, libmisc/limits.c, libmisc/rlogin.c, lib/prototypes.h, lib/pwdbm.c, lib/pwent.c, lib/shadow.c, doc/LSM, doc/WISHLIST, etc/limits, lib/grent.c, Attic/shadow-utils.spec, debian/changelog, configure.in: + *** empty log message *** + +1997-12-08 Marek Micha³kiewicz + + * src/userdel.c, src/usermod.c, src/shadowconfig.sh, src/su.c, src/sulogin.c, src/useradd.c, src/passwd.c, src/pwck.c, src/pwconv.c, src/pwunconv.c, src/newgrp.c, src/newusers.c, src/logoutd.c, src/mkpasswd.c, src/grpconv.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/grpck.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/faillog.c, src/gpasswd.c, src/Makefile.am, src/chage.c, src/chfn.c, src/chpasswd.c, old/Makefile.am, old/pwconv.8, old/vipw.8, man/Makefile.am, man/limits.5, man/pwconv.8, man/shadowconfig.8, man/vipw.8, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/rlogin.c, libmisc/motd.c, libmisc/myname.c, libmisc/obscure.c, libmisc/pam_pass.c, libmisc/pwd2spwd.c, libmisc/pwd_init.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/failure.h, libmisc/fields.c, libmisc/getdate.c, libmisc/getdate.h, libmisc/getdate.y, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chkname.h, libmisc/chkshell.c, lib/strdup.c, lib/strerror.c, lib/strstr.c, lib/utent.c, libmisc/Makefile.am, libmisc/addgrps.c, lib/sgroupio.c, lib/shadow.c, lib/shadowio.c, lib/spdbm.c, lib/sppack.c, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/rad64.c, lib/pwauth.c, lib/pwdbm.c, lib/pwent.c, lib/pwio.c, lib/pwpack.c, lib/mkdir.c, lib/port.c, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/gsdbm.c, lib/gshadow.c, lib/gspack.c, lib/lockpw.c, lib/md5.c, lib/md5crypt.c, lib/grdbm.c, lib/grent.c, lib/groupio.c, lib/grpack.c, lib/getpass.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/dialchk.c, lib/dialchk.h, doc/Attic/automake-1.0.diff, etc/limits, etc/login.defs.linux, lib/Makefile.am, doc/Attic/CHANGES, doc/README.linux, doc/README.mirrors, doc/WISHLIST, debian/login.conffiles, debian/login.postinst, debian/passwd.postinst, debian/porttime, debian/rules, debian/secure-su.README, debian/securetty, contrib/pwdauth.c, debian/changelog, debian/control, Attic/aclocal.m4, Attic/shadow-utils.spec, acconfig.h, configure.in, Makefile.am: + *** empty log message *** + +1997-10-01 Marek Micha³kiewicz + + * debian/changelog, src/chpasswd.c, libmisc/login_access.c, lib/commonio.h, lib/sgroupio.c, lib/shadowio.c, etc/login.defs.linux, doc/Attic/CHANGES, doc/LSM, doc/README.mirrors, doc/WISHLIST, Attic/shadow-utils.spec: + *** empty log message *** + +1997-09-30 Marek Micha³kiewicz + + * src/useradd.c, src/userdel.c, src/usermod.c, src/pwconv.c, src/pwunconv.c, src/su.c, src/newusers.c, src/passwd.c, src/pwck.c, src/grpck.c, src/grpconv.c, src/grpunconv.c, src/login.c, src/groupmod.c, src/dpasswd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/Makefile.am, old/Attic/install-sh, old/pwconv-old.8, old/pwunconv-old.8, old/Makefile.am, man/pwconv.8, man/pwunconv.8, libmisc/setugid.c, libmisc/shell.c, libmisc/utmp.c, libmisc/mail.c, libmisc/obscure.c, libmisc/pam_pass.c, libmisc/salt.c, libmisc/isexpired.c, libmisc/login_access.c, libmisc/env.c, libmisc/fields.c, libmisc/addgrps.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, lib/strerror.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadowio.c, lib/shadowio.h, lib/snprintf.c, lib/snprintf.h, lib/putgrent.c, lib/pwauth.c, lib/pwent.c, lib/getpass.c, lib/grent.c, lib/prototypes.h, lib/commonio.c, lib/commonio.h, lib/defines.h, lib/encrypt.c, lib/getdef.c, lib/Makefile.am, etc/login.defs.linux, doc/README.linux, doc/README.mirrors, doc/WISHLIST, doc/Attic/CHANGES, doc/LSM, doc/Makefile.am, debian/rules, debian/changelog, contrib/adduser.c, configure.in, acconfig.h: + *** empty log message *** + +1997-09-29 Marek Micha³kiewicz + + * man/chpasswd.8, man/pwconv.8, man/pwunconv.8, man/su.1, man/Makefile.am: + *** empty log message *** + +1997-06-16 Marek Micha³kiewicz + + * doc/Attic/console.c.spec, doc/Makefile.am, doc/WISHLIST, doc/console.c.spec.txt, doc/Attic/CHANGES, debian/changelog, src/shadowconfig.sh, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970502-config.patch, redhat/Attic/shadow-utils.spec, doc/README.mirrors, doc/README.shadow-paper, doc/README.linux, debian/login.copyright, debian/passwd.copyright, debian/secure-su.copyright, Attic/shadow-utils.spec, Makefile.am, configure.in: + *** empty log message *** + +1997-06-01 Marek Micha³kiewicz + + * debian/changelog, src/userdel.c, src/usermod.c, src/pwck.c, src/pwunconv.c, src/useradd.c, src/grpunconv.c, src/newusers.c, src/passwd.c, src/expiry.c, src/grpconv.c, src/chage.c, src/chfn.c, src/chpasswd.c, src/chsh.c, src/Makefile.am, redhat/Attic/Makefile.am, redhat/Attic/README, redhat/Attic/shadow-970502-config.patch, redhat/Attic/shadow-utils.spec, libmisc/mail.c, libmisc/login_desrpc.c, lib/pwio.h, lib/shadowio.c, lib/shadowio.h, lib/prototypes.h, lib/pwauth.c, lib/pwio.c, lib/commonio.c, lib/defines.h, doc/README.linux, doc/WISHLIST, doc/Attic/CHANGES, doc/INSTALL, Attic/install-sh, Attic/mkinstalldirs, Makefile.am, acconfig.h, configure.in: + *** empty log message *** + +1997-05-02 Marek Micha³kiewicz + + * src/shadowconfig.sh, src/Makefile.am, man/Makefile.am, libmisc/mail.c, libmisc/salt.c, lib/sgroupio.c, lib/shadowio.c, lib/groupio.c, lib/pwio.c, etc/Makefile.am, doc/WISHLIST, doc/Attic/CHANGES, debian/Attic/shadowconfig, debian/Makefile.am, debian/changelog, debian/control, debian/rules, configure.in, Attic/configure, shlib/Attic/Makefile.in, man/Attic/Makefile.in, libmisc/Attic/Makefile.in, lib/Attic/Makefile.in, etc/Attic/Makefile.in, doc/Attic/Makefile.in, contrib/Attic/Makefile.in, Attic/Makefile.in, man/userdel.8, man/usermod.8, man/shadow.5, man/su.1, man/sulogin.8, man/useradd.8, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/limits.5, man/login.1, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/faillog.5, man/faillog.8, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, libmisc/valid.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/utmp.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/sub.c, libmisc/setugid.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/login_access.c, libmisc/loginprompt.c, libmisc/motd.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/age.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, lib/utent.c, lib/shadow_.h, lib/spdbm.c, lib/sppack.c, lib/strstr.c, lib/shadow.c, lib/sgetpwent.c, lib/sgetspent.c, lib/pwpack.c, lib/rad64.c, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/port.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.c, lib/lastlog_.h, lib/lockpw.c, lib/mkdir.c, lib/port.c, lib/grpack.c, lib/gsdbm.c, lib/gshadow.c, lib/gshadow_.h, lib/gspack.c, lib/getdef.c, lib/getpass.c, lib/grdbm.c, lib/grent.c, lib/dialup.h, lib/encrypt.c, lib/faillog.h, lib/fputsx.c, lib/commonio.c, lib/defines.h, lib/dialchk.c, lib/dialup.c, etc/login.defs, etc/login.defs.linux, doc/README.linux, doc/LICENSE, doc/Makefile.am, doc/README, doc/HOWTO, doc/ANNOUNCE, debian/secure-su.README, debian/secure-su.conffiles, debian/secure-su.copyright, debian/secure-su.postrm, debian/secure-su.preinst, debian/securetty, debian/passwd.conffiles, debian/passwd.copyright, debian/passwd.postinst, debian/porttime, debian/Attic/logoutd, debian/login.conffiles, debian/login.copyright, debian/login.postinst, debian/login.postrm, debian/login.preinst, debian/login.prerm, Attic/config.h.in, acconfig.h, Makefile.am, old/Attic/Makefile.in, old/scologin.c, old/orig-config.h, old/pwconv-old.c, old/pwd.h.m4, old/pwunconv-old.c, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/config.h.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/Makefile.am, old/Makefile.linux, src/Attic/Makefile.in, src/pwconv.c, src/userdel.c, src/usermod.c, src/useradd.c, src/su.c, src/sulogin.c, src/Attic/pwconv5.c, src/Attic/scologin.c, src/pwck.c, src/pwunconv.c, src/newusers.c, src/passwd.c, src/patchlevel.h, src/logoutd.c, src/mkpasswd.c, src/newgrp.c, src/grpunconv.c, src/id.c, src/lastlog.c, src/login.c, src/grpck.c, src/grpconv.c, src/groupdel.c, src/groupmod.c, src/groups.c, src/faillog.c, src/gpasswd.c, src/groupadd.c, src/chsh.c, src/dpasswd.c, src/expiry.c, src/chfn.c, src/chpasswd.c, src/chage.c: + *** empty log message *** + +1997-02-11 Marek Micha³kiewicz + + * src/groupadd.c, src/useradd.c, libmisc/setupenv.c, lib/sgroupio.c, lib/shadowio.c, lib/groupio.c, lib/pwio.c, lib/Makefile.am, lib/commonio.c, doc/Attic/CHANGES, doc/HOWTO, README, configure.in: + *** empty log message *** + +1997-01-08 Marek Micha³kiewicz + + * src/groupadd.c, lib/commonio.c, README, src/useradd.c, src/userdel.c, src/usermod.c, src/Attic/pwconv5.c, src/pwconv.c, src/su.c, src/passwd.c, src/pwck.c, src/grpunconv.c, src/login.c, src/logoutd.c, src/newgrp.c, src/grpck.c, src/grpconv.c, src/faillog.c, src/gpasswd.c, src/groupmod.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, libmisc/ttytype.c, libmisc/utmp.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/shell.c, libmisc/failure.c, libmisc/log.c, libmisc/loginprompt.c, libmisc/myname.c, lib/shadowio.h, libmisc/Makefile.am, libmisc/chkname.c, lib/sgetpwent.c, lib/sgroupio.c, lib/sgroupio.h, lib/shadow.c, lib/shadowio.c, lib/pwent.c, lib/pwio.c, lib/pwio.h, lib/groupio.c, lib/groupio.h, lib/gshadow.c, lib/prototypes.h, lib/putgrent.c, lib/defines.h, lib/faillog.h, lib/getdef.c, doc/README.linux, doc/WISHLIST, etc/login.defs.linux, lib/Makefile.am, doc/Attic/CHANGES, doc/HOWTO, acconfig.h, configure.in: + *** empty log message *** + +1996-10-27 Marek Micha³kiewicz + + * src/usermod.c, src/grpck.c, src/useradd.c, src/userdel.c, src/chsh.c, src/gpasswd.c, libmisc/isexpired.c, libmisc/limits.c, lib/sgroupio.c, lib/shadowio.c, lib/commonio.c, lib/groupio.c, lib/pwio.c, doc/Attic/CHANGES, doc/README.linux, doc/WISHLIST, Attic/configure, configure.in: + *** empty log message *** + +1996-09-25 Marek Micha³kiewicz + + * src/usermod.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/su.c, src/Attic/pwconv5.c, src/newgrp.c, src/passwd.c, src/pwck.c, src/grpck.c, src/login.c, src/logoutd.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/chfn.c, src/chsh.c, src/chage.c, libmisc/strtoday.c, libmisc/env.c, libmisc/fields.c, libmisc/isexpired.c, libmisc/setupenv.c, lib/getdef.c, lib/prototypes.h, lib/rad64.c, lib/defines.h, etc/login.defs.linux, doc/README.linux, doc/WISHLIST, doc/Attic/CHANGES, Attic/configure, configure.in, Attic/config.h.in: + *** empty log message *** + +1996-09-20 Marek Micha³kiewicz + + * src/usermod.c, src/su.c, src/sulogin.c, src/useradd.c, src/userdel.c, src/newusers.c, src/passwd.c, src/pwck.c, src/grpck.c, src/login.c, src/logoutd.c, src/newgrp.c, src/groupdel.c, src/groupmod.c, src/chsh.c, src/dpasswd.c, src/gpasswd.c, src/groupadd.c, src/Attic/Makefile.in, src/chage.c, src/chfn.c, src/Makefile.am, libmisc/shell.c, libmisc/suauth.c, libmisc/sub.c, libmisc/ttytype.c, libmisc/env.c, libmisc/setugid.c, libmisc/setupenv.c, libmisc/chowntty.c, lib/prototypes.h, lib/getdef.c, doc/Attic/CHANGES, doc/WISHLIST: + *** empty log message *** + +1996-09-10 Marek Micha³kiewicz + + * src/su.c, src/sulogin.c, src/usermod.c, src/logoutd.c, src/newgrp.c, src/passwd.c, src/pwconv.c, src/Attic/Makefile.in, src/chfn.c, src/chsh.c, src/grpunconv.c, src/login.c, src/Makefile.am, man/useradd.8, man/userdel.8, man/usermod.8, man/shadow.3, man/shadow.5, man/su.1, man/suauth.5, man/sulogin.8, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.access.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, libmisc/isexpired.c, libmisc/obscure.c, libmisc/setupenv.c, libmisc/utmp.c, libmisc/age.c, lib/defines.h, lib/getdef.c, lib/getpass.c, etc/limits, etc/login.access, etc/login.defs.linux, doc/Attic/CHANGES, doc/README.linux, doc/WISHLIST, contrib/Attic/Makefile.in, contrib/Makefile.am, Attic/configure, configure.in: + *** empty log message *** + +1996-08-10 Marek Micha³kiewicz + + * old/Attic/install-sh, old/Makefile.am, old/Makefile.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/config.h.linux, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/orig-config.h, old/pwd.h.m4, shlib/Attic/Makefile.in, shlib/Makefile.am, shlib/Makefile.in.saved: + 960810 - first version under cvs + + * old/Attic/install-sh, old/Makefile.am, old/Makefile.linux, old/Makefile.sun4, old/Makefile.svr4, old/Makefile.xenix, old/config.h.linux, old/config.h.sun4, old/config.h.svr4, old/config.h.xenix, old/orig-config.h, old/pwd.h.m4, shlib/Attic/Makefile.in, shlib/Makefile.am, shlib/Makefile.in.saved: + New file. + + * contrib/Attic/Makefile.in, contrib/Makefile.am, contrib/README, contrib/adduser-old.c, contrib/adduser.c, contrib/adduser.sh, contrib/adduser2.sh, contrib/atudel, contrib/pwdauth.c, doc/ANNOUNCE, doc/Attic/CHANGES, doc/Attic/Makefile.in, doc/Attic/automake-1.0.diff, doc/Attic/console.c.spec, doc/HOWTO, doc/LICENSE, doc/Makefile.am, doc/README, doc/README.limits, doc/README.linux, doc/README.sun4, doc/WISHLIST, etc/Attic/Makefile.in, etc/Makefile.am, etc/login.access, etc/login.defs, etc/login.defs.linux, old/Attic/Makefile.in, src/Attic/pwconv5.c, src/Attic/scologin.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, src/gpasswd.c, src/groups.c, src/grpconv.c, src/id.c, src/login.c, src/newgrp.c, src/passwd.c, src/patchlevel.h, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c: + 960810 - first version under cvs + + * contrib/Attic/Makefile.in, contrib/Makefile.am, contrib/README, contrib/adduser-old.c, contrib/adduser.c, contrib/adduser.sh, contrib/adduser2.sh, contrib/atudel, contrib/pwdauth.c, doc/ANNOUNCE, doc/Attic/CHANGES, doc/Attic/Makefile.in, doc/Attic/automake-1.0.diff, doc/Attic/console.c.spec, doc/HOWTO, doc/LICENSE, doc/Makefile.am, doc/README, doc/README.limits, doc/README.linux, doc/README.sun4, doc/WISHLIST, etc/Attic/Makefile.in, etc/Makefile.am, etc/login.access, etc/login.defs, etc/login.defs.linux, old/Attic/Makefile.in, src/Attic/pwconv5.c, src/Attic/scologin.c, src/chage.c, src/chfn.c, src/chsh.c, src/expiry.c, src/gpasswd.c, src/groups.c, src/grpconv.c, src/id.c, src/login.c, src/newgrp.c, src/passwd.c, src/patchlevel.h, src/pwconv.c, src/pwunconv.c, src/su.c, src/sulogin.c: + New file. + + * lib/defines.h, lib/dialup.h, lib/faillog.h, lib/getdef.h, lib/grdbm.c, lib/grent.c, lib/groupio.h, lib/grpack.c, lib/gsdbm.c, lib/gshadow_.h, lib/gspack.c, lib/lastlog_.h, lib/md5.c, lib/md5.h, lib/md5crypt.c, lib/mkdir.c, lib/port.h, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/pwio.h, lib/pwpack.c, lib/rcsid.h, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/sgroupio.h, lib/shadow.c, lib/shadow_.h, lib/shadowio.c, lib/shadowio.h, lib/spdbm.c, lib/sppack.c, lib/strdup.c, lib/strstr.c, lib/utent.c, src/Attic/Makefile.in, src/Makefile.am, src/chpasswd.c, src/dpasswd.c, src/faillog.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/grpck.c, src/lastlog.c, src/logoutd.c, src/mkpasswd.c, src/newusers.c, src/pwck.c, src/useradd.c, src/userdel.c, src/usermod.c: + 960810 - first version under cvs + + * lib/defines.h, lib/dialup.h, lib/faillog.h, lib/getdef.h, lib/grdbm.c, lib/grent.c, lib/groupio.h, lib/grpack.c, lib/gsdbm.c, lib/gshadow_.h, lib/gspack.c, lib/lastlog_.h, lib/md5.c, lib/md5.h, lib/md5crypt.c, lib/mkdir.c, lib/port.h, lib/prototypes.h, lib/putgrent.c, lib/putpwent.c, lib/putspent.c, lib/pwauth.h, lib/pwdbm.c, lib/pwent.c, lib/pwio.h, lib/pwpack.c, lib/rcsid.h, lib/rename.c, lib/rmdir.c, lib/sgetgrent.c, lib/sgetpwent.c, lib/sgetspent.c, lib/sgroupio.h, lib/shadow.c, lib/shadow_.h, lib/shadowio.c, lib/shadowio.h, lib/spdbm.c, lib/sppack.c, lib/strdup.c, lib/strstr.c, lib/utent.c, src/Attic/Makefile.in, src/Makefile.am, src/chpasswd.c, src/dpasswd.c, src/faillog.c, src/groupadd.c, src/groupdel.c, src/groupmod.c, src/grpck.c, src/lastlog.c, src/logoutd.c, src/mkpasswd.c, src/newusers.c, src/pwck.c, src/useradd.c, src/userdel.c, src/usermod.c: + New file. + + * lib/Attic/Makefile.in, lib/Makefile.am, lib/commonio.c, lib/dialchk.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/port.c, lib/pwauth.c, lib/pwio.c, lib/rad64.c, lib/sgroupio.c, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/motd.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, man/Attic/Makefile.in, man/Makefile.am, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.access.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/shadow.5, man/su.1, man/suauth.5, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8: + 960810 - first version under cvs + + * lib/Attic/Makefile.in, lib/Makefile.am, lib/commonio.c, lib/dialchk.c, lib/dialup.c, lib/encrypt.c, lib/fputsx.c, lib/getdef.c, lib/getpass.c, lib/groupio.c, lib/gshadow.c, lib/lockpw.c, lib/port.c, lib/pwauth.c, lib/pwio.c, lib/rad64.c, lib/sgroupio.c, libmisc/age.c, libmisc/basename.c, libmisc/chkname.c, libmisc/chowndir.c, libmisc/chowntty.c, libmisc/console.c, libmisc/copydir.c, libmisc/entry.c, libmisc/env.c, libmisc/failure.c, libmisc/fields.c, libmisc/hushed.c, libmisc/isexpired.c, libmisc/limits.c, libmisc/list.c, libmisc/log.c, libmisc/login_access.c, libmisc/login_desrpc.c, libmisc/login_krb.c, libmisc/loginprompt.c, libmisc/mail.c, libmisc/motd.c, libmisc/obscure.c, libmisc/pwd2spwd.c, libmisc/rlogin.c, libmisc/salt.c, libmisc/setugid.c, libmisc/setup.c, libmisc/setupenv.c, libmisc/shell.c, libmisc/strtoday.c, libmisc/suauth.c, libmisc/sub.c, libmisc/sulog.c, libmisc/ttytype.c, libmisc/tz.c, libmisc/ulimit.c, libmisc/utmp.c, libmisc/valid.c, libmisc/xmalloc.c, man/Attic/Makefile.in, man/Makefile.am, man/chage.1, man/chfn.1, man/chpasswd.8, man/chsh.1, man/dpasswd.8, man/faillog.5, man/faillog.8, man/gpasswd.1, man/groupadd.8, man/groupdel.8, man/groupmod.8, man/groups.1, man/grpck.8, man/id.1, man/lastlog.8, man/login.1, man/login.access.5, man/login.defs.5, man/logoutd.8, man/mkpasswd.8, man/newgrp.1, man/newusers.8, man/passwd.1, man/passwd.5, man/porttime.5, man/pw_auth.3, man/pwauth.8, man/pwck.8, man/pwconv.8, man/pwunconv.8, man/shadow.3, man/shadow.5, man/su.1, man/suauth.5, man/sulogin.8, man/useradd.8, man/userdel.8, man/usermod.8: + New file. + + * Attic/Makefile.in, Attic/aclocal.m4, Attic/config.h.in, Attic/configure, Attic/install-sh, Attic/mkinstalldirs, Attic/stamp-h.in, Makefile.am, README, acconfig.h, configure.in, libmisc/Attic/Makefile.in, libmisc/Makefile.am, libmisc/addgrps.c: + 960810 - first version under cvs + + * Attic/Makefile.in, Attic/aclocal.m4, Attic/config.h.in, Attic/configure, Attic/install-sh, Attic/mkinstalldirs, Attic/stamp-h.in, Makefile.am, README, acconfig.h, configure.in, libmisc/Attic/Makefile.in, libmisc/Makefile.am, libmisc/addgrps.c: + New file. + diff --git a/Makefile.am b/Makefile.am index 36b1db1e..867a0aac 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,6 +1,8 @@ ## Process this file with automake to produce Makefile.in +EXTRA_DIST = NEWS README TODO shadow-utils.spec.in + AUTOMAKE_OPTIONS = 1.0 foreign SUBDIRS = intl po man lib libmisc src \ - contrib debian doc etc redhat # old + contrib debian doc etc diff --git a/Makefile.in b/Makefile.in index b608fad7..e7d90ba5 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -46,9 +46,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -76,7 +77,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -89,7 +89,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -102,22 +101,25 @@ VERSION = @VERSION@ YACC = @YACC@ l = @l@ +EXTRA_DIST = NEWS README TODO shadow-utils.spec.in + AUTOMAKE_OPTIONS = 1.0 foreign -SUBDIRS = intl po man lib libmisc src contrib debian doc etc redhat # old +SUBDIRS = intl po man lib libmisc src contrib debian doc etc ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = config.h -CONFIG_CLEAN_FILES = -DIST_COMMON = ./stamp-h.in ABOUT-NLS Makefile.am Makefile.in acconfig.h \ -aclocal.m4 config.guess config.h.in config.sub configure configure.in \ -install-sh ltconfig ltmain.sh missing mkinstalldirs +CONFIG_CLEAN_FILES = shadow-utils.spec +DIST_COMMON = README ./stamp-h.in ABOUT-NLS ChangeLog Makefile.am \ +Makefile.in NEWS TODO acconfig.h aclocal.m4 config.guess config.h.in \ +config.sub configure configure.in install-sh ltconfig ltmain.sh missing \ +mkinstalldirs shadow-utils.spec.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: @@ -163,6 +165,8 @@ distclean-hdr: -rm -f config.h maintainer-clean-hdr: +shadow-utils.spec: $(top_builddir)/config.status shadow-utils.spec.in + cd $(top_builddir) && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -294,7 +298,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -336,7 +340,7 @@ uninstall: uninstall-recursive all-am: Makefile config.h all-redirect: all-recursive-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: installdirs-recursive installdirs-am: diff --git a/doc/CHANGES b/NEWS similarity index 97% rename from doc/CHANGES rename to NEWS index 36d2ab10..4411b310 100644 --- a/doc/CHANGES +++ b/NEWS @@ -1,4 +1,19 @@ -$Id: CHANGES,v 1.30 2000/09/02 18:40:42 marekm Exp $ +$Id: NEWS,v 1.2 2000/10/12 03:19:03 kloczek Exp $ + +shadow-20000902 => shadow-20001012 + +- removed /redhat directory with obsoleted files (partialy rewrited spec + file is now in root directory), +- aplayed shadow-19990827-group.patch patch from RH wich prevents adduser + overwrite previously existing groups in adduser, +- added PAM support for chage (bind to "chage" PAM config file) also + added PAM support for all other small tools like chpasswd, groupadd, + groupdel, groupmod, newusers, useradd, userdel, usermod (bind to common + "shadow" PAM config file) - this modificaytions mainly based on + modifications prepared by Janek Rêkojarski , +- many small fixes and improvments in automake (mow "make dist" + works correctly), +- added cs translation (Jiri Pavlovsky ). shadow-20000826 => shadow-20000902 @@ -691,4 +706,3 @@ shadow-3.3.2 => shadow-3.3.2-951106 shadow-3.3.2 Original version, received directly from the author. - diff --git a/README b/README new file mode 100644 index 00000000..f611da18 --- /dev/null +++ b/README @@ -0,0 +1,28 @@ +Shadow SITES +============ + +FTP site + ftp://ftp.pld.org.pl/software/shadow + +CVS repository + anonymous read only access :pserver:cvs@anoncvs.pld.org.pl:/cvsroot + module: shadow + password: cvs + +CVS web interface + http://cvsweb.pld.org.pl/index.cgi/shadow/ + http://cvs.pld.org.pl/shadow/ + +Mailing lists + for general discuss: shadow@pld.org.pl + subscribe by send empty mail to shadow-subscribe@pld.org.pl + cvs commit list: shadow-commit@pld.org.pl + +Mailing lists archives: + shadow@pld.org.pl - http://lists.pld.org.pl/archive/index.htm?10 + shadow-commit@pld.org.pl - http://lists.pld.org.pl/archive/index.htm?11 + +Maintainer contact +================== + +Tomasz K³oczko diff --git a/TODO b/TODO new file mode 100644 index 00000000..82213a96 --- /dev/null +++ b/TODO @@ -0,0 +1,7 @@ +- fix nscd flushing databases on change (I'm still not shure where it will + be bether add this on shadow or on PAM level), + +- add more translations (maintainners for man pages and gettext files + welcome), + +- move all doc to docbook (maybe also man pages). diff --git a/aclocal.m4 b/aclocal.m4 index 7f119fd2..765fdbf4 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,4 +1,4 @@ -dnl aclocal.m4 generated automatically by aclocal 1.4 +dnl aclocal.m4 generated automatically by aclocal 1.4a dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation @@ -21,6 +21,8 @@ dnl AM_INIT_AUTOMAKE(package,version, [no-define]) AC_DEFUN(AM_INIT_AUTOMAKE, [AC_REQUIRE([AC_PROG_INSTALL]) +dnl We require 2.13 because we rely on SHELL being computed by configure. +AC_PREREQ([2.13]) PACKAGE=[$1] AC_SUBST(PACKAGE) VERSION=[$2] @@ -249,7 +251,7 @@ LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ -$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \ +$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ || AC_MSG_ERROR([libtool configure failed]) # Reload cache, that may have been modified by ltconfig @@ -281,8 +283,18 @@ AC_REQUIRE([AC_PROG_NM])dnl AC_REQUIRE([AC_PROG_LN_S])dnl dnl +case "$target" in +NONE) lt_target="$host" ;; +*) lt_target="$target" ;; +esac + # Check for any special flags to pass to ltconfig. -libtool_flags="--cache-file=$cache_file" +# +# the following will cause an existing older ltconfig to fail, so +# we ignore this at the expense of the cache file... Checking this +# will just take longer ... bummer! +#libtool_flags="--cache-file=$cache_file" +# test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" @@ -299,7 +311,7 @@ test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" # Some flags need to be propagated to the compiler or linker for good # libtool support. -case "$host" in +case "$lt_target" in *-*-irix6*) # Find out which ABI we are using. echo '[#]line __oline__ "configure"' > conftest.$ac_ext @@ -515,7 +527,6 @@ else AC_MSG_RESULT(no) fi test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -AC_SUBST(LD) AC_PROG_LD_GNU ]) @@ -561,14 +572,13 @@ else fi]) NM="$ac_cv_path_NM" AC_MSG_RESULT([$NM]) -AC_SUBST(NM) ]) # AC_CHECK_LIBM - check for math library AC_DEFUN(AC_CHECK_LIBM, [AC_REQUIRE([AC_CANONICAL_HOST])dnl LIBM= -case "$host" in +case "$lt_target" in *-*-beos* | *-*-cygwin*) # These system don't have libm ;; @@ -583,31 +593,35 @@ esac ]) # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl convenience library, adds --enable-ltdl-convenience to -# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor -# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed -# to be `${top_builddir}/libltdl'. Make sure you start DIR with -# '${top_builddir}/' (note the single quotes!) if your package is not -# flat, and, if you're not using automake, define top_builddir as -# appropriate in the Makefiles. +# the libltdl convenience library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-convenience to the +# configure arguments. Note that LIBLTDL and INCLTDL are not +# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not +# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed +# with '${top_builddir}/' and INCLTDL will be prefixed with +# '${top_srcdir}/' (note the single quotes!). If your package is not +# flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl case "$enable_ltdl_convenience" in no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; "") enable_ltdl_convenience=yes ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; esac - LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la - INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) ]) # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for -# the libltdl installable library, and adds --enable-ltdl-install to -# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor -# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed -# to be `${top_builddir}/libltdl'. Make sure you start DIR with -# '${top_builddir}/' (note the single quotes!) if your package is not -# flat, and, if you're not using automake, define top_builddir as -# appropriate in the Makefiles. +# the libltdl installable library and INCLTDL to the include flags for +# the libltdl header and adds --enable-ltdl-install to the configure +# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is +# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed +# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will +# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed +# with '${top_srcdir}/' (note the single quotes!). If your package is +# not flat and you're not using automake, define top_builddir and +# top_srcdir appropriately in the Makefiles. # In the future, this macro may have to be called after AC_PROG_LIBTOOL. AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl AC_CHECK_LIB(ltdl, main, @@ -620,8 +634,8 @@ AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl ]) if test x"$enable_ltdl_install" = x"yes"; then ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la - INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) + LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la + INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) else ac_configure_args="$ac_configure_args --enable-ltdl-install=no" LIBLTDL="-lltdl" diff --git a/config.guess b/config.guess index 6cb567b8..0ce538bb 100755 --- a/config.guess +++ b/config.guess @@ -1,6 +1,6 @@ #! /bin/sh # Attempt to guess a canonical system name. -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999 +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 # Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify it @@ -23,8 +23,7 @@ # the same distribution terms that you use for the rest of that program. # Written by Per Bothner . -# The master version of this file is at the FSF in /home/gd/gnu/lib. -# Please send patches to the Autoconf mailing list . +# Please send patches to . # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and @@ -68,6 +67,43 @@ trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15 # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in + *:NetBSD:*:*) + # Netbsd (nbsd) targets should (where applicable) match one or + # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently + # switched to ELF, *-*-netbsd* would select the old + # object file format. This provides both forward + # compatibility and a consistent mechanism for selecting the + # object file format. + # Determine the machine/vendor (is the vendor relevant). + case "${UNAME_MACHINE}" in + amiga) machine=m68k-cbm ;; + arm32) machine=arm-unknown ;; + atari*) machine=m68k-atari ;; + sun3*) machine=m68k-sun ;; + mac68k) machine=m68k-apple ;; + macppc) machine=powerpc-apple ;; + hp3[0-9][05]) machine=m68k-hp ;; + ibmrt|romp-ibm) machine=romp-ibm ;; + *) machine=${UNAME_MACHINE}-unknown ;; + esac + # The Operating System including object format. + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep __ELF__ >/dev/null + then + # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). + # Return netbsd for either. FIX? + os=netbsd + else + os=netbsdelf + fi + # The OS release + release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` + # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: + # contains redundant information, the shorter form: + # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. + echo "${machine}-${os}${release}" + exit 0 ;; alpha:OSF1:*:*) if test $UNAME_RELEASE = "V4.0"; then UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` @@ -77,41 +113,51 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. cat <$dummy.s + .data +\$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + + .text .globl main + .align 4 .ent main main: - .frame \$30,0,\$26,0 - .prologue 0 - .long 0x47e03d80 # implver $0 - lda \$2,259 - .long 0x47e20c21 # amask $2,$1 - srl \$1,8,\$2 - sll \$2,2,\$2 - sll \$0,3,\$0 - addl \$1,\$0,\$0 - addl \$2,\$0,\$0 - ret \$31,(\$26),1 + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit .end main EOF $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null if test "$?" = 0 ; then - ./$dummy - case "$?" in - 7) + case `./$dummy` in + 0-0) UNAME_MACHINE="alpha" ;; - 15) + 1-0) UNAME_MACHINE="alphaev5" ;; - 14) + 1-1) UNAME_MACHINE="alphaev56" ;; - 10) + 1-101) UNAME_MACHINE="alphapca56" ;; - 16) + 2-303) UNAME_MACHINE="alphaev6" ;; + 2-307) + UNAME_MACHINE="alphaev67" + ;; esac fi rm -f $dummy.s $dummy @@ -129,9 +175,6 @@ EOF Amiga*:UNIX_System_V:4.0:*) echo m68k-cbm-sysv4 exit 0;; - amiga:NetBSD:*:*) - echo m68k-cbm-netbsd${UNAME_RELEASE} - exit 0 ;; amiga:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; @@ -156,12 +199,12 @@ EOF wgrisc:OpenBSD:*:*) echo mipsel-unknown-openbsd${UNAME_RELEASE} exit 0 ;; + *:OS/390:*:*) + echo i370-ibm-openedition + exit 0 ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit 0;; - arm32:NetBSD:*:*) - echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - exit 0 ;; SR2?01:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit 0;; @@ -218,15 +261,12 @@ EOF aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} exit 0 ;; - atari*:NetBSD:*:*) - echo m68k-atari-netbsd${UNAME_RELEASE} - exit 0 ;; atari*:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not - # "atarist" or "atariste" at least should have a processor + # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not @@ -250,15 +290,9 @@ EOF *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit 0 ;; - sun3*:NetBSD:*:*) - echo m68k-sun-netbsd${UNAME_RELEASE} - exit 0 ;; sun3*:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; - mac68k:NetBSD:*:*) - echo m68k-apple-netbsd${UNAME_RELEASE} - exit 0 ;; mac68k:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; @@ -271,9 +305,6 @@ EOF powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit 0 ;; - macppc:NetBSD:*:*) - echo powerpc-apple-netbsd${UNAME_RELEASE} - exit 0 ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit 0 ;; @@ -289,6 +320,7 @@ EOF mips:*:*:UMIPS | mips:*:*:RISCos) sed 's/^ //' << EOF >$dummy.c #ifdef __cplusplus +#include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { @@ -328,15 +360,18 @@ EOF AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` - if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then - if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \ - -o ${TARGET_BINARY_INTERFACE}x = x ] ; then + if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] + then + if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ + [ ${TARGET_BINARY_INTERFACE}x = x ] + then echo m88k-dg-dgux${UNAME_RELEASE} - else + else echo m88k-dg-dguxbcs${UNAME_RELEASE} + fi + else + echo i586-dg-dgux${UNAME_RELEASE} fi - else echo i586-dg-dgux${UNAME_RELEASE} - fi exit 0 ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 @@ -402,7 +437,7 @@ EOF ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 exit 0 ;; - ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and + ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to exit 0 ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) @@ -423,6 +458,8 @@ EOF 9000/[34]?? ) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) sed 's/^ //' << EOF >$dummy.c + + #define _HPUX_SOURCE #include #include @@ -453,7 +490,7 @@ EOF exit (0); } EOF - ($CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` + (CCOPTS= $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` rm -f $dummy.c $dummy esac HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` @@ -547,10 +584,13 @@ EOF -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ exit 0 ;; CRAY*TS:*:*:*) - echo t90-cray-unicos${UNAME_RELEASE} + echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY*T3E:*:*:*) - echo t3e-cray-unicosmk${UNAME_RELEASE} + echo alpha-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' + exit 0 ;; + CRAY*SV1:*:*:*) + echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit 0 ;; CRAY-2:*:*:*) echo cray2-cray-unicos @@ -563,13 +603,10 @@ EOF F301:UNIX_System_V:*:*) echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'` exit 0 ;; - hp3[0-9][05]:NetBSD:*:*) - echo m68k-hp-netbsd${UNAME_RELEASE} - exit 0 ;; hp300:OpenBSD:*:*) echo m68k-unknown-openbsd${UNAME_RELEASE} exit 0 ;; - i?86:BSD/386:*:* | i?86:BSD/OS:*:*) + i?86:BSD/386:*:* | i?86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit 0 ;; sparc*:BSD/OS:*:*) @@ -579,17 +616,8 @@ EOF echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit 0 ;; *:FreeBSD:*:*) - if test -x /usr/bin/objformat; then - if test "elf" = "`/usr/bin/objformat`"; then - echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'` - exit 0 - fi - fi echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit 0 ;; - *:NetBSD:*:*) - echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` - exit 0 ;; *:OpenBSD:*:*) echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` exit 0 ;; @@ -618,12 +646,6 @@ EOF echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit 0 ;; *:Linux:*:*) - # uname on the ARM produces all sorts of strangeness, and we need to - # filter it out. - case "$UNAME_MACHINE" in - armv*) UNAME_MACHINE=$UNAME_MACHINE ;; - arm* | sa110*) UNAME_MACHINE="arm" ;; - esac # The BFD linker knows what the default object file format is, so # first see if it will tell us. cd to the root directory to prevent @@ -636,12 +658,43 @@ EOF s/ .*// p'` case "$ld_supported_emulations" in - i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;; - i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;; - sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; - armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; - m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; - elf32ppc) + *ia64) + echo "${UNAME_MACHINE}-unknown-linux" + exit 0 + ;; + i?86linux) + echo "${UNAME_MACHINE}-pc-linux-gnuaout" + exit 0 + ;; + elf_i?86) + echo "${UNAME_MACHINE}-pc-linux" + exit 0 + ;; + i?86coff) + echo "${UNAME_MACHINE}-pc-linux-gnucoff" + exit 0 + ;; + sparclinux) + echo "${UNAME_MACHINE}-unknown-linux-gnuaout" + exit 0 + ;; + armlinux) + echo "${UNAME_MACHINE}-unknown-linux-gnuaout" + exit 0 + ;; + elf32arm*) + echo "${UNAME_MACHINE}-unknown-linux-gnuoldld" + exit 0 + ;; + armelf_linux*) + echo "${UNAME_MACHINE}-unknown-linux-gnu" + exit 0 + ;; + m68klinux) + echo "${UNAME_MACHINE}-unknown-linux-gnuaout" + exit 0 + ;; + elf32ppc | elf32ppclinux) # Determine Lib Version cat >$dummy.c < @@ -668,49 +721,61 @@ EOF if test "$?" = 0 ; then LIBC="libc1" fi - fi + fi rm -f $dummy.c $dummy - echo powerpc-unknown-linux-gnu${LIBC} ; exit 0 ;; + echo powerpc-unknown-linux-gnu${LIBC} + exit 0 + ;; esac if test "${UNAME_MACHINE}" = "alpha" ; then - sed 's/^ //' <$dummy.s - .globl main - .ent main - main: - .frame \$30,0,\$26,0 - .prologue 0 - .long 0x47e03d80 # implver $0 - lda \$2,259 - .long 0x47e20c21 # amask $2,$1 - srl \$1,8,\$2 - sll \$2,2,\$2 - sll \$0,3,\$0 - addl \$1,\$0,\$0 - addl \$2,\$0,\$0 - ret \$31,(\$26),1 - .end main + cat <$dummy.s + .data + \$Lformat: + .byte 37,100,45,37,120,10,0 # "%d-%x\n" + + .text + .globl main + .align 4 + .ent main + main: + .frame \$30,16,\$26,0 + ldgp \$29,0(\$27) + .prologue 1 + .long 0x47e03d80 # implver \$0 + lda \$2,-1 + .long 0x47e20c21 # amask \$2,\$1 + lda \$16,\$Lformat + mov \$0,\$17 + not \$1,\$18 + jsr \$26,printf + ldgp \$29,0(\$26) + mov 0,\$16 + jsr \$26,exit + .end main EOF LIBC="" $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null if test "$?" = 0 ; then - ./$dummy - case "$?" in - 7) + case `./$dummy` in + 0-0) UNAME_MACHINE="alpha" ;; - 15) + 1-0) UNAME_MACHINE="alphaev5" ;; - 14) + 1-1) UNAME_MACHINE="alphaev56" ;; - 10) + 1-101) UNAME_MACHINE="alphapca56" ;; - 16) + 2-303) UNAME_MACHINE="alphaev6" ;; + 2-307) + UNAME_MACHINE="alphaev67" + ;; esac objdump --private-headers $dummy | \ @@ -724,6 +789,7 @@ EOF elif test "${UNAME_MACHINE}" = "mips" ; then cat >$dummy.c < /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { @@ -739,6 +805,8 @@ EOF EOF $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 rm -f $dummy.c $dummy + elif test "${UNAME_MACHINE}" = "s390"; then + echo s390-ibm-linux && exit 0 else # Either a pre-BFD a.out linker (linux-gnuoldld) # or one that does not give us useful --help. @@ -760,6 +828,7 @@ EOF cat >$dummy.c < #ifdef __cplusplus +#include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { @@ -797,19 +866,21 @@ EOF echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit 0 ;; i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) + UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then - echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE} + echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else - echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} + echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi exit 0 ;; i?86:*:5:7*) - UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` - (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 - (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) && UNAME_MACHINE=i586 - (/bin/uname -X|egrep '^Machine.*Pent.*II' >/dev/null) && UNAME_MACHINE=i686 - (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) && UNAME_MACHINE=i585 - echo ${UNAME_MACHINE}-${UNAME_SYSTEM}${UNAME_VERSION}-sysv${UNAME_RELEASE} + # Fixed at (any) Pentium or better + UNAME_MACHINE=i586 + if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then + echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION} + else + echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} + fi exit 0 ;; i?86:*:3.2:*) if test -f /usr/options/cb.name; then @@ -829,7 +900,11 @@ EOF echo ${UNAME_MACHINE}-pc-sysv32 fi exit 0 ;; + i?86:*DOS:*:*) + echo ${UNAME_MACHINE}-pc-msdosdjgpp + exit 0 ;; pc:*:*:*) + # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i386. echo i386-pc-msdosdjgpp @@ -943,6 +1018,27 @@ EOF *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit 0 ;; + *:Darwin:*:*) + echo `uname -p`-apple-darwin${UNAME_RELEASE} + exit 0 ;; + *:procnto*:*:* | *:QNX:[0123456789]*:*) + if test "${UNAME_MACHINE}" = "x86pc"; then + UNAME_MACHINE=pc + fi + echo `uname -p`-${UNAME_MACHINE}-nto-qnx + exit 0 ;; + *:QNX:*:4*) + echo i386-pc-qnx + exit 0 ;; + NSR-W:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit 0 ;; + BS2000:POSIX*:*:*) + echo bs2000-siemens-sysv + exit 0 ;; + DS/*:UNIX_System_V:*:*) + echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} + exit 0 ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 diff --git a/config.sub b/config.sub index 2436b453..c8e77851 100755 --- a/config.sub +++ b/config.sub @@ -1,6 +1,8 @@ #! /bin/sh # Configuration validation subroutine script, version 1.1. -# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc. +# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000 +# Free Software Foundation, Inc. +# # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software # can handle that machine. It does not imply ALL GNU software can. @@ -25,6 +27,9 @@ # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. +# Written by Per Bothner . +# Please send patches to . +# # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. @@ -68,7 +73,7 @@ esac # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in - linux-gnu*) + nto-qnx* | linux-gnu*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; @@ -105,7 +110,7 @@ case $os in -scout) ;; -wrs) - os=vxworks + os=-vxworks basic_machine=$1 ;; -hiux*) @@ -156,27 +161,34 @@ case $os in -psos*) os=-psos ;; + -mint | -mint[0-9]*) + basic_machine=m68k-atari + os=-mint + ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. - tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ + tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \ | 580 | i960 | h8300 \ + | x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \ | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ - | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \ + | hppa64 \ + | alpha | alphaev[4-8] | alphaev56 | alphapca5[67] \ + | alphaev6[78] \ | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \ | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ | mips64orion | mips64orionel | mipstx39 | mipstx39el \ | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ - | mips64vr5000 | miprs64vr5000el \ + | mips64vr5000 | miprs64vr5000el | mcore \ | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ - | thumb | d10v) + | thumb | d10v | fr30 | avr) basic_machine=$basic_machine-unknown ;; - m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65) + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65 | pj | pjl) ;; # We use `pc' rather than `unknown' @@ -191,23 +203,28 @@ case $basic_machine in exit 1 ;; # Recognize the basic CPU types with company name. - vax-* | tahoe-* | i[34567]86-* | i860-* | m32r-* | m68k-* | m68000-* \ + # FIXME: clean up the formatting here. + vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ | xmp-* | ymp-* \ - | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \ - | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \ + | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* | armbe-* | armle-* \ + | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* \ + | hppa2.0n-* | hppa64-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphapca5[67]-* \ + | alphaev6[78]-* \ | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ | clipper-* | orion-* \ | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ | mips64el-* | mips64orion-* | mips64orionel-* \ | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ - | mipstx39-* | mipstx39el-* \ - | f301-* | armv*-* | t3e-* \ + | mipstx39-* | mipstx39el-* | mcore-* \ + | f301-* | armv*-* | s390-* | sv1-* | t3e-* \ | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ - | thumb-* | v850-* | d30v-* | tic30-* | c30-* ) + | thumb-* | v850-* | d30v-* | tic30-* | c30-* | fr30-* \ + | bs2000-*) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. @@ -425,7 +442,6 @@ case $basic_machine in ;; i370-ibm* | ibm*) basic_machine=i370-ibm - os=-mvs ;; # I'm not sure what "Sysv32" means. Should this be sysv3.2? i[34567]86v32) @@ -488,7 +504,7 @@ case $basic_machine in miniframe) basic_machine=m68000-convergent ;; - *mint | *MiNT) + *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; @@ -506,6 +522,10 @@ case $basic_machine in mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; + mmix*) + basic_machine=mmix-knuth + os=-mmixware + ;; monitor) basic_machine=m68k-rom68k os=-coff @@ -514,6 +534,10 @@ case $basic_machine in basic_machine=i386-unknown os=-msdos ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; ncr3000) basic_machine=i486-ncr os=-sysv4 @@ -523,7 +547,7 @@ case $basic_machine in os=-netbsd ;; netwinder) - basic_machine=armv4l-corel + basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) @@ -574,6 +598,9 @@ case $basic_machine in np1) basic_machine=np1-gould ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf @@ -718,6 +745,10 @@ case $basic_machine in sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; + sv1) + basic_machine=sv1-cray + os=-unicos + ;; symmetry) basic_machine=i386-sequent os=-dynix @@ -907,12 +938,25 @@ case $os in | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ - | -interix* | -uwin* | -rhapsody* | -openstep* | -oskit*) + | -interix* | -uwin* | -rhapsody* | -darwin* | -opened* \ + | -openstep* | -oskit*) # Remember, each alternative MUST END IN *, to match a version number. ;; + -qnx*) + case $basic_machine in + x86-* | i[34567]86-*) + ;; + *) + os=-nto$os + ;; + esac + ;; + -nto*) + os=-nto-qnx + ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ - | -macos* | -mpw* | -magic* | -mon960* | -lnews*) + | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` @@ -926,6 +970,12 @@ case $os in -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; + -opened*) + os=-openedition + ;; + -wince*) + os=-wince + ;; -osfrose*) os=-osfrose ;; @@ -950,6 +1000,9 @@ case $os in -ns2 ) os=-nextstep2 ;; + -nsk) + os=-nsk + ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` @@ -1012,7 +1065,7 @@ case $basic_machine in *-acorn) os=-riscix1.2 ;; - arm*-corel) + arm*-rebel) os=-linux ;; arm*-semi) @@ -1186,7 +1239,7 @@ case $basic_machine in -genix*) vendor=ns ;; - -mvs*) + -mvs* | -opened*) vendor=ibm ;; -ptx*) diff --git a/configure b/configure index 8de554bb..6f17b336 100755 --- a/configure +++ b/configure @@ -71,12 +71,12 @@ libexecdir='${exec_prefix}/libexec' datadir='${prefix}/share' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' +localstatedir='/var/lib' libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' -infodir='${prefix}/info' -mandir='${prefix}/man' +infodir='${prefix}/share/info' +mandir='${prefix}/share/man' # Initialize some other variables. subdirs= @@ -413,7 +413,7 @@ EOF *) if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then - echo "configure: warning: $ac_option: invalid host type" 1>&2 + echo "configure: WARNING: $ac_option: invalid host type" 1>&2 fi if test "x$nonopt" != xNONE; then { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } @@ -466,6 +466,9 @@ do esac done +# Support of DJGPP port of bash. +if test -n "$COMSPEC$ComSpec"; then ac_x=-x; else ac_x=-f; fi + # NLS nuisances. # Only set these to C if already set. These must not be set unconditionally # because not all systems understand e.g. LANG=C (notably SCO). @@ -584,7 +587,7 @@ ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:588: checking for a BSD compatible install" >&5 +echo "configure:591: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -599,7 +602,7 @@ else # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then + if test $ac_x $ac_dir/$ac_prog; then if test $ac_prog = install && grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. @@ -637,7 +640,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 -echo "configure:641: checking whether build environment is sane" >&5 +echo "configure:644: checking whether build environment is sane" >&5 # Just in case sleep 1 echo timestamp > conftestfile @@ -694,7 +697,7 @@ test "$program_suffix" != NONE && test "$program_transform_name" = "" && program_transform_name="s,x,x," echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:698: checking whether ${MAKE-make} sets \${MAKE}" >&5 +echo "configure:701: checking whether ${MAKE-make} sets \${MAKE}" >&5 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -721,9 +724,10 @@ else fi + PACKAGE=shadow -VERSION=20000902 +VERSION=20001012 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then { echo "configure: error: source directory already configured; run "make distclean" there first" 1>&2; exit 1; } @@ -740,7 +744,7 @@ EOF missing_dir=`cd $ac_aux_dir && pwd` echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 -echo "configure:744: checking for working aclocal" >&5 +echo "configure:748: checking for working aclocal" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. @@ -753,7 +757,7 @@ else fi echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 -echo "configure:757: checking for working autoconf" >&5 +echo "configure:761: checking for working autoconf" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. @@ -766,7 +770,7 @@ else fi echo $ac_n "checking for working automake""... $ac_c" 1>&6 -echo "configure:770: checking for working automake" >&5 +echo "configure:774: checking for working automake" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. @@ -779,7 +783,7 @@ else fi echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 -echo "configure:783: checking for working autoheader" >&5 +echo "configure:787: checking for working autoheader" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. @@ -792,7 +796,7 @@ else fi echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 -echo "configure:796: checking for working makeinfo" >&5 +echo "configure:800: checking for working makeinfo" >&5 # Run test in a subshell; some versions of sh will print an error if # an executable is not found, even if stderr is redirected. # Redirect stdin to placate older versions of autoconf. Sigh. @@ -814,12 +818,10 @@ test "$prefix" = "/usr" && exec_prefix="" test "$CFLAGS" = "" && CFLAGS="-O2 -Wall" test "$LDFLAGS" = "" && LDFLAGS="-s" -ALL_LINGUAS="el fr pl sv" - # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:823: checking for $ac_word" >&5 +echo "configure:825: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -830,7 +832,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_prog_CC="gcc" break fi @@ -849,7 +851,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:853: checking for $ac_word" >&5 +echo "configure:855: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -861,7 +863,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue @@ -900,7 +902,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:904: checking for $ac_word" >&5 +echo "configure:906: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -911,7 +913,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_prog_CC="cl" break fi @@ -932,7 +934,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:936: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:938: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -943,12 +945,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 947 "configure" +#line 949 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:952: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:954: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -974,12 +976,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:978: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:980: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:983: checking whether we are using GNU C" >&5 +echo "configure:985: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -988,7 +990,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:992: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:994: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -1007,7 +1009,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1011: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:1013: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1039,7 +1041,7 @@ else fi echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6 -echo "configure:1043: checking for POSIXized ISC" >&5 +echo "configure:1045: checking for POSIXized ISC" >&5 if test -d /etc/conf/kconfig.d && grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1 then @@ -1060,7 +1062,7 @@ else fi echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 -echo "configure:1064: checking whether ln -s works" >&5 +echo "configure:1066: checking whether ln -s works" >&5 if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1085,7 +1087,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1089: checking for $ac_word" >&5 +echo "configure:1091: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_YACC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1096,7 +1098,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_prog_YACC="$ac_prog" break fi @@ -1119,7 +1121,7 @@ test -n "$YACC" || YACC="yacc" echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6 -echo "configure:1123: checking for ${CC-cc} option to accept ANSI C" >&5 +echo "configure:1125: checking for ${CC-cc} option to accept ANSI C" >&5 if eval "test \"`echo '$''{'am_cv_prog_cc_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1135,7 +1137,7 @@ for ac_arg in "" -qlanglvl=ansi -std1 "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__ do CC="$ac_save_CC $ac_arg" cat > conftest.$ac_ext < #include @@ -1172,7 +1174,7 @@ return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } EOF -if { (eval echo configure:1176: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1178: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* am_cv_prog_cc_stdc="$ac_arg"; break else @@ -1196,7 +1198,7 @@ case "x$am_cv_prog_cc_stdc" in esac echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1200: checking how to run the C preprocessor" >&5 +echo "configure:1202: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1211,13 +1213,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1221: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1223: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1228,13 +1230,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1238: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1240: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1245,13 +1247,13 @@ else rm -rf conftest* CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext < Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1255: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1257: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1278,7 +1280,7 @@ echo "$ac_t""$CPP" 1>&6 echo $ac_n "checking for function prototypes""... $ac_c" 1>&6 -echo "configure:1282: checking for function prototypes" >&5 +echo "configure:1284: checking for function prototypes" >&5 if test "$am_cv_prog_cc_stdc" != no; then echo "$ac_t""yes" 1>&6 cat >> confdefs.h <<\EOF @@ -1291,12 +1293,12 @@ else U=_ ANSI2KNR=./ansi2knr # Ensure some checks needed by ansi2knr itself. echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:1295: checking for ANSI C header files" >&5 +echo "configure:1297: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -1304,7 +1306,7 @@ else #include EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1308: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1310: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1321,7 +1323,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -1339,7 +1341,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -1360,7 +1362,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -1371,7 +1373,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:1375: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1377: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -1398,17 +1400,17 @@ fi do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1402: checking for $ac_hdr" >&5 +echo "configure:1404: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1412: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1414: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1512,7 +1514,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:1516: checking host system type" >&5 +echo "configure:1518: checking host system type" >&5 host_alias=$host case "$host_alias" in @@ -1533,7 +1535,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$ac_t""$host" 1>&6 echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:1537: checking build system type" >&5 +echo "configure:1539: checking build system type" >&5 build_alias=$build case "$build_alias" in @@ -1553,7 +1555,7 @@ echo "$ac_t""$build" 1>&6 # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1557: checking for $ac_word" >&5 +echo "configure:1559: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1564,7 +1566,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_prog_RANLIB="ranlib" break fi @@ -1592,7 +1594,7 @@ ac_prog=ld if test "$ac_cv_prog_gcc" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 -echo "configure:1596: checking for ld used by GCC" >&5 +echo "configure:1598: checking for ld used by GCC" >&5 ac_prog=`($CC -print-prog-name=ld) 2>&5` case "$ac_prog" in # Accept absolute paths. @@ -1616,10 +1618,10 @@ echo "configure:1596: checking for ld used by GCC" >&5 esac elif test "$with_gnu_ld" = yes; then echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 -echo "configure:1620: checking for GNU ld" >&5 +echo "configure:1622: checking for GNU ld" >&5 else echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 -echo "configure:1623: checking for non-GNU ld" >&5 +echo "configure:1625: checking for non-GNU ld" >&5 fi if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1653,9 +1655,8 @@ else echo "$ac_t""no" 1>&6 fi test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } - echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 -echo "configure:1659: checking if the linker ($LD) is GNU ld" >&5 +echo "configure:1660: checking if the linker ($LD) is GNU ld" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1671,7 +1672,7 @@ echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6 echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 -echo "configure:1675: checking for BSD-compatible nm" >&5 +echo "configure:1676: checking for BSD-compatible nm" >&5 if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1707,9 +1708,18 @@ NM="$ac_cv_path_NM" echo "$ac_t""$NM" 1>&6 +case "$target" in +NONE) lt_target="$host" ;; +*) lt_target="$target" ;; +esac # Check for any special flags to pass to ltconfig. -libtool_flags="--cache-file=$cache_file" +# +# the following will cause an existing older ltconfig to fail, so +# we ignore this at the expense of the cache file... Checking this +# will just take longer ... bummer! +#libtool_flags="--cache-file=$cache_file" +# test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" @@ -1728,11 +1738,11 @@ test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" # Some flags need to be propagated to the compiler or linker for good # libtool support. -case "$host" in +case "$lt_target" in *-*-irix6*) # Find out which ABI we are using. - echo '#line 1735 "configure"' > conftest.$ac_ext - if { (eval echo configure:1736: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then + echo '#line 1745 "configure"' > conftest.$ac_ext + if { (eval echo configure:1746: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then case "`/usr/bin/file conftest.o`" in *32-bit*) LD="${LD-ld} -32" @@ -1753,19 +1763,19 @@ case "$host" in SAVE_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -belf" echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 -echo "configure:1757: checking whether the C compiler needs -belf" >&5 +echo "configure:1767: checking whether the C compiler needs -belf" >&5 if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1779: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* lt_cv_cc_needs_belf=yes else @@ -1843,7 +1853,7 @@ LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ ${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ -$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \ +$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ || { echo "configure: error: libtool configure failed" 1>&2; exit 1; } # Reload cache, that may have been modified by ltconfig @@ -1873,12 +1883,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6 -echo "configure:1877: checking for $ac_hdr that defines DIR" >&5 +echo "configure:1887: checking for $ac_hdr that defines DIR" >&5 if eval "test \"`echo '$''{'ac_cv_header_dirent_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include <$ac_hdr> @@ -1886,7 +1896,7 @@ int main() { DIR *dirp = 0; ; return 0; } EOF -if { (eval echo configure:1890: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1900: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_header_dirent_$ac_safe=yes" else @@ -1910,8 +1920,57 @@ fi done # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. if test $ac_header_dirent = dirent.h; then -echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 -echo "configure:1915: checking for opendir in -ldir" >&5 +echo $ac_n "checking for opendir""... $ac_c" 1>&6 +echo "configure:1925: checking for opendir" >&5 +if eval "test \"`echo '$''{'ac_cv_func_opendir'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext < +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char opendir(); + +int main() { + +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined (__stub_opendir) || defined (__stub___opendir) +choke me +#else +opendir(); +#endif + +; return 0; } +EOF +if { (eval echo configure:1953: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_opendir=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_opendir=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'opendir`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +fi + +if test $ac_cv_func_opendir = no; then + echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6 +echo "configure:1974: checking for opendir in -ldir" >&5 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1919,7 +1978,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ldir $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1993: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1950,9 +2009,10 @@ else echo "$ac_t""no" 1>&6 fi +fi else echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6 -echo "configure:1956: checking for opendir in -lx" >&5 +echo "configure:2016: checking for opendir in -lx" >&5 ac_lib_var=`echo x'_'opendir | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1960,7 +2020,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lx $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1994,12 +2054,12 @@ fi fi echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:1998: checking for ANSI C header files" >&5 +echo "configure:2058: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2007,7 +2067,7 @@ else #include EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2011: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2071: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2024,7 +2084,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2042,7 +2102,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext < EOF @@ -2063,7 +2123,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext < #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -2074,7 +2134,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } EOF -if { (eval echo configure:2078: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2138: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -2098,12 +2158,12 @@ EOF fi echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6 -echo "configure:2102: checking for sys/wait.h that is POSIX.1 compatible" >&5 +echo "configure:2162: checking for sys/wait.h that is POSIX.1 compatible" >&5 if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2119,7 +2179,7 @@ wait (&s); s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; ; return 0; } EOF -if { (eval echo configure:2123: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2183: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_sys_wait_h=yes else @@ -2143,17 +2203,17 @@ for ac_hdr in fcntl.h limits.h unistd.h sys/time.h utmp.h utmpx.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2147: checking for $ac_hdr" >&5 +echo "configure:2207: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2157: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2217: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2183,17 +2243,17 @@ for ac_hdr in termios.h termio.h sgtty.h sys/ioctl.h syslog.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2187: checking for $ac_hdr" >&5 +echo "configure:2247: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2197: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2257: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2223,17 +2283,17 @@ for ac_hdr in paths.h usersec.h utime.h ulimit.h sys/resource.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2227: checking for $ac_hdr" >&5 +echo "configure:2287: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2237: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2297: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2263,17 +2323,17 @@ for ac_hdr in gshadow.h shadow.h lastlog.h rpc/key_prot.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:2267: checking for $ac_hdr" >&5 +echo "configure:2327: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:2277: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:2337: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2301,12 +2361,12 @@ done echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:2305: checking for working const" >&5 +echo "configure:2365: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2419: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -2376,12 +2436,12 @@ EOF fi echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6 -echo "configure:2380: checking for uid_t in sys/types.h" >&5 +echo "configure:2440: checking for uid_t in sys/types.h" >&5 if eval "test \"`echo '$''{'ac_cv_type_uid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF @@ -2410,12 +2470,12 @@ EOF fi echo $ac_n "checking for off_t""... $ac_c" 1>&6 -echo "configure:2414: checking for off_t" >&5 +echo "configure:2474: checking for off_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_off_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -2443,12 +2503,12 @@ EOF fi echo $ac_n "checking for pid_t""... $ac_c" 1>&6 -echo "configure:2447: checking for pid_t" >&5 +echo "configure:2507: checking for pid_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -2476,12 +2536,12 @@ EOF fi echo $ac_n "checking for mode_t""... $ac_c" 1>&6 -echo "configure:2480: checking for mode_t" >&5 +echo "configure:2540: checking for mode_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_mode_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -2509,12 +2569,12 @@ EOF fi echo $ac_n "checking for st_rdev in struct stat""... $ac_c" 1>&6 -echo "configure:2513: checking for st_rdev in struct stat" >&5 +echo "configure:2573: checking for st_rdev in struct stat" >&5 if eval "test \"`echo '$''{'ac_cv_struct_st_rdev'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2522,7 +2582,7 @@ int main() { struct stat s; s.st_rdev; ; return 0; } EOF -if { (eval echo configure:2526: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2586: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_st_rdev=yes else @@ -2543,12 +2603,12 @@ EOF fi echo $ac_n "checking whether stat file-mode macros are broken""... $ac_c" 1>&6 -echo "configure:2547: checking whether stat file-mode macros are broken" >&5 +echo "configure:2607: checking whether stat file-mode macros are broken" >&5 if eval "test \"`echo '$''{'ac_cv_header_stat_broken'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2599,12 +2659,12 @@ EOF fi echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 -echo "configure:2603: checking whether time.h and sys/time.h may both be included" >&5 +echo "configure:2663: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2613,7 +2673,7 @@ int main() { struct tm *tp; ; return 0; } EOF -if { (eval echo configure:2617: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2677: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes else @@ -2634,12 +2694,12 @@ EOF fi echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6 -echo "configure:2638: checking whether struct tm is in sys/time.h or time.h" >&5 +echo "configure:2698: checking whether struct tm is in sys/time.h or time.h" >&5 if eval "test \"`echo '$''{'ac_cv_struct_tm'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -2647,7 +2707,7 @@ int main() { struct tm *tp; tp->tm_sec; ; return 0; } EOF -if { (eval echo configure:2651: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2711: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_tm=time.h else @@ -2669,19 +2729,19 @@ fi echo $ac_n "checking for pw_age in struct passwd""... $ac_c" 1>&6 -echo "configure:2673: checking for pw_age in struct passwd" >&5 +echo "configure:2733: checking for pw_age in struct passwd" >&5 if eval "test \"`echo '$''{'ac_cv_struct_passwd_pw_age'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { struct passwd pw; pw.pw_age = ""; ; return 0; } EOF -if { (eval echo configure:2685: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2745: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_passwd_pw_age=yes else @@ -2703,19 +2763,19 @@ EOF fi echo $ac_n "checking for pw_comment in struct passwd""... $ac_c" 1>&6 -echo "configure:2707: checking for pw_comment in struct passwd" >&5 +echo "configure:2767: checking for pw_comment in struct passwd" >&5 if eval "test \"`echo '$''{'ac_cv_struct_passwd_pw_comment'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { struct passwd pw; pw.pw_comment = ""; ; return 0; } EOF -if { (eval echo configure:2719: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2779: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_passwd_pw_comment=yes else @@ -2737,19 +2797,19 @@ EOF fi echo $ac_n "checking for pw_quota in struct passwd""... $ac_c" 1>&6 -echo "configure:2741: checking for pw_quota in struct passwd" >&5 +echo "configure:2801: checking for pw_quota in struct passwd" >&5 if eval "test \"`echo '$''{'ac_cv_struct_passwd_pw_quota'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { struct passwd pw; pw.pw_quota = 0; ; return 0; } EOF -if { (eval echo configure:2753: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2813: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_passwd_pw_quota=yes else @@ -2772,19 +2832,19 @@ fi if test "$ac_cv_header_utmp_h" = "yes"; then echo $ac_n "checking for ut_host in struct utmp""... $ac_c" 1>&6 -echo "configure:2776: checking for ut_host in struct utmp" >&5 +echo "configure:2836: checking for ut_host in struct utmp" >&5 if eval "test \"`echo '$''{'ac_cv_struct_utmp_ut_host'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { struct utmp ut; char *cp = ut.ut_host; ; return 0; } EOF -if { (eval echo configure:2788: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_utmp_ut_host=yes else @@ -2806,19 +2866,19 @@ EOF fi echo $ac_n "checking for ut_user in struct utmp""... $ac_c" 1>&6 -echo "configure:2810: checking for ut_user in struct utmp" >&5 +echo "configure:2870: checking for ut_user in struct utmp" >&5 if eval "test \"`echo '$''{'ac_cv_struct_utmp_ut_user'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { struct utmp ut; char *cp = ut.ut_user; ; return 0; } EOF -if { (eval echo configure:2822: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2882: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_utmp_ut_user=yes else @@ -2842,19 +2902,19 @@ fi if test "$ac_cv_header_lastlog_h" = "yes"; then echo $ac_n "checking for ll_host in struct lastlog""... $ac_c" 1>&6 -echo "configure:2846: checking for ll_host in struct lastlog" >&5 +echo "configure:2906: checking for ll_host in struct lastlog" >&5 if eval "test \"`echo '$''{'ac_cv_struct_lastlog_ll_host'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { struct lastlog ll; char *cp = ll.ll_host; ; return 0; } EOF -if { (eval echo configure:2858: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2918: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_lastlog_ll_host=yes else @@ -2877,7 +2937,7 @@ EOF fi echo $ac_n "checking type of array argument to getgroups""... $ac_c" 1>&6 -echo "configure:2881: checking type of array argument to getgroups" >&5 +echo "configure:2941: checking type of array argument to getgroups" >&5 if eval "test \"`echo '$''{'ac_cv_type_getgroups'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2885,7 +2945,7 @@ else ac_cv_type_getgroups=cross else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:2974: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_type_getgroups=gid_t else @@ -2924,7 +2984,7 @@ fi if test $ac_cv_type_getgroups = cross; then cat > conftest.$ac_ext < EOF @@ -2949,13 +3009,13 @@ EOF if test $ac_cv_prog_gcc = yes; then echo $ac_n "checking whether ${CC-cc} needs -traditional""... $ac_c" 1>&6 -echo "configure:2953: checking whether ${CC-cc} needs -traditional" >&5 +echo "configure:3013: checking whether ${CC-cc} needs -traditional" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc_traditional'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_pattern="Autoconf.*'x'" cat > conftest.$ac_ext < Autoconf TIOCGETP @@ -2973,7 +3033,7 @@ rm -f conftest* if test $ac_cv_prog_gcc_traditional = no; then cat > conftest.$ac_ext < Autoconf TCGETA @@ -2995,12 +3055,12 @@ echo "$ac_t""$ac_cv_prog_gcc_traditional" 1>&6 fi echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:2999: checking return type of signal handlers" >&5 +echo "configure:3059: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #include @@ -3017,7 +3077,7 @@ int main() { int i; ; return 0; } EOF -if { (eval echo configure:3021: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3081: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void else @@ -3036,7 +3096,7 @@ EOF echo $ac_n "checking whether utime accepts a null argument""... $ac_c" 1>&6 -echo "configure:3040: checking whether utime accepts a null argument" >&5 +echo "configure:3100: checking whether utime accepts a null argument" >&5 if eval "test \"`echo '$''{'ac_cv_func_utime_null'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3046,7 +3106,7 @@ if test "$cross_compiling" = yes; then ac_cv_func_utime_null=no else cat > conftest.$ac_ext < #include @@ -3057,7 +3117,7 @@ exit(!(stat ("conftestdata", &s) == 0 && utime("conftestdata", (long *)0) == 0 && t.st_mtime - s.st_mtime < 120)); } EOF -if { (eval echo configure:3061: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_utime_null=yes else @@ -3081,12 +3141,12 @@ EOF fi echo $ac_n "checking for strftime""... $ac_c" 1>&6 -echo "configure:3085: checking for strftime" >&5 +echo "configure:3145: checking for strftime" >&5 if eval "test \"`echo '$''{'ac_cv_func_strftime'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3173: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_strftime=yes" else @@ -3131,7 +3191,7 @@ else echo "$ac_t""no" 1>&6 # strftime is in -lintl on SCO UNIX. echo $ac_n "checking for strftime in -lintl""... $ac_c" 1>&6 -echo "configure:3135: checking for strftime in -lintl" >&5 +echo "configure:3195: checking for strftime in -lintl" >&5 ac_lib_var=`echo intl'_'strftime | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3139,7 +3199,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lintl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3179,12 +3239,12 @@ fi for ac_func in a64l fchmod fchown fsync getgroups gethostname getspnam do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3183: checking for $ac_func" >&5 +echo "configure:3243: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3271: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3234,12 +3294,12 @@ done for ac_func in gettimeofday getusershell getutent initgroups lchown lckpwdf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3238: checking for $ac_func" >&5 +echo "configure:3298: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3326: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3289,12 +3349,12 @@ done for ac_func in lstat memcpy memset setgroups sigaction strchr updwtmp updwtmpx do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3293: checking for $ac_func" >&5 +echo "configure:3353: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3381: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3345,12 +3405,12 @@ done for ac_func in mkdir putgrent putpwent putspent rename rmdir do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3349: checking for $ac_func" >&5 +echo "configure:3409: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3437: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3402,12 +3462,12 @@ done for ac_func in sgetgrent sgetpwent sgetspent do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3406: checking for $ac_func" >&5 +echo "configure:3466: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3494: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3459,12 +3519,12 @@ done for ac_func in snprintf strcasecmp strdup strerror strstr do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:3463: checking for $ac_func" >&5 +echo "configure:3523: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -3515,12 +3575,12 @@ done echo $ac_n "checking for setpgrp""... $ac_c" 1>&6 -echo "configure:3519: checking for setpgrp" >&5 +echo "configure:3579: checking for setpgrp" >&5 if eval "test \"`echo '$''{'ac_cv_func_setpgrp'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3607: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_setpgrp=yes" else @@ -3563,7 +3623,7 @@ else fi echo $ac_n "checking whether setpgrp takes no argument""... $ac_c" 1>&6 -echo "configure:3567: checking whether setpgrp takes no argument" >&5 +echo "configure:3627: checking whether setpgrp takes no argument" >&5 if eval "test \"`echo '$''{'ac_cv_func_setpgrp_void'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3571,7 +3631,7 @@ else { echo "configure: error: cannot check setpgrp if cross compiling" 1>&2; exit 1; } else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3655: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_setpgrp_void=no else @@ -3617,7 +3677,7 @@ fi if test "$ac_cv_header_shadow_h" = "yes"; then echo $ac_n "checking for working shadow group support""... $ac_c" 1>&6 -echo "configure:3621: checking for working shadow group support" >&5 +echo "configure:3681: checking for working shadow group support" >&5 if eval "test \"`echo '$''{'ac_cv_libc_shadowgrp'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3625,7 +3685,7 @@ else ac_cv_libc_shadowgrp=no else cat > conftest.$ac_ext < @@ -3637,7 +3697,7 @@ main() } EOF -if { (eval echo configure:3641: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:3701: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_libc_shadowgrp=yes else @@ -3662,7 +3722,7 @@ fi fi echo $ac_n "checking location of shared mail directory""... $ac_c" 1>&6 -echo "configure:3666: checking location of shared mail directory" >&5 +echo "configure:3726: checking location of shared mail directory" >&5 for maildir in /var/spool/mail /var/mail /usr/spool/mail /usr/mail NONE; do if test "$maildir" = "NONE"; then echo "$ac_t""None" 1>&6 @@ -3677,7 +3737,7 @@ EOF done echo $ac_n "checking location of user mail file""... $ac_c" 1>&6 -echo "configure:3681: checking location of user mail file" >&5 +echo "configure:3741: checking location of user mail file" >&5 for mailfile in Mailbox mailbox Mail mail .mail NONE; do if test "$mailfile" = "NONE"; then echo "$ac_t""None" 1>&6 @@ -3692,10 +3752,10 @@ EOF done echo $ac_n "checking location of utmp""... $ac_c" 1>&6 -echo "configure:3696: checking location of utmp" >&5 +echo "configure:3756: checking location of utmp" >&5 for utmpdir in /var/run /var/adm /usr/adm /etc NONE; do if test "$utmpdir" = "NONE"; then - echo "configure: warning: utmp file not found" 1>&2 + echo "configure: WARNING: utmp file not found" 1>&2 elif test -f $utmpdir/utmp; then cat >> confdefs.h <&6 -echo "configure:3711: checking location of faillog/lastlog/wtmp" >&5 +echo "configure:3771: checking location of faillog/lastlog/wtmp" >&5 for logdir in /var/log /var/adm /usr/adm /etc; do if test -d $logdir; then cat >> confdefs.h <&6 -echo "configure:3732: checking location of the passwd program" >&5 +echo "configure:3792: checking location of the passwd program" >&5 if test -f /usr/bin/passwd; then passwd_dir=/usr/bin else @@ -3830,12 +3890,12 @@ fi echo $ac_n "checking for inet_ntoa""... $ac_c" 1>&6 -echo "configure:3834: checking for inet_ntoa" >&5 +echo "configure:3894: checking for inet_ntoa" >&5 if eval "test \"`echo '$''{'ac_cv_func_inet_ntoa'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3922: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_inet_ntoa=yes" else @@ -3876,7 +3936,7 @@ if eval "test \"`echo '$ac_cv_func_'inet_ntoa`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for inet_ntoa in -linet""... $ac_c" 1>&6 -echo "configure:3880: checking for inet_ntoa in -linet" >&5 +echo "configure:3940: checking for inet_ntoa in -linet" >&5 ac_lib_var=`echo inet'_'inet_ntoa | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3884,7 +3944,7 @@ else ac_save_LIBS="$LIBS" LIBS="-linet $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:3959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -3925,12 +3985,12 @@ fi fi echo $ac_n "checking for socket""... $ac_c" 1>&6 -echo "configure:3929: checking for socket" >&5 +echo "configure:3989: checking for socket" >&5 if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4017: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_socket=yes" else @@ -3971,7 +4031,7 @@ if eval "test \"`echo '$ac_cv_func_'socket`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6 -echo "configure:3975: checking for socket in -lsocket" >&5 +echo "configure:4035: checking for socket in -lsocket" >&5 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -3979,7 +4039,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lsocket $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4054: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4020,12 +4080,12 @@ fi fi echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6 -echo "configure:4024: checking for gethostbyname" >&5 +echo "configure:4084: checking for gethostbyname" >&5 if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4112: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_gethostbyname=yes" else @@ -4066,7 +4126,7 @@ if eval "test \"`echo '$ac_cv_func_'gethostbyname`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for gethostbyname in -lnsl""... $ac_c" 1>&6 -echo "configure:4070: checking for gethostbyname in -lnsl" >&5 +echo "configure:4130: checking for gethostbyname in -lnsl" >&5 ac_lib_var=`echo nsl'_'gethostbyname | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4074,7 +4134,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lnsl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4149: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4118,12 +4178,12 @@ fi if test "$enable_desrpc" != "no" -a "$ac_cv_header_rpc_key_prot_h" = "yes" ; then echo $ac_n "checking for getsecretkey""... $ac_c" 1>&6 -echo "configure:4122: checking for getsecretkey" >&5 +echo "configure:4182: checking for getsecretkey" >&5 if eval "test \"`echo '$''{'ac_cv_func_getsecretkey'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4210: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_getsecretkey=yes" else @@ -4167,7 +4227,7 @@ EOF else echo "$ac_t""no" 1>&6 echo $ac_n "checking for getsecretkey in -lrpcsvc""... $ac_c" 1>&6 -echo "configure:4171: checking for getsecretkey in -lrpcsvc" >&5 +echo "configure:4231: checking for getsecretkey in -lrpcsvc" >&5 ac_lib_var=`echo rpcsvc'_'getsecretkey | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4175,7 +4235,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lrpcsvc $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4223,7 +4283,7 @@ fi if test "$with_libcrypt" != "no"; then echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6 -echo "configure:4227: checking for crypt in -lcrypt" >&5 +echo "configure:4287: checking for crypt in -lcrypt" >&5 ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4231,7 +4291,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcrypt $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4306: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4279,7 +4339,7 @@ fi if test "$with_libcrack" != "no"; then echo "checking cracklib flavour, don't be surprised by the results" echo $ac_n "checking for FascistCheck in -lcrack""... $ac_c" 1>&6 -echo "configure:4283: checking for FascistCheck in -lcrack" >&5 +echo "configure:4343: checking for FascistCheck in -lcrack" >&5 ac_lib_var=`echo crack'_'FascistCheck | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4287,7 +4347,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcrack $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4362: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4322,7 +4382,7 @@ else fi echo $ac_n "checking for FascistHistory in -lcrack""... $ac_c" 1>&6 -echo "configure:4326: checking for FascistHistory in -lcrack" >&5 +echo "configure:4386: checking for FascistHistory in -lcrack" >&5 ac_lib_var=`echo crack'_'FascistHistory | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4330,7 +4390,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcrack $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4405: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4365,7 +4425,7 @@ else fi echo $ac_n "checking for FascistHistoryPw in -lcrack""... $ac_c" 1>&6 -echo "configure:4369: checking for FascistHistoryPw in -lcrack" >&5 +echo "configure:4429: checking for FascistHistoryPw in -lcrack" >&5 ac_lib_var=`echo crack'_'FascistHistoryPw | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4373,7 +4433,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcrack $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4413,7 +4473,7 @@ fi if test "$with_libskey" = "yes"; then echo $ac_n "checking for MD5Init in -lmd""... $ac_c" 1>&6 -echo "configure:4417: checking for MD5Init in -lmd" >&5 +echo "configure:4477: checking for MD5Init in -lmd" >&5 ac_lib_var=`echo md'_'MD5Init | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4421,7 +4481,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lmd $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4496: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4453,7 +4513,7 @@ else fi echo $ac_n "checking for skeychallenge in -lskey""... $ac_c" 1>&6 -echo "configure:4457: checking for skeychallenge in -lskey" >&5 +echo "configure:4517: checking for skeychallenge in -lskey" >&5 ac_lib_var=`echo skey'_'skeychallenge | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4461,7 +4521,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lskey $LIBMD $LIBCRYPT $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4536: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4497,7 +4557,7 @@ fi elif test "$with_libopie" = "yes"; then echo $ac_n "checking for opiechallenge in -lopie""... $ac_c" 1>&6 -echo "configure:4501: checking for opiechallenge in -lopie" >&5 +echo "configure:4561: checking for opiechallenge in -lopie" >&5 ac_lib_var=`echo opie'_'opiechallenge | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4505,7 +4565,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lopie $LIBCRYPT $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4544,7 +4604,7 @@ fi if test "$with_libtcfs" = "yes"; then echo $ac_n "checking for tcfs_encrypt_key in -ltcfs""... $ac_c" 1>&6 -echo "configure:4548: checking for tcfs_encrypt_key in -ltcfs" >&5 +echo "configure:4608: checking for tcfs_encrypt_key in -ltcfs" >&5 ac_lib_var=`echo tcfs'_'tcfs_encrypt_key | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -4552,7 +4612,7 @@ else ac_save_LIBS="$LIBS" LIBS="-ltcfs -lgdbm $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4627: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -4599,19 +4659,19 @@ if test "$with_libpam" = "yes"; then EOF echo $ac_n "checking whether pam_strerror needs two arguments""... $ac_c" 1>&6 -echo "configure:4603: checking whether pam_strerror needs two arguments" >&5 +echo "configure:4663: checking whether pam_strerror needs two arguments" >&5 if eval "test \"`echo '$''{'ac_cv_pam_strerror_needs_two_args'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { pam_handle_t *pamh; pam_strerror(pamh, PAM_SUCCESS); ; return 0; } EOF -if { (eval echo configure:4615: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4675: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_pam_strerror_needs_two_args=yes else @@ -4637,22 +4697,23 @@ fi LTLIBOBJS=`echo "$LIBOBJS" | sed 's/\.o/.lo/g'` +ALL_LINGUAS="cs el fr pl sv" echo $ac_n "checking for inline""... $ac_c" 1>&6 -echo "configure:4642: checking for inline" >&5 +echo "configure:4703: checking for inline" >&5 if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else ac_cv_c_inline=no for ac_kw in inline __inline__ __inline; do cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4717: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_inline=$ac_kw; break else @@ -4678,12 +4739,12 @@ EOF esac echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:4682: checking for size_t" >&5 +echo "configure:4743: checking for size_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < #if STDC_HEADERS @@ -4713,19 +4774,19 @@ fi # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 -echo "configure:4717: checking for working alloca.h" >&5 +echo "configure:4778: checking for working alloca.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { char *p = alloca(2 * sizeof(int)); ; return 0; } EOF -if { (eval echo configure:4729: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4790: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_header_alloca_h=yes else @@ -4746,12 +4807,12 @@ EOF fi echo $ac_n "checking for alloca""... $ac_c" 1>&6 -echo "configure:4750: checking for alloca" >&5 +echo "configure:4811: checking for alloca" >&5 if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4844: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* ac_cv_func_alloca_works=yes else @@ -4811,12 +4872,12 @@ EOF echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 -echo "configure:4815: checking whether alloca needs Cray hooks" >&5 +echo "configure:4876: checking whether alloca needs Cray hooks" >&5 if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&6 if test $ac_cv_os_cray = yes; then for ac_func in _getb67 GETB67 getb67; do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:4845: checking for $ac_func" >&5 +echo "configure:4906: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:4934: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -4896,7 +4957,7 @@ done fi echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 -echo "configure:4900: checking stack direction for C alloca" >&5 +echo "configure:4961: checking stack direction for C alloca" >&5 if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4904,7 +4965,7 @@ else ac_cv_c_stack_direction=0 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:4988: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_c_stack_direction=1 else @@ -4948,17 +5009,17 @@ for ac_hdr in unistd.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:4952: checking for $ac_hdr" >&5 +echo "configure:5013: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:4962: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5023: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -4987,12 +5048,12 @@ done for ac_func in getpagesize do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:4991: checking for $ac_func" >&5 +echo "configure:5052: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5080: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -5040,7 +5101,7 @@ fi done echo $ac_n "checking for working mmap""... $ac_c" 1>&6 -echo "configure:5044: checking for working mmap" >&5 +echo "configure:5105: checking for working mmap" >&5 if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5048,7 +5109,7 @@ else ac_cv_func_mmap_fixed_mapped=no else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:5253: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_func_mmap_fixed_mapped=yes else @@ -5216,17 +5277,17 @@ unistd.h sys/param.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:5220: checking for $ac_hdr" >&5 +echo "configure:5281: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5230: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5291: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5256,12 +5317,12 @@ done strdup __argz_count __argz_stringify __argz_next do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:5260: checking for $ac_func" >&5 +echo "configure:5321: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5349: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -5313,12 +5374,12 @@ done for ac_func in stpcpy do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:5317: checking for $ac_func" >&5 +echo "configure:5378: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5406: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -5375,19 +5436,19 @@ EOF if test $ac_cv_header_locale_h = yes; then echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 -echo "configure:5379: checking for LC_MESSAGES" >&5 +echo "configure:5440: checking for LC_MESSAGES" >&5 if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return LC_MESSAGES ; return 0; } EOF -if { (eval echo configure:5391: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5452: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* am_cv_val_LC_MESSAGES=yes else @@ -5408,7 +5469,7 @@ EOF fi fi echo $ac_n "checking whether NLS is requested""... $ac_c" 1>&6 -echo "configure:5412: checking whether NLS is requested" >&5 +echo "configure:5473: checking whether NLS is requested" >&5 # Check whether --enable-nls or --disable-nls was given. if test "${enable_nls+set}" = set; then enableval="$enable_nls" @@ -5428,7 +5489,7 @@ fi EOF echo $ac_n "checking whether included gettext is requested""... $ac_c" 1>&6 -echo "configure:5432: checking whether included gettext is requested" >&5 +echo "configure:5493: checking whether included gettext is requested" >&5 # Check whether --with-included-gettext or --without-included-gettext was given. if test "${with_included_gettext+set}" = set; then withval="$with_included_gettext" @@ -5447,17 +5508,17 @@ fi ac_safe=`echo "libintl.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for libintl.h""... $ac_c" 1>&6 -echo "configure:5451: checking for libintl.h" >&5 +echo "configure:5512: checking for libintl.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:5461: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:5522: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -5474,19 +5535,19 @@ fi if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for gettext in libc""... $ac_c" 1>&6 -echo "configure:5478: checking for gettext in libc" >&5 +echo "configure:5539: checking for gettext in libc" >&5 if eval "test \"`echo '$''{'gt_cv_func_gettext_libc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int main() { return (int) gettext ("") ; return 0; } EOF -if { (eval echo configure:5490: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5551: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* gt_cv_func_gettext_libc=yes else @@ -5502,7 +5563,7 @@ echo "$ac_t""$gt_cv_func_gettext_libc" 1>&6 if test "$gt_cv_func_gettext_libc" != "yes"; then echo $ac_n "checking for bindtextdomain in -lintl""... $ac_c" 1>&6 -echo "configure:5506: checking for bindtextdomain in -lintl" >&5 +echo "configure:5567: checking for bindtextdomain in -lintl" >&5 ac_lib_var=`echo intl'_'bindtextdomain | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5510,7 +5571,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lintl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5586: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5537,12 +5598,12 @@ fi if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then echo "$ac_t""yes" 1>&6 echo $ac_n "checking for gettext in libintl""... $ac_c" 1>&6 -echo "configure:5541: checking for gettext in libintl" >&5 +echo "configure:5602: checking for gettext in libintl" >&5 if eval "test \"`echo '$''{'gt_cv_func_gettext_libintl'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6 -echo "configure:5546: checking for gettext in -lintl" >&5 +echo "configure:5607: checking for gettext in -lintl" >&5 ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5550,7 +5611,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lintl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5626: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5600,7 +5661,7 @@ EOF # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:5604: checking for $ac_word" >&5 +echo "configure:5665: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5634,12 +5695,12 @@ fi for ac_func in dcgettext do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:5638: checking for $ac_func" >&5 +echo "configure:5699: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5727: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -5689,12 +5750,12 @@ done # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:5693: checking for $ac_word" >&5 +echo "configure:5754: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else case "$GMSGFMT" in - /*) + /*|[A-z]:/*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; ?:/*) @@ -5705,7 +5766,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_path_GMSGFMT="$ac_dir/$ac_word" break fi @@ -5725,7 +5786,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:5729: checking for $ac_word" >&5 +echo "configure:5790: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5757,7 +5818,7 @@ else fi cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5830: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* CATOBJEXT=.gmo DATADIRNAME=share @@ -5788,7 +5849,7 @@ fi if test "$CATOBJEXT" = "NONE"; then echo $ac_n "checking whether catgets can be used""... $ac_c" 1>&6 -echo "configure:5792: checking whether catgets can be used" >&5 +echo "configure:5853: checking whether catgets can be used" >&5 # Check whether --with-catgets or --without-catgets was given. if test "${with_catgets+set}" = set; then withval="$with_catgets" @@ -5801,7 +5862,7 @@ fi if test "$nls_cv_use_catgets" = "yes"; then echo $ac_n "checking for main in -li""... $ac_c" 1>&6 -echo "configure:5805: checking for main in -li" >&5 +echo "configure:5866: checking for main in -li" >&5 ac_lib_var=`echo i'_'main | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -5809,14 +5870,14 @@ else ac_save_LIBS="$LIBS" LIBS="-li $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -5844,12 +5905,12 @@ else fi echo $ac_n "checking for catgets""... $ac_c" 1>&6 -echo "configure:5848: checking for catgets" >&5 +echo "configure:5909: checking for catgets" >&5 if eval "test \"`echo '$''{'ac_cv_func_catgets'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:5937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_catgets=yes" else @@ -5894,12 +5955,12 @@ EOF # Extract the first word of "gencat", so it can be a program name with args. set dummy gencat; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:5898: checking for $ac_word" >&5 +echo "configure:5959: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GENCAT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else case "$GENCAT" in - /*) + /*|[A-z]:/*) ac_cv_path_GENCAT="$GENCAT" # Let the user override the test with a path. ;; ?:/*) @@ -5910,7 +5971,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_path_GENCAT="$ac_dir/$ac_word" break fi @@ -5930,12 +5991,12 @@ fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:5934: checking for $ac_word" >&5 +echo "configure:5995: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else case "$GMSGFMT" in - /*) + /*|[A-z]:/*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; ?:/*) @@ -5946,7 +6007,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_path_GMSGFMT="$ac_dir/$ac_word" break fi @@ -5967,7 +6028,7 @@ fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:5971: checking for $ac_word" >&5 +echo "configure:6032: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6002,7 +6063,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:6006: checking for $ac_word" >&5 +echo "configure:6067: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6060,7 +6121,7 @@ fi # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:6064: checking for $ac_word" >&5 +echo "configure:6125: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_MSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6094,12 +6155,12 @@ fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:6098: checking for $ac_word" >&5 +echo "configure:6159: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_GMSGFMT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else case "$GMSGFMT" in - /*) + /*|[A-z]:/*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; ?:/*) @@ -6110,7 +6171,7 @@ else ac_dummy="$PATH" for ac_dir in $ac_dummy; do test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then + if test $ac_x $ac_dir/$ac_word; then ac_cv_path_GMSGFMT="$ac_dir/$ac_word" break fi @@ -6130,7 +6191,7 @@ fi # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:6134: checking for $ac_word" >&5 +echo "configure:6195: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_XGETTEXT'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -6223,7 +6284,7 @@ fi LINGUAS= else echo $ac_n "checking for catalogs to be installed""... $ac_c" 1>&6 -echo "configure:6227: checking for catalogs to be installed" >&5 +echo "configure:6288: checking for catalogs to be installed" >&5 NEW_LINGUAS= for lang in ${LINGUAS=$ALL_LINGUAS}; do case "$ALL_LINGUAS" in @@ -6251,17 +6312,17 @@ echo "configure:6227: checking for catalogs to be installed" >&5 if test "$CATOBJEXT" = ".cat"; then ac_safe=`echo "linux/version.h" | sed 'y%./+-%__p_%'` echo $ac_n "checking for linux/version.h""... $ac_c" 1>&6 -echo "configure:6255: checking for linux/version.h" >&5 +echo "configure:6316: checking for linux/version.h" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:6265: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:6326: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -6432,7 +6493,7 @@ trap 'rm -fr `echo "libmisc/Makefile man/Makefile man/pl/Makefile contrib/Makefile debian/Makefile doc/Makefile etc/Makefile intl/Makefile intl/po2tbl.sed po/Makefile.in etc/pam.d/Makefile old/Makefile - redhat/Makefile redhat/shadow-utils.spec config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 + shadow-utils.spec config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 EOF cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then @@ -6600,14 +6659,15 @@ for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then .) srcdir=. if test -z "$ac_dots"; then top_srcdir=. else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; - /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; + /*|[A-z]:/*) + srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; *) # Relative path. srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" top_srcdir="$ac_dots$ac_given_srcdir" ;; esac case "$ac_given_INSTALL" in - [/$]*) INSTALL="$ac_given_INSTALL" ;; + [/$]*|[A-z]:/*) INSTALL="$ac_given_INSTALL" ;; *) INSTALL="$ac_dots$ac_given_INSTALL" ;; esac @@ -6620,7 +6680,7 @@ for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then *) ac_comsub= ;; esac - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + ac_file_inputs=`echo $ac_file_in|sed -e "s%:% $ac_given_srcdir/%g" -e "s%^%$ac_given_srcdir/%"` sed -e "$ac_comsub s%@configure_input@%$configure_input%g s%@srcdir@%$srcdir%g @@ -6667,7 +6727,7 @@ for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then echo creating $ac_file rm -f conftest.frag conftest.in conftest.out - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` + ac_file_inputs=`echo $ac_file_in|sed -e "s%:% $ac_given_srcdir/%g" -e "s%^%$ac_given_srcdir/%"` cat $ac_file_inputs > conftest.in EOF @@ -6771,7 +6831,7 @@ while test -n "$ac_sources"; do fi case "$srcdir" in - [/$]*) ac_rel_source="$srcdir/$ac_source" ;; + [/$]*|[A-z]:/*) ac_rel_source="$srcdir/$ac_source" ;; *) ac_rel_source="$ac_dots$srcdir/$ac_source" ;; esac @@ -6800,4 +6860,3 @@ chmod +x $CONFIG_STATUS rm -fr confdefs* $ac_clean_files test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 - diff --git a/configure.in b/configure.in index 1af42d8f..29abd54a 100644 --- a/configure.in +++ b/configure.in @@ -1,6 +1,6 @@ dnl Process this file with autoconf to produce a configure script. AC_INIT(lib/dialchk.c) -AM_INIT_AUTOMAKE(shadow, 20000902) +AM_INIT_AUTOMAKE(shadow, 20001012) AM_CONFIG_HEADER(config.h) dnl Some hacks... @@ -9,8 +9,6 @@ test "$prefix" = "/usr" && exec_prefix="" test "$CFLAGS" = "" && CFLAGS="-O2 -Wall" test "$LDFLAGS" = "" && LDFLAGS="-s" -ALL_LINGUAS="el fr pl sv" - dnl Checks for programs. AC_PROG_CC AC_ISC_POSIX @@ -298,14 +296,13 @@ AC_SUBST(LTLIBOBJS) dnl LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/.lo/g'` dnl AC_SUBST(LTALLOCA) +ALL_LINGUAS="cs el fr pl sv" AM_GNU_GETTEXT -dnl AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl) AC_OUTPUT(libmisc/Makefile man/Makefile man/pl/Makefile lib/Makefile src/Makefile Makefile contrib/Makefile debian/Makefile doc/Makefile etc/Makefile intl/Makefile intl/po2tbl.sed po/Makefile.in etc/pam.d/Makefile old/Makefile - redhat/Makefile redhat/shadow-utils.spec, + shadow-utils.spec, echo timestamp > stamp-h) - diff --git a/contrib/Makefile.am b/contrib/Makefile.am index ea24774e..2c3160e8 100644 --- a/contrib/Makefile.am +++ b/contrib/Makefile.am @@ -2,5 +2,5 @@ # and also cooperate to make a distribution for `make dist' EXTRA_DIST = README adduser.c adduser-old.c adduser.sh adduser2.sh \ - atudel groupmems.shar pwdauth.c rpasswd.c shadow-anonftp.patch \ - udbachk.v012.tgz + atudel groupmems.shar pwdauth.c shadow-anonftp.patch \ + udbachk.tgz diff --git a/contrib/Makefile.in b/contrib/Makefile.in index 4f546120..063a4d80 100644 --- a/contrib/Makefile.in +++ b/contrib/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -105,7 +104,7 @@ VERSION = @VERSION@ YACC = @YACC@ l = @l@ -EXTRA_DIST = README adduser.c adduser-old.c adduser.sh adduser2.sh atudel groupmems.shar pwdauth.c rpasswd.c shadow-anonftp.patch udbachk.v012.tgz +EXTRA_DIST = README adduser.c adduser-old.c adduser.sh adduser2.sh atudel groupmems.shar pwdauth.c shadow-anonftp.patch udbachk.tgz mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h @@ -115,7 +114,7 @@ DIST_COMMON = README Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: @@ -138,7 +137,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -167,7 +166,7 @@ uninstall: uninstall-am all-am: Makefile all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: diff --git a/contrib/rpasswd.c b/contrib/rpasswd.c deleted file mode 100644 index da6b77c0..00000000 --- a/contrib/rpasswd.c +++ /dev/null @@ -1,591 +0,0 @@ -/* rpasswd.c -- restricted `passwd' wrapper. - Copyright (C) 1996 Adam Solesby, Joshua Cowan - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ - -/* This program is meant to be a wrapper for use with `sudo' and your - system's `passwd' program. It is *probably* secure, but there is no - warranty (see above). If you find errors or security holes, please - email me; please include a complete description of the problem in - your message in addition to any patches. */ - -/* This program currently assumes that the arguments given on the - command line are user names to pass to the `passwd' program; it loops - through the arguments calling `passwd' on each one. It might be - better to pass all remaining arguments after `--' to `passwd' (to - e.g., change the user's shell instead of the password by giving it - the `-s' option). */ - -/* Written by Adam Solesby . */ -/* Rewritten by Joshua Cowan . */ - -/* Usage: rpasswd USERNAME... - Enforce password-changing guidelines. - - --check[=file] check configuration information; if FILE is given, - use that instead of the standard configuration - file `./rpasswd.conf' - --help display this help and exit - --version output version information and exit - - You may never change a superuser's password with this command. - Changing certain other users' passwords may also be forbidden; for - details of who's passwords may not be changed, try `rpasswd --check'. */ - -/* TODO: - - - Make this more portable. It currently depends on several - GNU/Linux-specific features. */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -/* This is the absolute path to the `passwd' program on your system. */ -#define _PATH_PASSWD "/usr/bin/passwd" - -/* This is the absolute path to the configuration file. */ -#define _PATH_RPASSWD_CONF "/etc/rpasswd.conf" - -/* Don't change the password of any user with a uid equal to or below - this number--no matter what the configuration file says. */ -#define UID_PWD_CHANGE_FLOOR 100 - -/* Everything past this point should probably be left alone. */ - -/* These are the facility and priority (respectively) used by the syslog - functions. */ -#define LOG_FACILITY LOG_AUTH -#define LOG_PRIORITY LOG_WARNING - -/* The name this program was run with. */ -char *program_name; - -/* The version information for this program. */ -char *version_string = "1.2"; - -/* If nonzero, display usage information and exit. */ -static int show_help; - -/* If nonzero, print the version on standard output then exit. */ -static int show_version; - -/* If nonzero, check the configuration file for errors and print the - list of restrictions on the standard output, then exit. */ -static int check_only; - -struct user_list -{ - char *name; - struct user_list *next; -}; - -struct config_info -{ - /* Don't change the password for any user with a uid less than or - equal to this number. */ - uid_t minimum_uid; - - /* Don't change the password for any user matching this list of user - names. */ - struct user_list *inviolate_user_names; -}; - -static const struct option long_options[] = -{ - {"check", optional_argument, 0, 10}, - {"version", no_argument, &show_version, 1}, - {"help", no_argument, &show_help, 1}, - {0, 0, 0, 0} -}; - -static struct config_info *get_config_info (); -static int dump_config_info (); -static void *xmalloc (); -static void *xrealloc (); -static void xsyslog (int, const char *, ...); -static void dal_error (int, int, const char *, ...); - -static void -usage (status) - int status; -{ - if (status != 0) - fprintf (stderr, "Try `%s --help' for more information.\n", - program_name); - else - { - printf ("Usage: %s USERNAME...\n", program_name); - fputs ("\ -Enforce password-changing guidelines.\n\ -\n\ - --check[=file] check configuration information; if FILE is given,\n\ - use that instead of the standard configuration file\n\ - `"_PATH_RPASSWD_CONF"'\n\ - --help display this help and exit\n\ - --version output version information and exit\n", - stdout); - - printf ("\n\ -You may never change a superuser's password with this command. Changing\n\ -certain other users' passwords may also be forbidden; for details of\n\ -who's passwords may not be changed, try `%s --check'.\n", - program_name); - } - - exit (status); -} - -int -main (argc, argv) - int argc; - char **argv; -{ - char *executing_user_name; - char *config_file_name = _PATH_RPASSWD_CONF; - int opt; - struct config_info *config; - - /* Setting values of global variables. */ - program_name = argv[0]; - - while ((opt = getopt_long (argc, argv, "", long_options, 0)) - != EOF) - switch (opt) - { - case 0: - break; - - case 10: - check_only = 1; - if (optarg) - config_file_name = optarg; - break; - - default: - usage (1); - } - - if (show_version) - { - printf ("rpasswd %s\n", version_string); - return 0; - } - - if (show_help) - { - usage (0); - } - - if (check_only) - { - dump_config_info (config_file_name); - exit (0); - } - - if (optind >= argc) - { - fprintf (stderr, "%s: missing argument\n", program_name); - usage (1); - } - - /* FIXME: does `sudo' set the real user id to the effective user id? - If so, this won't work as intended: We want to get the name of the - user who ran `sudo'. I am reluctant to use `getlogin' for obvious - reasons, but it may be better than nothing. Maybe someone who - actually has `sudo' installed can tell me if this works, or how to - fix it if it doesn't. --JC */ - do - { - struct passwd *pwd; - uid_t uid = getuid (); - - pwd = getpwuid (uid); - - if (!pwd || !pwd->pw_name) - { - xsyslog (LOG_PRIORITY, - "Unknown user (uid #%d) attempted to change password for `%s'.", - uid, argv[optind]); - fprintf (stderr, "%s: you do not exist, go away\n", - program_name); - exit (1); - } - else - executing_user_name = pwd->pw_name; - } - while (0); - - config = get_config_info (config_file_name); - - for (; optind < argc; optind++) - { - int immutable_p = 0; - struct user_list *user_names = config->inviolate_user_names; - - /* Make sure we weren't given an illegal user name. */ - for (; user_names; user_names = user_names->next) - { - if (strcmp (argv[optind], user_names->name) - == 0) - { - immutable_p = 1; - break; - } - } - - if (!immutable_p) - { - struct passwd *pwd; - - pwd = getpwnam (argv[optind]); - - if (!pwd) - { - fprintf (stderr, "%s: invalid user `%s'\n", - program_name, argv[optind]); - - continue; - } - else if (pwd->pw_uid <= config->minimum_uid) - immutable_p = 1; - } - - if (immutable_p) - { - xsyslog (LOG_PRIORITY, - "`%s' attempted to change password for `%s'.", - executing_user_name, argv[optind]); - fprintf (stderr, - "You are not allowed to change the password for `%s'.\n", - argv[optind]); - } - else - { - int pid, status; - - pid = fork (); - switch (pid) - { - case -1: - dal_error (1, errno, "cannot fork"); - - case 0: - execl (_PATH_PASSWD, _PATH_PASSWD, "--", argv[optind], 0); - _exit (1); - - default: - while (wait (&status) != pid) - ; - - if (status & 0xFFFF) - dal_error (1, EIO, "%s", _PATH_PASSWD); - - break; - } - } - } - - exit (0); -} - -/* Get configuration information from FILE and return a pointer to a - `config_info' structure containing that information. It currently - does minimal checking of the validity of the information. - - This function never returns NULL, even when the configuration file is - empty. If the configuration file doesn't exist, it just exits with a - failed exit status. */ - -static struct config_info * -get_config_info (file) - const char *const file; -{ - FILE *config_file; - struct config_info *config; - char linebuf[BUFSIZ]; - unsigned int lineno = 0; - - config = (struct config_info *) xmalloc (sizeof (struct config_info)); - config->minimum_uid = (uid_t) 0; - config->inviolate_user_names = 0; - - config_file = fopen (file, "r"); - if (!config_file) - dal_error (1, errno, "%s", file); - - if (fseek (config_file, 0L, SEEK_SET)) - dal_error (1, errno, "%s", file); - - while (fgets (linebuf, BUFSIZ, config_file)) - { - int len, i, uid_found = 0; - - lineno++; - - len = strlen (linebuf); - - /* Chomp any whitespace off the end of the line. */ - while (isspace (linebuf[len - 1])) - linebuf[--len] = '\0'; - - /* If this line is empty or a comment, skip it and go to the next. */ - if (len == 0 || *linebuf == '#') - continue; - - for (i = 0; i < len; i++) - if (!isalnum (linebuf[i]) - && linebuf[i] != '.' - && linebuf[i] != '-' - && linebuf[i] != '_') - { - dal_error (1, 0, "%s:%u: invalid user name `%s'", - file, lineno, linebuf); - } - - /* Only accept positive integers as candidates for `minimum_uid'. */ - for (i = 0; i < len; i++) - if (!isdigit (linebuf[i])) - break; - - if (!uid_found && i == len) - { - unsigned long num; - - errno = 0; - num = strtoul (linebuf, 0, 10); - config->minimum_uid = (uid_t) num; - - if (errno || config->minimum_uid != num) - dal_error (1, 0, "%s:%u: `%s' out of range", - file, lineno, linebuf); - - uid_found = 1; - } - else - { - struct user_list *tail = config->inviolate_user_names; - struct user_list *user_names = 0; - - /* This could be more efficient, but makes the list of users - printed out with the `--check' switch easier to read. */ - - for (; tail; tail = tail->next) - { - if (strcmp (linebuf, tail->name) == 0) - break; - - user_names = tail; - } - - if (!tail) - { - tail = user_names; - - user_names = xmalloc (sizeof (struct user_list)); - user_names->name = strcpy (xmalloc (len + 1), linebuf); - user_names->next = 0; - - if (!config->inviolate_user_names) - config->inviolate_user_names = user_names; - else - tail->next = user_names; - } - } - } - - fclose (config_file); - - if (config->minimum_uid < UID_PWD_CHANGE_FLOOR) - config->minimum_uid = UID_PWD_CHANGE_FLOOR; - - return config; -} - -/* Dump the configuration info contained in FILE to the standard output. */ - -static int -dump_config_info (file) - char *file; -{ - struct config_info *config; - - config = get_config_info (file); - - printf ("\ -The lowest uid who's password may be changed is number %d. Changing -the following users' passwords is also forbidden:\n", - config->minimum_uid + 1); - - if (!config->inviolate_user_names) - { - printf ("\n (no users listed in configuration file `%s')\n", - file); - } - else - { - int column; - struct user_list *user_names = config->inviolate_user_names; - - for (column = 73; user_names; user_names = user_names->next) - { - int name_len = strlen (user_names->name); - - if (user_names->next) - name_len++; - - column += name_len; - - if (column > 72) - { - fputs ("\n ", stdout); - column = name_len + 2; - } - else if (column - name_len > 0) - { - fputc (' ', stdout); - column++; - } - - fputs (user_names->name, stdout); - - if (user_names->next) - fputc (',', stdout); - } - - fputc ('\n', stdout); - } - - return 0; -} - -static void * -xmalloc (n) - size_t n; -{ - void *ptr; - - ptr = malloc (n); - - if (!ptr) - { - fprintf (stderr, "%s: Memory exhausted\n", program_name); - exit (1); - } - - return ptr; -} - -static void * -xrealloc (ptr, n) - void *ptr; - size_t n; -{ - ptr = realloc (ptr, n); - - if (!ptr) - { - fprintf (stderr, "%s: Memory exhausted\n", program_name); - exit (1); - } - - return ptr; -} - -static void -xsyslog (int priority, const char *format, ...) -{ - va_list args; - static int logfd_opened = 0; - - if (!logfd_opened) - { - openlog (program_name, LOG_PID, LOG_FACILITY); - logfd_opened = 1; - } - - va_start (args, format); - vsyslog (priority, format, args); - va_end (args); -} - -/* Format and display MESSAGE on the standard error and send it to the - system logger. If ERRNUM is not 0, append the system error message - corresponding to ERRNUM to the output. If STATUS is not 0, exit with - an exit status of STATUS. */ - -static void -dal_error (int status, int errnum, const char *message, ...) -{ - va_list args; - size_t bufsize; - char *formatted_message; - - fflush (stdout); - - bufsize = strlen (message) * 2; - formatted_message = (char *) xmalloc (bufsize); - - va_start (args, message); - - while (1) - { - int printed; - printed = vsnprintf (formatted_message, bufsize, message, args); - - if ((size_t) printed < bufsize) - break; - - bufsize *= 2; - formatted_message = xrealloc (formatted_message, bufsize); - } - - va_end (args); - - if (errnum) - { - char *error_message = strerror (errnum); - - formatted_message - = xrealloc (formatted_message, - (strlen (formatted_message) - + strlen (error_message) - + 3)); - - strcat (formatted_message, ": "); - strcat (formatted_message, error_message); - } - - fprintf (stderr, "%s: %s\n", program_name, formatted_message); - - xsyslog (LOG_PRIORITY, "%s", formatted_message); - - free (formatted_message); - fflush (stderr); - - if (status) - { - closelog (); - exit (status); - } -} diff --git a/contrib/udbachk.tgz b/contrib/udbachk.tgz new file mode 100644 index 0000000000000000000000000000000000000000..605ad6396685704d0d3b820d2376227c031186f2 GIT binary patch literal 17571 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 K%FXQn7y$r@Wh?9e literal 0 HcmV?d00001 diff --git a/contrib/udbachk.v012.tgz b/contrib/udbachk.v012.tgz deleted file mode 100644 index 82bd320412905ccc23dd3f557f7943eb25489845..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20228 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 /dev/null \ @@ -167,7 +166,7 @@ uninstall: uninstall-am all-am: Makefile all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: diff --git a/doc/LSM b/doc/LSM index 75a215e1..865ec357 100644 --- a/doc/LSM +++ b/doc/LSM @@ -11,9 +11,9 @@ Keywords: login passwd security shadow Author: jfh@austin.ibm.com (Julianne F. Haugh) Maintained-by: kloczek@rudy.mif.pg.gda.pl (Tomasz Kloczko) marekm@linux.org.pl (Marek Michalkiewicz) - previous maintainer -Primary-site: piast.t19.ds.pwr.wroc.pl /pub/linux/shadow/ +Primary-site: ftp://ftp.pld.org.pl/software/shadow/ 718K shadow-20000902.tar.gz -Alternate-site: ftp.ists.pwr.wroc.pl /pub/linux/shadow/ +Alternate-site: ftp://ftp.pld.org.pl/software/shadow/ Original-site: ftp.uu.net ? Platforms: Linux, SunOS, ... Copying-policy: FRS diff --git a/doc/Makefile.am b/doc/Makefile.am index 487677a0..b817bb1c 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -1,7 +1,7 @@ # This is a dummy Makefile.am to get automake work flawlessly, # and also cooperate to make a distribution for `make dist' -EXTRA_DIST = ANNOUNCE CHANGES HOWTO LICENSE LSM README README.debian \ +EXTRA_DIST = ANNOUNCE HOWTO LICENSE LSM README \ README.limits README.linux README.mirrors README.nls README.pam \ README.platforms README.shadow-paper README.sun4 \ WISHLIST console.c.spec.txt cracklib26.diff diff --git a/doc/Makefile.in b/doc/Makefile.in index b4ee0917..904c47a9 100644 --- a/doc/Makefile.in +++ b/doc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -105,7 +104,7 @@ VERSION = @VERSION@ YACC = @YACC@ l = @l@ -EXTRA_DIST = ANNOUNCE CHANGES HOWTO LICENSE LSM README README.debian README.limits README.linux README.mirrors README.nls README.pam README.platforms README.shadow-paper README.sun4 WISHLIST console.c.spec.txt cracklib26.diff +EXTRA_DIST = ANNOUNCE HOWTO LICENSE LSM README README.limits README.linux README.mirrors README.nls README.pam README.platforms README.shadow-paper README.sun4 WISHLIST console.c.spec.txt cracklib26.diff mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h @@ -115,7 +114,7 @@ DIST_COMMON = README INSTALL Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: @@ -138,7 +137,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -167,7 +166,7 @@ uninstall: uninstall-am all-am: Makefile all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: diff --git a/doc/README.debian b/doc/README.debian deleted file mode 100644 index 43b749be..00000000 --- a/doc/README.debian +++ /dev/null @@ -1,68 +0,0 @@ -Read this file first for a brief overview of the new versions of login -and passwd. - - ----Shadow passwords - -The command `shadowconfig on' will turn on shadow password support. -`shadowconfig off' will turn it back off. If you turn on shadow -password support, you'll gain the ability to set password ages and -expirations with chage(1). - -You may want to install the secure-su package which allows more -restrictions on su, for example a wheel group. - - ----General configuration - -Most of the configuration for the shadow utilities is in -/etc/login.defs. See login.defs(5). The defaults are quite -reasonable. - - ----MD5 Encryption - -If you set MD5_CRYPT_ENAB=yes in /etc/login.defs, passwords will be -encrypted with an MD5-based algorithm. It also supports of passwords -of unlimited length and longer salt strings. - - ----Login and resource control - -/etc/login.access and /etc/porttime control who may login to which -ports and when they may login. To enforce time restrictions, you'll -need to run logoutd. /etc/init.d/logoutd will start it on bootup if -there are non-comment lines in /etc/portttime. - -The lastlog and faillog commands will report the last time a user had -a successful and failed login, respectively. - -You may set per-user resource limits by editing /etc/limits. See -limits(5). - - ----Adding users and groups - -Though you may add users and groups with the SysV type commands, -useradd and groupadd, I recommend you add them with Debian adduser -version 3+. adduser gives you more configuration and conforms to the -Debian UID and GID allocation. - -Editing user and group parameters can be done with usermod and -groupmod. Removing users and groups can be done with userdel and -groupdel. - - ---- Group administration - -Local group allocation is much easier. With gpasswd(1) you can -designate users to administer groups. They can then securely add or -remove users from the group. - - ---- What to read next? - -Read the manpages, the other files in this directory, and the Shadow -Password HOWTO (included in the doc-linux package). A large portion -of these files deals with getting shadow installed. You can, of -course, ignore those parts. diff --git a/etc/Makefile.am b/etc/Makefile.am index f2ce1621..fbc59952 100644 --- a/etc/Makefile.am +++ b/etc/Makefile.am @@ -1,7 +1,6 @@ # This is a dummy Makefile.am to get automake work flawlessly, # and also cooperate to make a distribution for `make dist' -EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux \ - shells suauth +EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux SUBDIRS = pam.d diff --git a/etc/Makefile.in b/etc/Makefile.in index c27dab48..8798a199 100644 --- a/etc/Makefile.in +++ b/etc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -105,8 +104,7 @@ VERSION = @VERSION@ YACC = @YACC@ l = @l@ -EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux shells suauth - +EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux SUBDIRS = pam.d mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs @@ -117,7 +115,7 @@ DIST_COMMON = Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: @@ -226,7 +224,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -265,7 +263,7 @@ uninstall: uninstall-recursive all-am: Makefile all-redirect: all-recursive install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: installdirs-recursive installdirs-am: diff --git a/etc/pam.d/Makefile.am b/etc/pam.d/Makefile.am index c9041de6..1e79d504 100644 --- a/etc/pam.d/Makefile.am +++ b/etc/pam.d/Makefile.am @@ -1,4 +1,4 @@ # This is a dummy Makefile.am to get automake work flawlessly, # and also cooperate to make a distribution for `make dist' -EXTRA_DIST = passwd su +EXTRA_DIST = passwd su shadow diff --git a/etc/pam.d/Makefile.in b/etc/pam.d/Makefile.in index 83dbbb8b..58b97d6b 100644 --- a/etc/pam.d/Makefile.in +++ b/etc/pam.d/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -105,7 +104,7 @@ VERSION = @VERSION@ YACC = @YACC@ l = @l@ -EXTRA_DIST = passwd su +EXTRA_DIST = passwd su shadow mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../../config.h CONFIG_CLEAN_FILES = @@ -114,7 +113,7 @@ DIST_COMMON = Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: @@ -137,7 +136,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -166,7 +165,7 @@ uninstall: uninstall-am all-am: Makefile all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: diff --git a/etc/pam.d/passwd b/etc/pam.d/passwd index 989d5b96..89e09c93 100644 --- a/etc/pam.d/passwd +++ b/etc/pam.d/passwd @@ -1,5 +1,3 @@ #%PAM-1.0 -#[For version 1.0 syntax, the above header is optional] -# $Id: passwd,v 1.1 1998/07/23 22:13:15 marekm Exp $ # /etc/pam.d/passwd - sample PAM config file for the `passwd' service password required pam_unix_passwd.so diff --git a/etc/pam.d/shadow b/etc/pam.d/shadow new file mode 100644 index 00000000..d837cace --- /dev/null +++ b/etc/pam.d/shadow @@ -0,0 +1,6 @@ +#%PAM-1.0 +# /etc/pam.d/shadow - sample PAM config file for all shadow utils like: +# chpasswd, groupadd, groupdel, groupmod, newusers, useradd, userdel, usermod. +auth sufficient /lib/security/pam_rootok.so +account required /lib/security/pam_permit.so +password required /lib/security/pam_make.so /var/db diff --git a/etc/pam.d/su b/etc/pam.d/su index 066be02e..f1ca25ba 100644 --- a/etc/pam.d/su +++ b/etc/pam.d/su @@ -1,6 +1,4 @@ #%PAM-1.0 -#[For version 1.0 syntax, the above header is optional] -# $Id: su,v 1.1 1998/07/23 22:13:15 marekm Exp $ # /etc/pam.d/su - sample PAM config file for the `su' service auth sufficient pam_rootok.so auth required pam_unix_auth.so diff --git a/etc/shells b/etc/shells deleted file mode 100644 index e7f0e538..00000000 --- a/etc/shells +++ /dev/null @@ -1,10 +0,0 @@ -# /etc/shells: valid login shells -/bin/ash -/bin/bash -/bin/csh -/bin/sh -/usr/bin/es -/usr/bin/ksh -/usr/bin/rc -/usr/bin/tcsh -/usr/bin/zsh diff --git a/etc/suauth b/etc/suauth deleted file mode 100644 index 85620c4f..00000000 --- a/etc/suauth +++ /dev/null @@ -1,4 +0,0 @@ -# /etc/suauth - secure-su control file. See suauth(5) for full documentation. - -# Uncommenting this line will only allow members of group root to su to root. -# root:ALL EXCEPT GROUP root:DENY diff --git a/intl/Makefile.in b/intl/Makefile.in index 4bdb186d..41dbec5f 100644 --- a/intl/Makefile.in +++ b/intl/Makefile.in @@ -114,26 +114,26 @@ install-exec: all if test "$(PACKAGE)" = "gettext" \ && test '@INTLOBJS@' = '$(GETTOBJS)'; then \ if test -r $(MKINSTALLDIRS); then \ - $(MKINSTALLDIRS) $(libdir) $(includedir); \ + $(MKINSTALLDIRS) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \ else \ - $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \ + $(top_srcdir)/mkinstalldirs $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \ fi; \ - $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \ - $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \ + $(INSTALL_DATA) intlh.inst $(DESTDIR)$(includedir)/libintl.h; \ + $(INSTALL_DATA) libintl.a $(DESTDIR)$(libdir)/libintl.a; \ else \ : ; \ fi install-data: all if test "$(PACKAGE)" = "gettext"; then \ if test -r $(MKINSTALLDIRS); then \ - $(MKINSTALLDIRS) $(gettextsrcdir); \ + $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \ else \ - $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ + $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \ fi; \ - $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \ + $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \ dists="$(DISTFILES.common)"; \ for file in $$dists; do \ - $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \ + $(INSTALL_DATA) $(srcdir)/$$file $(DESTDIR)$(gettextsrcdir)/$$file; \ done; \ else \ : ; \ @@ -145,7 +145,7 @@ installcheck: uninstall: dists="$(DISTFILES.common)"; \ for file in $$dists; do \ - rm -f $(gettextsrcdir)/$$file; \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ done info dvi: diff --git a/intl/dcgettext.c b/intl/dcgettext.c index 0f7bb486..c4c7a2c7 100644 --- a/intl/dcgettext.c +++ b/intl/dcgettext.c @@ -21,11 +21,11 @@ #include -#if defined __GNUC__ && !defined C_ALLOCA +#ifdef __GNUC__ # define alloca __builtin_alloca # define HAVE_ALLOCA 1 #else -# if (defined HAVE_ALLOCA_H || defined _LIBC) && !defined C_ALLOCA +# if defined HAVE_ALLOCA_H || defined _LIBC # include # else # ifdef _AIX @@ -217,24 +217,6 @@ struct block_list # define DCGETTEXT dcgettext__ #endif -/* Checking whether the binaries runs SUID must be done and glibc provides - easier methods therefore we make a difference here. */ -#ifdef _LIBC -# define ENABLE_SECURE __libc_enable_secure -# define DETERMINE_SECURE -#else -static int enable_secure; -# define ENABLE_SECURE (enable_secure == 1) -# define DETERMINE_SECURE \ - if (enable_secure == 0) \ - { \ - if (getuid () != geteuid () || getgid () != getegid ()) \ - enable_secure = 1; \ - else \ - enable_secure = -1; \ - } -#endif - /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY locale. */ char * @@ -259,12 +241,9 @@ DCGETTEXT (domainname, msgid, category) if (msgid == NULL) return NULL; - /* See whether this is a SUID binary or not. */ - DETERMINE_SECURE; - /* If DOMAINNAME is NULL, we are interested in the default domain. If CATEGORY is not LC_MESSAGES this might not make much sense but the - definition left this undefined. */ + defintion left this undefined. */ if (domainname == NULL) domainname = _nl_current_default_domain; @@ -294,7 +273,7 @@ DCGETTEXT (domainname, msgid, category) size_t path_max; char *ret; - path_max = (unsigned int) PATH_MAX; + path_max = (unsigned) PATH_MAX; path_max += 2; /* The getcwd docs say to do this. */ dirname = (char *) alloca (path_max + dirname_len); @@ -339,7 +318,7 @@ DCGETTEXT (domainname, msgid, category) /* Search for the given string. This is a loop because we perhaps - got an ordered list of languages to consider for the translation. */ + got an ordered list of languages to consider for th translation. */ while (1) { /* Make CATEGORYVALUE point to the next element of the list. */ @@ -360,15 +339,6 @@ DCGETTEXT (domainname, msgid, category) while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') *cp++ = *categoryvalue++; *cp = '\0'; - - /* When this is a SUID binary we must not allow accessing files - outside the dedicated directories. */ - if (ENABLE_SECURE - && (memchr (single_locale, '/', - _nl_find_language (single_locale) - single_locale) - != NULL)) - /* Ingore this entry. */ - continue; } /* If the current locale value is C (or POSIX) we don't load a @@ -426,8 +396,7 @@ find_msg (domain_file, msgid) struct loaded_l10nfile *domain_file; const char *msgid; { - size_t act = 0; - size_t top, bottom; + size_t top, act, bottom; struct loaded_domain *domain; if (domain_file->decided == 0) diff --git a/intl/explodename.c b/intl/explodename.c index 80a3111c..8066dc29 100644 --- a/intl/explodename.c +++ b/intl/explodename.c @@ -43,17 +43,6 @@ /* @@ end of prolog @@ */ -char * -_nl_find_language (const char *name) -{ - while (name[0] != '\0' && name[0] != '_' && name[0] != '@' - && name[0] != '+' && name[0] != ',') - ++name; - - return (char *) name; -} - - int _nl_explode_name (name, language, modifier, territory, codeset, normalized_codeset, special, sponsor, revision) @@ -85,7 +74,9 @@ _nl_explode_name (name, language, modifier, territory, codeset, mask = 0; syntax = undecided; *language = cp = name; - cp = _nl_find_language (*language); + while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@' + && cp[0] != '+' && cp[0] != ',') + ++cp; if (*language == cp) /* This does not make sense: language has to be specified. Use diff --git a/intl/hash-string.h b/intl/hash-string.h index 939e9582..cacb38e4 100644 --- a/intl/hash-string.h +++ b/intl/hash-string.h @@ -33,9 +33,9 @@ /* Defines the so called `hashpjw' function by P.J. Weinberger [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, 1986, 1987 Bell Telephone Laboratories, Inc.] */ -static unsigned long int hash_string PARAMS ((const char *__str_param)); +static unsigned long hash_string PARAMS ((const char *__str_param)); -static inline unsigned long int +static inline unsigned long hash_string (str_param) const char *str_param; { @@ -47,8 +47,8 @@ hash_string (str_param) while (*str != '\0') { hval <<= 4; - hval += (unsigned long int) *str++; - g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4)); + hval += (unsigned long) *str++; + g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4)); if (g != 0) { hval ^= g >> (HASHWORDBITS - 8); diff --git a/intl/l10nflist.c b/intl/l10nflist.c index 30f5f645..9c7dc183 100644 --- a/intl/l10nflist.c +++ b/intl/l10nflist.c @@ -352,7 +352,7 @@ _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language, names. */ const char * _nl_normalize_codeset (codeset, name_len) - const char *codeset; + const unsigned char *codeset; size_t name_len; { int len = 0; diff --git a/intl/loadinfo.h b/intl/loadinfo.h index 1c4524ab..f4ebf6d8 100644 --- a/intl/loadinfo.h +++ b/intl/loadinfo.h @@ -50,7 +50,7 @@ struct loaded_l10nfile }; -extern const char *_nl_normalize_codeset PARAMS ((const char *codeset, +extern const char *_nl_normalize_codeset PARAMS ((const unsigned char *codeset, size_t name_len)); extern struct loaded_l10nfile * @@ -74,5 +74,3 @@ extern int _nl_explode_name PARAMS ((char *name, const char **language, const char **special, const char **sponsor, const char **revision)); - -extern char *_nl_find_language PARAMS ((const char *name)); diff --git a/intl/loadmsgcat.c b/intl/loadmsgcat.c index 2c6a5650..515892df 100644 --- a/intl/loadmsgcat.c +++ b/intl/loadmsgcat.c @@ -31,13 +31,8 @@ # include #endif -#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ - || (defined _LIBC && defined _POSIX_MAPPED_FILES) +#if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC # include -# undef HAVE_MMAP -# define HAVE_MMAP 1 -#else -# undef HAVE_MMAP #endif #include "gettext.h" @@ -73,7 +68,10 @@ _nl_load_domain (domain_file) size_t size; struct stat st; struct mo_file_header *data = (struct mo_file_header *) -1; +#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ + || defined _LIBC int use_mmap = 0; +#endif struct loaded_domain *domain; domain_file->decided = 1; @@ -101,7 +99,8 @@ _nl_load_domain (domain_file) return; } -#ifdef HAVE_MMAP +#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ + || defined _LIBC /* Now we are ready to load the file. If mmap() is available we try this first. If not available or it failed we try to load it. */ data = (struct mo_file_header *) mmap (NULL, size, PROT_READ, @@ -150,7 +149,8 @@ _nl_load_domain (domain_file) if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED) { /* The magic number is wrong: not a message catalog file. */ -#ifdef HAVE_MMAP +#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ + || defined _LIBC if (use_mmap) munmap ((caddr_t) data, size); else @@ -166,7 +166,10 @@ _nl_load_domain (domain_file) domain = (struct loaded_domain *) domain_file->data; domain->data = (char *) data; +#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ + || defined _LIBC domain->use_mmap = use_mmap; +#endif domain->mmap_size = size; domain->must_swap = data->magic != _MAGIC; @@ -184,8 +187,9 @@ _nl_load_domain (domain_file) ((char *) data + W (domain->must_swap, data->hash_tab_offset)); break; default: - /* This is an invalid revision. */ -#ifdef HAVE_MMAP + /* This is an illegal revision. */ +#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ + || defined _LIBC if (use_mmap) munmap ((caddr_t) data, size); else @@ -208,11 +212,9 @@ internal_function _nl_unload_domain (domain) struct loaded_domain *domain; { -#ifdef _POSIX_MAPPED_FILES if (domain->use_mmap) munmap ((caddr_t) domain->data, domain->mmap_size); else -#endif /* _POSIX_MAPPED_FILES */ free ((void *) domain->data); free (domain); diff --git a/intl/localealias.c b/intl/localealias.c index 861020dd..bca555a6 100644 --- a/intl/localealias.c +++ b/intl/localealias.c @@ -80,9 +80,7 @@ void free (); file and the name space must not be polluted. */ # define strcasecmp __strcasecmp -# ifndef mempcpy -# define mempcpy __mempcpy -# endif +# define mempcpy __mempcpy # define HAVE_MEMPCPY 1 /* We need locking here since we can be called from different places. */ @@ -91,9 +89,6 @@ void free (); __libc_lock_define_initialized (static, lock); #endif -#ifndef internal_function -# define internal_function -#endif /* For those loosing systems which don't have `alloca' we have to add some additional code emulating it. */ @@ -130,15 +125,6 @@ struct block_list # define alloca(size) (malloc (size)) #endif /* have alloca */ -#if defined _LIBC_REENTRANT || defined HAVE_FGETS_UNLOCKED -# undef fgets -# define fgets(buf, len, s) fgets_unlocked (buf, len, s) -#endif -#if defined _LIBC_REENTRANT || defined HAVE_FEOF_UNLOCKED -# undef feof -# define feof(s) feof_unlocked (s) -#endif - struct alias_map { @@ -264,10 +250,10 @@ read_alias_file (fname, fname_len) b) these fields must be usable as file names and so must not be that long */ - char buf[BUFSIZ]; - char *alias; - char *value; - char *cp; + unsigned char buf[BUFSIZ]; + unsigned char *alias; + unsigned char *value; + unsigned char *cp; if (fgets (buf, sizeof buf, fp) == NULL) /* EOF reached. */ diff --git a/lib/Makefile.in b/lib/Makefile.in index d28a1db4..2722c9ad 100644 --- a/lib/Makefile.in +++ b/lib/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -45,9 +45,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -75,7 +76,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -88,7 +88,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -177,7 +176,7 @@ strstr.c DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best SOURCES = $(libshadow_a_SOURCES) $(libshadow_la_SOURCES) OBJECTS = $(libshadow_a_OBJECTS) $(libshadow_la_OBJECTS) @@ -310,50 +309,13 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || cp -p $$d/$$file $(distdir)/$$file || :; \ fi; \ done -commonio.lo commonio.o : commonio.c ../config.h rcsid.h defines.h \ - gshadow_.h commonio.h -dialchk.lo dialchk.o : dialchk.c ../config.h rcsid.h defines.h \ - gshadow_.h prototypes.h dialup.h dialchk.h -dialup.lo dialup.o : dialup.c ../config.h rcsid.h prototypes.h defines.h \ - gshadow_.h dialup.h -encrypt.lo encrypt.o : encrypt.c ../config.h rcsid.h prototypes.h \ - defines.h gshadow_.h -fputsx.lo fputsx.o : fputsx.c ../config.h defines.h gshadow_.h rcsid.h -getdef.lo getdef.o : getdef.c ../config.h rcsid.h prototypes.h defines.h \ - gshadow_.h getdef.h -getpass.lo getpass.o : getpass.c ../config.h rcsid.h defines.h \ - gshadow_.h getdef.h -groupio.lo groupio.o : groupio.c ../config.h rcsid.h prototypes.h \ - defines.h gshadow_.h commonio.h groupio.h -gshadow.lo gshadow.o : gshadow.c ../config.h rcsid.h prototypes.h \ - defines.h gshadow_.h -lockpw.lo lockpw.o : lockpw.c ../config.h -port.lo port.o : port.c ../config.h rcsid.h defines.h gshadow_.h port.h -putgrent.lo putgrent.o : putgrent.c ../config.h prototypes.h defines.h \ - gshadow_.h -pwauth.lo pwauth.o : pwauth.c ../config.h rcsid.h prototypes.h defines.h \ - gshadow_.h pwauth.h getdef.h -pwio.lo pwio.o : pwio.c ../config.h rcsid.h prototypes.h defines.h \ - gshadow_.h commonio.h pwio.h -rad64.lo rad64.o : rad64.c ../config.h rcsid.h -sgetgrent.lo sgetgrent.o : sgetgrent.c ../config.h rcsid.h defines.h \ - gshadow_.h -sgetpwent.lo sgetpwent.o : sgetpwent.c ../config.h rcsid.h defines.h \ - gshadow_.h -sgroupio.lo sgroupio.o : sgroupio.c ../config.h rcsid.h prototypes.h \ - defines.h gshadow_.h commonio.h sgroupio.h -shadowio.lo shadowio.o : shadowio.c ../config.h rcsid.h prototypes.h \ - defines.h gshadow_.h commonio.h shadowio.h -shadow.lo shadow.o : shadow.c ../config.h -tcfsio.lo tcfsio.o : tcfsio.c ../config.h -utent.lo utent.o : utent.c ../config.h info-am: info: info-am @@ -379,7 +341,7 @@ uninstall: uninstall-am all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(HEADERS) all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: $(mkinstalldirs) $(DESTDIR)$(libdir) diff --git a/libmisc/Makefile.am b/libmisc/Makefile.am index 21fe04cd..31d80d26 100644 --- a/libmisc/Makefile.am +++ b/libmisc/Makefile.am @@ -10,11 +10,50 @@ localedir = $(datadir)/locale INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@ -libmisc_a_SOURCES = addgrps.c age.c basename.c chkname.c chkshell.c \ - chowndir.c chowntty.c console.c copydir.c entry.c env.c failure.c \ - fields.c getdate.y hushed.c isexpired.c limits.c list.c log.c \ - login_access.c login_desrpc.c login_krb.c loginprompt.c mail.c motd.c \ - myname.c obscure.c pam_pass.c pwd2spwd.c pwdcheck.c pwd_init.c rlogin.c \ - salt.c setugid.c setup.c setupenv.c shell.c strtoday.c suauth.c sub.c \ - sulog.c ttytype.c tz.c ulimit.c utmp.c valid.c xmalloc.c +libmisc_a_SOURCES = \ + addgrps.c \ + age.c \ + basename.c \ + chkname.c \ + chkshell.c \ + chowndir.c \ + chowntty.c \ + console.c \ + copydir.c \ + entry.c \ + env.c \ + failure.c \ + fields.c \ + getdate.y \ + hushed.c \ + isexpired.c \ + limits.c \ + list.c log.c \ + login_access.c \ + login_desrpc.c \ + login_krb.c \ + loginprompt.c \ + mail.c \ + motd.c \ + myname.c \ + obscure.c \ + pam_pass.c \ + pwd2spwd.c \ + pwd_init.c \ + rlogin.c \ + salt.c \ + setugid.c \ + setup.c \ + setupenv.c \ + shell.c \ + strtoday.c \ + suauth.c \ + sub.c \ + sulog.c \ + ttytype.c \ + tz.c \ + ulimit.c \ + utmp.c \ + valid.c \ + xmalloc.c diff --git a/libmisc/Makefile.in b/libmisc/Makefile.in index 760788b5..615c765c 100644 --- a/libmisc/Makefile.in +++ b/libmisc/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -45,9 +45,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -75,7 +76,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -88,7 +88,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -112,7 +111,7 @@ localedir = $(datadir)/locale INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@ -libmisc_a_SOURCES = addgrps.c age.c basename.c chkname.c chkshell.c chowndir.c chowntty.c console.c copydir.c entry.c env.c failure.c fields.c getdate.y hushed.c isexpired.c limits.c list.c log.c login_access.c login_desrpc.c login_krb.c loginprompt.c mail.c motd.c myname.c obscure.c pam_pass.c pwd2spwd.c pwdcheck.c pwd_init.c rlogin.c salt.c setugid.c setup.c setupenv.c shell.c strtoday.c suauth.c sub.c sulog.c ttytype.c tz.c ulimit.c utmp.c valid.c xmalloc.c +libmisc_a_SOURCES = addgrps.c age.c basename.c chkname.c chkshell.c chowndir.c chowntty.c console.c copydir.c entry.c env.c failure.c fields.c getdate.y hushed.c isexpired.c limits.c list.c log.c login_access.c login_desrpc.c login_krb.c loginprompt.c mail.c motd.c myname.c obscure.c pam_pass.c pwd2spwd.c pwd_init.c rlogin.c salt.c setugid.c setup.c setupenv.c shell.c strtoday.c suauth.c sub.c sulog.c ttytype.c tz.c ulimit.c utmp.c valid.c xmalloc.c mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h @@ -127,9 +126,9 @@ libmisc_a_OBJECTS = addgrps.o age.o basename.o chkname.o chkshell.o \ chowndir.o chowntty.o console.o copydir.o entry.o env.o failure.o \ fields.o getdate.o hushed.o isexpired.o limits.o list.o log.o \ login_access.o login_desrpc.o login_krb.o loginprompt.o mail.o motd.o \ -myname.o obscure.o pam_pass.o pwd2spwd.o pwdcheck.o pwd_init.o rlogin.o \ -salt.o setugid.o setup.o setupenv.o shell.o strtoday.o suauth.o sub.o \ -sulog.o ttytype.o tz.o ulimit.o utmp.o valid.o xmalloc.o +myname.o obscure.o pam_pass.o pwd2spwd.o pwd_init.o rlogin.o salt.o \ +setugid.o setup.o setupenv.o shell.o strtoday.o suauth.o sub.o sulog.o \ +ttytype.o tz.o ulimit.o utmp.o valid.o xmalloc.o AR = ar CFLAGS = @CFLAGS@ COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -143,7 +142,7 @@ DIST_COMMON = Makefile.am Makefile.in getdate.c DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best SOURCES = $(libmisc_a_SOURCES) OBJECTS = $(libmisc_a_OBJECTS) @@ -255,104 +254,13 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || cp -p $$d/$$file $(distdir)/$$file || :; \ fi; \ done -addgrps.o: addgrps.c ../config.h ../lib/prototypes.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/rcsid.h -age.o: age.c ../config.h ../lib/prototypes.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/rcsid.h -basename.o: basename.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/prototypes.h -chkname.o: chkname.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h chkname.h -chkshell.o: chkshell.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -chowndir.o: chowndir.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -chowntty.o: chowntty.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -console.o: console.c ../config.h ../lib/defines.h ../lib/gshadow_.h \ - ../lib/getdef.h ../lib/rcsid.h -copydir.o: copydir.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -entry.o: entry.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -env.o: env.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -failure.o: failure.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/faillog.h ../lib/getdef.h failure.h -fields.o: fields.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -getdate.o: getdate.c ../config.h getdate.h ../lib/defines.h \ - ../lib/gshadow_.h -hushed.o: hushed.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/prototypes.h ../lib/getdef.h -isexpired.o: isexpired.c ../config.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/rcsid.h -limits.o: limits.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -list.o: list.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -login_access.o: login_access.c ../config.h ../lib/rcsid.h \ - ../lib/prototypes.h ../lib/defines.h ../lib/gshadow_.h -login_desrpc.o: login_desrpc.c ../config.h -login_krb.o: login_krb.c ../config.h -loginprompt.o: loginprompt.c ../config.h ../lib/rcsid.h \ - ../lib/prototypes.h ../lib/defines.h ../lib/gshadow_.h \ - ../lib/getdef.h -log.o: log.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h -mail.o: mail.c ../config.h ../lib/prototypes.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/getdef.h ../lib/rcsid.h -motd.o: motd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -myname.o: myname.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/prototypes.h -obscure.o: obscure.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -pam_pass.o: pam_pass.c ../config.h -pwd2spwd.o: pwd2spwd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -pwdcheck.o: pwdcheck.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwauth.h -pwd_init.o: pwd_init.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h -rlogin.o: rlogin.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -salt.o: salt.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -setugid.o: setugid.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -setupenv.o: setupenv.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -setup.o: setup.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -shell.o: shell.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -strtoday.o: strtoday.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h getdate.h -suauth.o: suauth.c ../config.h ../lib/prototypes.h ../lib/defines.h \ - ../lib/gshadow_.h -sub.o: sub.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -sulog.o: sulog.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -ttytype.o: ttytype.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -tz.o: tz.c ../config.h ../lib/rcsid.h ../lib/defines.h ../lib/gshadow_.h \ - ../lib/getdef.h -ulimit.o: ulimit.c ../config.h ../lib/rcsid.h -utmp.o: utmp.c ../config.h ../lib/defines.h ../lib/gshadow_.h \ - ../lib/rcsid.h -valid.o: valid.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -xmalloc.o: xmalloc.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h info-am: info: info-am @@ -376,7 +284,7 @@ uninstall: uninstall-am all-am: Makefile $(LIBRARIES) $(HEADERS) all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: diff --git a/libmisc/pwdcheck.c b/libmisc/pwdcheck.c deleted file mode 100644 index 1b3cea74..00000000 --- a/libmisc/pwdcheck.c +++ /dev/null @@ -1,69 +0,0 @@ -#include - -#include "rcsid.h" -RCSID("$Id$") - -#include "prototypes.h" -#include "defines.h" - -#include -#include "pwauth.h" - -#ifdef HAVE_SHADOW_H -#include -#endif - -#ifdef USE_PAM -#include "pam_defs.h" -#endif - -#define WRONGPWD2 "incorrect password for `%s'" - -void -passwd_check(const char *user, const char *passwd, const char *progname) -{ -#ifdef USE_PAM - pam_handle_t *pamh = NULL; - int retcode; - struct pam_conv conv = { misc_conv, NULL }; - - if (pam_start(progname, user, &conv, &pamh)) { -bailout: - SYSLOG((LOG_WARN, WRONGPWD2, user)); - sleep(1); - fprintf(stderr, _("Incorrect password for %s.\n"), user); - exit(1); - } - if (pam_authenticate(pamh, 0)) - goto bailout; - - retcode = pam_acct_mgmt(pamh, 0); - if (retcode == PAM_NEW_AUTHTOK_REQD) { - retcode = pam_chauthtok(pamh, PAM_CHANGE_EXPIRED_AUTHTOK); - } else if (retcode) - goto bailout; - - if (pam_setcred(pamh, 0)) - goto bailout; - - /* no need to establish a session; this isn't a session-oriented - * activity... */ - -#else /* !USE_PAM */ - -#ifdef SHADOWPWD - struct spwd *sp; - - if ((sp = getspnam(user))) - passwd = sp->sp_pwdp; - endspent(); -#endif - if (pw_auth(passwd, user, PW_LOGIN, (char *) 0) != 0) { - SYSLOG((LOG_WARN, WRONGPWD2, user)); - sleep(1); - fprintf(stderr, _("Incorrect password for %s.\n"), user); - exit(1); - } -#endif /* !USE_PAM */ -} - diff --git a/ltconfig b/ltconfig index 65ec6f65..c14d83c1 100755 --- a/ltconfig +++ b/ltconfig @@ -53,7 +53,7 @@ fi # Find the correct PATH separator. Usually this is `:', but # DJGPP uses `;' like DOS. -if test "X${PATH_SEPARATOR+set}" != "Xset"; then +if test "X${PATH_SEPARATOR+set}" != Xset; then UNAME=${UNAME-`uname 2>/dev/null`} case X$UNAME in *-DOS) PATH_SEPARATOR=';' ;; @@ -63,9 +63,9 @@ fi # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. -if test "${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi +if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi -if test "X${echo_test_string+set}" != "Xset"; then +if test "X${echo_test_string+set}" != Xset; then # find a string as large as possible, as long as the shell can cope with it for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... @@ -169,10 +169,10 @@ progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'` # Constants: PROGRAM=ltconfig PACKAGE=libtool -VERSION=1.3.3 -TIMESTAMP=" (1.385.2.181 1999/07/02 15:49:11)" -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5' -ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5' +VERSION=1.3.5 +TIMESTAMP=" (1.385.2.206 2000/05/27 11:12:27)" +ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' +ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' rm="rm -f" help="Try \`$progname --help' for more information." @@ -369,8 +369,8 @@ exec 5>>./config.log # Only set LANG and LC_ALL to C if already set. # These must not be set unconditionally because not all systems understand # e.g. LANG=C (notably SCO). -if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi -if test "${LANG+set}" = set; then LANG=C; export LANG; fi +if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi +if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi if test -n "$cache_file" && test -r "$cache_file"; then echo "loading cache $cache_file within ltconfig" @@ -462,7 +462,7 @@ aix3*) # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. - if test "${COLLECT_NAMES+set}" != set; then + if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -663,7 +663,7 @@ if test "$with_gcc" = yes; then link_static_flag='-static' case "$host_os" in - beos* | irix5* | irix6* | osf3* | osf4*) + beos* | irix5* | irix6* | osf3* | osf4* | osf5*) # PIC is the default for these OSes. ;; aix*) @@ -718,7 +718,7 @@ else # We can build DLLs from non-PIC. ;; - osf3* | osf4*) + osf3* | osf4* | osf5*) # All OSF/1 code is PIC. wl='-Wl,' link_static_flag='-non_shared' @@ -1164,15 +1164,21 @@ EOF # Extract the symbol export list from an `--export-all' def file, # then regenerate the def file from the symbol export list, so that # the compiled dll only exports the symbol export list. + # Be careful not to strip the DATA tag left by newer dlltools. export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~ test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~ $DLLTOOL --export-all --exclude-symbols DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def $objdir/$soname-ltdll.$objext $libobjs $convenience~ - sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]* ; *//" < $objdir/$soname-def > $export_symbols' + sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $objdir/$soname-def > $export_symbols' + # If DATA tags from a recent dlltool are present, honour them! archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~ _lt_hint=1; - for symbol in `cat $export_symbols`; do - echo " \$symbol @ \$_lt_hint ; " >> $objdir/$soname-def; + cat $export_symbols | while read symbol; do + set dummy \$symbol; + case \$# in + 2) echo " \$2 @ \$_lt_hint ; " >> $objdir/$soname-def;; + *) echo " \$2 @ \$_lt_hint \$3 ; " >> $objdir/$soname-def;; + esac; _lt_hint=`expr 1 + \$_lt_hint`; done~ test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~ @@ -1187,7 +1193,7 @@ EOF ;; netbsd*) - if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then + if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib' archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else @@ -1196,7 +1202,7 @@ EOF fi ;; - solaris*) + solaris* | sysv5*) if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then ld_shlibs=no cat <&2 @@ -1244,7 +1250,12 @@ EOF whole_archive_flag_spec= ;; *) - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + else + whole_archive_flag_spec= + fi ;; esac fi @@ -1405,7 +1416,7 @@ else old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def' ;; - osf3* | osf4*) + osf3*) if test "$with_gcc" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' @@ -1417,6 +1428,24 @@ else hardcode_libdir_separator=: ;; + osf4* | osf5*) # As osf3* with the addition of the -msym flag + if test "$with_gcc" = yes; then + allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $linkopts ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${objdir}/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linkopts -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib' + fi + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_separator=: + ;; + rhapsody*) + archive_cmds='$CC -bundle -undefined suppress -o $lib $libobjs $deplibs $linkopts' + hardcode_libdir_flags_spec='-L$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + sco3.2v5*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' hardcode_shlibpath_var=no @@ -1449,7 +1478,13 @@ else ;; sysv4) - archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + if test "x$host_vendor" = xsequent; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $linkopts' + else + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + fi runpath_var='LD_RUN_PATH' hardcode_shlibpath_var=no hardcode_direct=no #Motorola manual says yes, but my tests say they lie @@ -1461,6 +1496,18 @@ else export_dynamic_flag_spec='-Bexport' ;; + sysv5*) + no_undefined_flag=' -z text' + # $CC -shared without GNU ld will not create a library from C++ + # object files and a static libstdc++, better avoid it by now + archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts' + archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ + $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp' + hardcode_libdir_flag_spec= + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + ;; + uts4*) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' hardcode_libdir_flag_spec='-L$libdir' @@ -1474,14 +1521,28 @@ else ;; sysv4*MP*) - if test -d /usr/nec ;then - # archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs' - archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs' + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + + sysv4.2uw2*) + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linkopts' + hardcode_direct=yes + hardcode_minus_L=no hardcode_shlibpath_var=no - runpath_var=LD_RUN_PATH hardcode_runpath_var=yes - ld_shlibs=yes - fi + runpath_var=LD_RUN_PATH + ;; + + unixware7*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no ;; *) @@ -1589,11 +1650,11 @@ void nm_test_func(){} main(){nm_test_var='a';nm_test_func();return(0);} EOF - echo "$progname:1592: checking if global_symbol_pipe works" >&5 - if { (eval echo $progname:1593: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then + echo "$progname:1653: checking if global_symbol_pipe works" >&5 + if { (eval echo $progname:1654: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then # Now try to grab the symbols. nlist=conftest.nm - if { echo "$progname:1596: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then + if { echo "$progname:1657: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then # Try sorting and uniquifying the output. if sort "$nlist" | uniq > "$nlist"T; then @@ -1645,7 +1706,7 @@ EOF save_CFLAGS="$CFLAGS" LIBS="conftstm.$objext" CFLAGS="$CFLAGS$no_builtin_flag" - if { (eval echo $progname:1648: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then + if { (eval echo $progname:1709: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then pipe_works=yes else echo "$progname: failed program was:" >&5 @@ -1787,8 +1848,9 @@ beos*) bsdi4*) version_type=linux - library_names_spec='${libname}.so$major ${libname}.so' - soname_spec='${libname}.so' + need_version=no + library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' + soname_spec='${libname}${release}.so$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' @@ -1796,6 +1858,7 @@ bsdi4*) file_magic_test_file=/shlib/libc.so sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + export_dynamic_flag_spec=-rdynamic # the default ld.so.conf also contains /usr/contrib/lib and # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow # libtool to hard-code these into programs @@ -1841,10 +1904,9 @@ freebsd*) need_version=yes ;; esac - finish_cmds='PATH="\$PATH:/sbin" OBJFORMAT="'"$objformat"'" ldconfig -m $libdir' shlibpath_var=LD_LIBRARY_PATH case "$host_os" in - freebsd2* | freebsd3.[01]*) + freebsd2* | freebsd3.[01]* | freebsdelf3.[01]*) shlibpath_overrides_runpath=yes ;; *) # from 3.2 on @@ -1875,6 +1937,14 @@ hpux9* | hpux10* | hpux11*) soname_spec='${libname}${release}.sl$major' # HP-UX runs *really* slowly unless shared libraries are mode 555. postinstall_cmds='chmod 555 $lib' + case "$host_os" in + hpux10.20*) + # TODO: Does this work for hpux-11 too? + deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' + file_magic_cmd=/usr/bin/file + file_magic_test_file=/usr/lib/libc.sl + ;; + esac ;; irix5* | irix6*) @@ -1896,8 +1966,6 @@ irix5* | irix6*) *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *) libsuff= shlibsuff= libmagic=never-match;; esac - # this will be overridden with pass_all, but let us keep it just in case - deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" ;; esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH @@ -1924,9 +1992,7 @@ linux-gnu*) finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no - deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' - file_magic_cmd=/usr/bin/file - file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` + deplibs_check_method=pass_all if test -f /lib/ld.so.1; then dynamic_linker='GNU ld.so' @@ -1972,7 +2038,7 @@ os2*) shlibpath_var=LIBPATH ;; -osf3* | osf4*) +osf3* | osf4* | osf5*) version_type=osf need_version=no soname_spec='${libname}${release}.so' @@ -1987,6 +2053,14 @@ osf3* | osf4*) sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" ;; +rhapsody*) + version_type=sunos + library_names_spec='${libname}.so' + soname_spec='${libname}.so' + shlibpath_var=DYLD_LIBRARY_PATH + deplibs_check_method=pass_all + ;; + sco3.2v5*) version_type=osf soname_spec='${libname}${release}.so$major' @@ -2027,6 +2101,10 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) soname_spec='${libname}${release}.so$major' shlibpath_var=LD_LIBRARY_PATH case "$host_vendor" in + sequent) + file_magic_cmd='/bin/file' + deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' + ;; ncr) deplibs_check_method='pass_all' ;; @@ -2167,7 +2245,7 @@ else if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then lt_cv_dlopen=no lt_cv_dlopen_libs= echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -echo "$progname:2170: checking for dlopen in -ldl" >&5 +echo "$progname:2248: checking for dlopen in -ldl" >&5 ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2175,17 +2253,20 @@ else ac_save_LIBS="$LIBS" LIBS="-ldl $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2269: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2204,18 +2285,21 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for dlopen""... $ac_c" 1>&6 -echo "$progname:2207: checking for dlopen" >&5 +echo "$progname:2288: checking for dlopen" >&5 if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif char dlopen(); int main() { @@ -2231,7 +2315,7 @@ dlopen(); ; return 0; } EOF -if { (eval echo $progname:2234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2318: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_dlopen=yes" else @@ -2248,7 +2332,7 @@ if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 -echo "$progname:2251: checking for dld_link in -ldld" >&5 +echo "$progname:2335: checking for dld_link in -ldld" >&5 ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2256,17 +2340,20 @@ else ac_save_LIBS="$LIBS" LIBS="-ldld $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2356: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2285,18 +2372,21 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for shl_load""... $ac_c" 1>&6 -echo "$progname:2288: checking for shl_load" >&5 +echo "$progname:2375: checking for shl_load" >&5 if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif char shl_load(); int main() { @@ -2312,7 +2402,7 @@ shl_load(); ; return 0; } EOF -if { (eval echo $progname:2315: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2405: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_shl_load=yes" else @@ -2330,7 +2420,7 @@ if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then else echo "$ac_t""no" 1>&6 echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 -echo "$progname:2333: checking for shl_load in -ldld" >&5 +echo "$progname:2423: checking for shl_load in -ldld" >&5 ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -2338,18 +2428,21 @@ else ac_save_LIBS="$LIBS" LIBS="-ldld $LIBS" cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo $progname:2445: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -2392,17 +2485,17 @@ fi for ac_hdr in dlfcn.h; do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "$progname:2395: checking for $ac_hdr" >&5 +echo "$progname:2488: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext < int fnord = 0; EOF -ac_try="$ac_compile conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo $progname:2405: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +ac_try="$ac_compile >/dev/null 2>conftest.out" +{ (eval echo $progname:2498: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -2430,7 +2523,7 @@ done LIBS="$lt_cv_dlopen_libs $LIBS" echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2433: checking whether a program can dlopen itself" >&5 +echo "$progname:2526: checking whether a program can dlopen itself" >&5 if test "${lt_cv_dlopen_self+set}" = set; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2438,7 +2531,7 @@ else lt_cv_dlopen_self=cross else cat > conftest.c < @@ -2484,7 +2577,7 @@ main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } EOF -if { (eval echo $progname:2487: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +if { (eval echo $progname:2580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then lt_cv_dlopen_self=yes else @@ -2503,7 +2596,7 @@ echo "$ac_t""$lt_cv_dlopen_self" 1>&6 if test "$lt_cv_dlopen_self" = yes; then LDFLAGS="$LDFLAGS $link_static_flag" echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 -echo "$progname:2506: checking whether a statically linked program can dlopen itself" >&5 +echo "$progname:2599: checking whether a statically linked program can dlopen itself" >&5 if test "${lt_cv_dlopen_self_static+set}" = set; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2511,7 +2604,7 @@ else lt_cv_dlopen_self_static=cross else cat > conftest.c < @@ -2557,7 +2650,7 @@ main() { void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW); if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); } EOF -if { (eval echo $progname:2560: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null +if { (eval echo $progname:2653: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null then lt_cv_dlopen_self_static=yes else @@ -2649,7 +2742,7 @@ case "$ltmain" in # NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. # # Copyright (C) 1996-1999 Free Software Foundation, Inc. -# Gordon Matzigkeit , 1996 +# Originally by Gordon Matzigkeit , 1996 # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -2675,7 +2768,7 @@ Xsed="sed -e s/^X//" # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. -if test "\${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi +if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi ### BEGIN LIBTOOL CONFIG EOF @@ -2938,7 +3031,7 @@ case "$ltmain" in # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. -if test "${COLLECT_NAMES+set}" != set; then +if test "X${COLLECT_NAMES+set}" != Xset; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -2948,6 +3041,10 @@ EOF # Append the ltmain.sh script. sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1) + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? chmod +x "$ofile" ;; diff --git a/ltmain.sh b/ltmain.sh index ae10cad0..a9b7a671 100644 --- a/ltmain.sh +++ b/ltmain.sh @@ -54,8 +54,8 @@ modename="$progname" # Constants. PROGRAM=ltmain.sh PACKAGE=libtool -VERSION=1.3.3 -TIMESTAMP=" (1.385.2.181 1999/07/02 15:49:11)" +VERSION=1.3.5 +TIMESTAMP=" (1.385.2.206 2000/05/27 11:12:27)" default_mode= help="Try \`$progname --help' for more information." @@ -435,7 +435,7 @@ compiler." fbsd_hideous_sh_bug=$base_compile # All platforms use -DPIC, to notify preprocessed assembler code. - command="$base_compile $pic_flag -DPIC $srcfile" + command="$base_compile $srcfile $pic_flag -DPIC" if test "$build_old_libs" = yes; then lo_libobj="$libobj" dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` @@ -521,9 +521,17 @@ compiler." exit $error fi + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir="." + else + xdir="$xdir" + fi + baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"` + libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` # Now arrange that obj and lo_libobj become the same file - $show "$LN_S $obj $lo_libobj" - if $run $LN_S $obj $lo_libobj; then + $show "(cd $xdir && $LN_S $baseobj $libobj)" + if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then exit 0 else error=$? @@ -613,8 +621,6 @@ compiler." # libtool link mode link) modename="$modename: link" - C_compiler="$CC" # save it, to compile generated C sources - CC="$nonopt" case "$host" in *-*-cygwin* | *-*-mingw* | *-*-os2*) # It is impossible to link a dll without this setting, and @@ -802,8 +808,8 @@ compiler." allow_undefined=yes ;; esac - compile_command="$CC" - finalize_command="$CC" + compile_command="$nonopt" + finalize_command="$nonopt" compile_rpath= finalize_rpath= @@ -1650,7 +1656,7 @@ compiler." # Check that each of the things are valid numbers. case "$current" in - 0 | [1-9] | [1-9][0-9]*) ;; + [0-9]*) ;; *) $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 $echo "$modename: \`$vinfo' is not valid version information" 1>&2 @@ -1659,7 +1665,7 @@ compiler." esac case "$revision" in - 0 | [1-9] | [1-9][0-9]*) ;; + [0-9]*) ;; *) $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 $echo "$modename: \`$vinfo' is not valid version information" 1>&2 @@ -1668,7 +1674,7 @@ compiler." esac case "$age" in - 0 | [1-9] | [1-9][0-9]*) ;; + [0-9]*) ;; *) $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 $echo "$modename: \`$vinfo' is not valid version information" 1>&2 @@ -1789,6 +1795,10 @@ compiler." *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*) # these systems don't actually have a c library (as such)! ;; + *-*-rhapsody*) + # rhapsody is a little odd... + deplibs="$deplibs -framework System" + ;; *) # Add libc to deplibs on all other systems. deplibs="$deplibs -lc" @@ -1851,7 +1861,7 @@ compiler." int main() { return 0; } EOF $rm conftest - $C_compiler -o conftest conftest.c $deplibs + $CC -o conftest conftest.c $deplibs if test $? -eq 0 ; then ldd_output=`ldd conftest` for i in $deplibs; do @@ -1884,7 +1894,7 @@ EOF # If $name is empty we are operating on a -L argument. if test "$name" != "" ; then $rm conftest - $C_compiler -o conftest conftest.c $i + $CC -o conftest conftest.c $i # Did it work? if test $? -eq 0 ; then ldd_output=`ldd conftest` @@ -2047,12 +2057,19 @@ EOF done # Ensure that we have .o objects for linkers which dislike .lo - # (e.g. aix) incase we are running --disable-static + # (e.g. aix) in case we are running --disable-static for obj in $libobjs; do - oldobj=`$echo "X$obj" | $Xsed -e "$lo2o"` - if test ! -f $oldobj; then - $show "${LN_S} $obj $oldobj" - $run ${LN_S} $obj $oldobj || exit $? + xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$obj"; then + xdir="." + else + xdir="$xdir" + fi + baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` + oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` + if test ! -f $xdir/$oldobj; then + $show "(cd $xdir && ${LN_S} $baseobj $oldobj)" + $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $? fi done @@ -2311,8 +2328,16 @@ EOF # Just create a symlink. $show $rm $libobj $run $rm $libobj - $show "$LN_S $obj $libobj" - $run $LN_S $obj $libobj || exit $? + xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$libobj"; then + xdir="." + else + xdir="$xdir" + fi + baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'` + oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"` + $show "(cd $xdir && $LN_S $oldobj $baseobj)" + $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $? fi if test -n "$gentop"; then @@ -2598,16 +2623,21 @@ static const void *lt_preloaded_setup() { # linked before any other PIC object. But we must not use # pic_flag when linking with -static. The problem exists in # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2*|*-*-freebsd3.0*) + *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) case "$compile_command " in *" -static "*) ;; *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";; + esac;; + *-*-hpux*) + case "$compile_command " in + *" -static "*) ;; + *) pic_flag_for_symtable=" $pic_flag -DPIC";; esac esac # Now compile the dynamic symbol file. - $show "(cd $output_objdir && $C_compiler -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" - $run eval '(cd $output_objdir && $C_compiler -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? + $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" + $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $? # Clean up the generated files. $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" @@ -2776,7 +2806,7 @@ sed_quote_subst='$sed_quote_subst' # The HP-UX ksh and POSIX shell print the target directory to stdout # if CDPATH is set. -if test \"\${CDPATH+set}\" = set; then CDPATH=; export CDPATH; fi +if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi relink_command=\"$relink_command\" @@ -2865,7 +2895,7 @@ else fi" else echo >> $output "\ - program='$outputname$exeext' + program='$outputname' progdir=\"\$thisdir/$objdir\" " fi @@ -2901,13 +2931,21 @@ else # Run the actual program with our arguments. " case $host in - *-*-cygwin* | *-*-mingw | *-*-os2*) # win32 systems need to use the prog path for dll # lookup to work + *-*-cygwin*) + $echo >> $output "\ + exec \$progdir/\$program \${1+\"\$@\"} +" + ;; + + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2*) $echo >> $output "\ exec \$progdir\\\\\$program \${1+\"\$@\"} " ;; + *) $echo >> $output "\ # Export the path to the program. @@ -2995,14 +3033,21 @@ fi\ if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then eval cmds=\"$old_archive_from_new_cmds\" else - # Ensure that we have .o objects in place incase we decided + # Ensure that we have .o objects in place in case we decided # not to build a shared library, and have fallen back to building # static libs even though --disable-static was passed! for oldobj in $oldobjs; do if test ! -f $oldobj; then - obj=`$echo "X$oldobj" | $Xsed -e "$o2lo"` - $show "${LN_S} $obj $oldobj" - $run ${LN_S} $obj $oldobj || exit $? + xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'` + if test "X$xdir" = "X$oldobj"; then + xdir="." + else + xdir="$xdir" + fi + baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'` + obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"` + $show "(cd $xdir && ${LN_S} $obj $baseobj)" + $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $? fi done @@ -3417,7 +3462,11 @@ libdir='$install_libdir'\ if test "$finalize" = yes && test -z "$run"; then tmpdir="/tmp" test -n "$TMPDIR" && tmpdir="$TMPDIR" - tmpdir="$tmpdir/libtool-$$" + tmpdir=`mktemp -d $tmpdir/libtool-XXXXXX 2> /dev/null` + if test $? = 0 ; then : + else + tmpdir="$tmpdir/libtool-$$" + fi if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then : else $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 @@ -3672,8 +3721,10 @@ libdir='$install_libdir'\ done if test -z "$run"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi # Restore saved enviroment variables if test "${save_LC_ALL+set}" = set; then @@ -3690,8 +3741,10 @@ libdir='$install_libdir'\ exit 1 else # Display what would be done. - eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" - $echo "export $shlibpath_var" + if test -n "$shlibpath_var"; then + eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" + $echo "export $shlibpath_var" + fi $echo "$cmd$args" exit 0 fi diff --git a/man/Makefile.am b/man/Makefile.am index 16a40e7e..9d77158a 100644 --- a/man/Makefile.am +++ b/man/Makefile.am @@ -3,18 +3,49 @@ AUTOMAKE_OPTIONS = 1.0 foreign SUBDIRS = pl -man_MANS = chage.1 chfn.1 chsh.1 gpasswd.1 \ - login.1 newgrp.1 passwd.1 su.1 \ - shadow.3 \ - dialups.5 faillog.5 limits.5 login.access.5 login.defs.5 \ - passwd.5 porttime.5 shadow.5 suauth.5 \ - chpasswd.8 dpasswd.8 faillog.8 \ - groupadd.8 groupdel.8 groupmod.8 \ - grpck.8 lastlog.8 logoutd.8 mkpasswd.8 newusers.8 \ - pwck.8 pwconv.8 shadowconfig.8 \ - useradd.8 userdel.8 usermod.8 vipw.8 +man_MANS = \ + chage.1 \ + chfn.1 \ + chsh.1 \ + gpasswd.1 \ + login.1 \ + newgrp.1 \ + passwd.1 \ + su.1 \ + shadow.3 \ + dialups.5 \ + faillog.5 \ + limits.5 \ + login.access.5 \ + login.defs.5 \ + passwd.5 \ + porttime.5 \ + shadow.5 \ + suauth.5 \ + adduser.8 \ + chpasswd.8 \ + dpasswd.8 \ + faillog.8 \ + groupadd.8 \ + groupdel.8 \ + groupmod.8 \ + grpconv.8 \ + grpunconv.8 \ + grpck.8 \ + lastlog.8 \ + logoutd.8 \ + mkpasswd.8 \ + newusers.8 \ + pwck.8 \ + pwunconv.8 + pwconv.8 \ + shadowconfig.8 \ + useradd.8 \ + userdel.8 \ + usermod.8 \ + vipw.8 -EXTRA_DIST = groups.1 id.1 pw_auth.3 pwauth.8 sulogin.8 ${man_MANS} +EXTRA_DIST = groups.1 id.1 pw_auth.3 pwauth.8 sulogin.8 # subdirectories for translated manual pages SUBDIRS = pl diff --git a/man/Makefile.in b/man/Makefile.in index 076af868..3af1d077 100644 --- a/man/Makefile.in +++ b/man/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -46,9 +46,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -76,7 +77,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -89,7 +89,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -107,10 +106,10 @@ AUTOMAKE_OPTIONS = 1.0 foreign # subdirectories for translated manual pages SUBDIRS = pl -man_MANS = chage.1 chfn.1 chsh.1 gpasswd.1 login.1 newgrp.1 passwd.1 su.1 shadow.3 dialups.5 faillog.5 limits.5 login.access.5 login.defs.5 passwd.5 porttime.5 shadow.5 suauth.5 chpasswd.8 dpasswd.8 faillog.8 groupadd.8 groupdel.8 groupmod.8 grpck.8 lastlog.8 logoutd.8 mkpasswd.8 newusers.8 pwck.8 pwconv.8 shadowconfig.8 useradd.8 userdel.8 usermod.8 vipw.8 +man_MANS = chage.1 chfn.1 chsh.1 gpasswd.1 login.1 newgrp.1 passwd.1 su.1 shadow.3 dialups.5 faillog.5 limits.5 login.access.5 login.defs.5 passwd.5 porttime.5 shadow.5 suauth.5 adduser.8 chpasswd.8 dpasswd.8 faillog.8 groupadd.8 groupdel.8 groupmod.8 grpconv.8 grpunconv.8 grpck.8 lastlog.8 logoutd.8 mkpasswd.8 newusers.8 pwck.8 pwunconv.8 -EXTRA_DIST = groups.1 id.1 pw_auth.3 pwauth.8 sulogin.8 ${man_MANS} +EXTRA_DIST = groups.1 id.1 pw_auth.3 pwauth.8 sulogin.8 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = @@ -126,7 +125,7 @@ DIST_COMMON = Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: @@ -375,7 +374,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -414,7 +413,7 @@ uninstall: uninstall-recursive all-am: Makefile $(MANS) all-redirect: all-recursive install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: installdirs-recursive installdirs-am: $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man3 \ @@ -465,6 +464,12 @@ uninstall-am uninstall all-redirect all-am all installdirs-am \ installdirs mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean + pwconv.8 \ + shadowconfig.8 \ + useradd.8 \ + userdel.8 \ + usermod.8 \ + vipw.8 # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/man/chage.1 b/man/chage.1 deleted file mode 100644 index 2c09fc72..00000000 --- a/man/chage.1 +++ /dev/null @@ -1,109 +0,0 @@ -.\" Copyright 1990 - 1994 Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: chage.1,v 1.6 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH CHAGE 1 -.SH NAME -chage \- change user password expiry information -.SH SYNOPSIS -.TP 6 -\fBchage\fR -[\fB-m \fImindays\fR] [\fB-M \fImaxdays\fR] -[\fB-d \fIlastday\fR] [\fB-I \fIinactive\fR] -.br -[\fB-E \fIexpiredate\fR] [\fB-W \fIwarndays\fR] \fIuser\fR -.TP 6 -\fBchage\fR -\fB-l\fR \fIuser\fR -.SH DESCRIPTION -\fBchage\fR changes the number of days between password changes and the -date of the last password change. -This information is used by the system to determine when a user must -change her password. -The \fBchage\fR command is restricted to the root user, except for the -\fB-l\fR option, which may be used by an unprivileged user to determine -when her password or account is due to expire. -.PP -With the \fB-m\fR option, the value of \fImindays\fR is the minimum number -of days between password changes. -A value of zero for this field indicates that the user may change -her password at any time. -.PP -With the \fB-M\fR option, the value of \fImaxdays\fR is the maximum number -of days during which a password is valid. -When \fImaxdays\fR plus \fIlastday\fR is less than the current day, -the user will be required to change her password before being -able to use her account. -This occurance can be planned for in advance by use of the \fB-W\fR option, -which provides the user with advance warning. -.PP -With the \fB-d\fR option, the value of \fIlastday\fR is the number of days -since January 1st, 1970 when the password was last changed. -The date may also be expressed in the format YYYY-MM-DD (or the format more -commonly used in your area). -.PP -The \fB-E\fR option is used to set a date on which the user's account will -no longer be accessible. -The \fIexpiredate\fR option is the number of days since January 1, 1970 on -which the accounted is locked. -The date may also be expressed in the format YYYY-MM-DD (or the format more -commonly used in your area). -A user whose account is locked must contact the system administrator before -being able to use the system again. -.PP -The \fB-I\fR option is used to set the number of days of inactivity after -a password has expired before the account is locked. -A user whose account is locked must contact the system administrator before -being able to use the system again. -The \fIinactive\fR option is the number of days of inactivity. A value of -0 disables this feature. -.PP -The \fB-W\fR option is used to set the number of days of warning before a -password change is required. -The \fIwarndays\fR option is the number of days prior to the password -expiring that a user will be warned her password is about to expire. -.PP -All of the above values are stored exactly as days when the shadow -password file is used, but are converted to and from weeks when the -standard password file is used. -Because of this conversion, rounding errors may result. -.PP -If none of the options are selected, \fBchage\fR operates in an interactive -fashion, prompting the user with the current values for all of the fields. -Enter the new value to change the field, or leave the line blank to use -the current value. -The current value is displayed between a pair of \fB[ ]\fR marks. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- shadow user account information -.SH SEE ALSO -.BR passwd (5), -.BR shadow (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/chfn.1 b/man/chfn.1 deleted file mode 100644 index e0ae8828..00000000 --- a/man/chfn.1 +++ /dev/null @@ -1,66 +0,0 @@ -.\" Copyright 1990 - 1994 Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: chfn.1,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH CHFN 1 -.SH NAME -chfn \- change user name and information -.SH SYNOPSIS -.TP 5 -\fBchfn\fR -[\fB-f \fIfull_name\fR] [\fB-r \fIroom_no\fR] -.br -[\fB-w \fIwork_ph\fR] [\fB-h \fIhome_ph\fR] [\fB-o \fIother\fR] -[\fIuser\fR] -.SH DESCRIPTION -\fBchfn\fR changes user fullname, office number, office extension, and home -phone number information for a user's account. -This information is typically printed by \fBfinger\fR(1) and similiar -programs. -A normal user may only change the fields for their own account, -the super user may change the fields for any account. -Also, only the super user may use the \fB-o\fR option to change the -undefined portions of the GCOS field. -.PP -The only restrictions placed on the contents of the fields is that no -control characters may be present, nor any of comma, colon, or equal sign. -The \fIother\fR field does not have this restriction, and is used to -store accounting information used by other applications. -.PP -If none of the options are selected, \fBchfn\fR operates in an interactive -fashion, prompting the user with the current values for all of the fields. -Enter the new value to change the field, or leave the line blank to use -the current value. -The current value is displayed between a pair of \fB[ ]\fR marks. -Without options, chfn prompts for the current user account. -.SH FILES -/etc/passwd \- user account information -.SH SEE ALSO -.BR passwd (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/chpasswd.8 b/man/chpasswd.8 deleted file mode 100644 index 860a1cdc..00000000 --- a/man/chpasswd.8 +++ /dev/null @@ -1,62 +0,0 @@ -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: chpasswd.8,v 1.6 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH CHPASSWD 8 -.SH NAME -\fBchpasswd\fR - update password file in batch -.SH SYNOPSIS -\fBchpasswd [-e]\fR -.SH DESCRIPTION -\fBchpasswd\fR reads a file of user name and password pairs -from standard input and uses this information -to update a group of existing users. Without the -e switch, the -passwords are expected to be cleartext. With the -e switch, the -passwords are expected to be in encrypted form. -Each line is of the format -.sp 1 - \fIuser_name\fR:\fIpassword\fR -.sp 1 -The named user must exist. -The supplied password will be encrypted as necessary, and the password age -updated, if present. -.PP -This command is intended to be used in a large system environment where -many accounts are created at a single time. -.SH CAVEATS -.\" The \fBmkpasswd\fR command must be executed afterwards to update the -.\" DBM password files. -The input file must be protected if it contains unencrypted passwords. -.\" This command may be discarded in favor of the newusers(8) command. -.SH SEE ALSO -.\" mkpasswd(8), passwd(1), useradd(1) -.BR passwd (1), -.BR useradd (8), -.BR newusers (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/chsh.1 b/man/chsh.1 deleted file mode 100644 index c2c1ee3e..00000000 --- a/man/chsh.1 +++ /dev/null @@ -1,66 +0,0 @@ -.\" Copyright 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: chsh.1,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH CHSH 1 -.SH NAME -chsh \- change login shell -.SH SYNOPSIS -.TP 5 -\fBchsh\fR -[\fB-s \fIlogin_shell\fR] [\fIuser\fR] -.SH DESCRIPTION -\fBchsh\fR changes the user login shell. -This determines the name of the user's initial login command. -A normal user may only change the login shell for their own account, -the super user may change the login shell for any account. -.PP -The only restrictions placed on the login shell is that the -command name must be listed in \fI/etc/shells\fR, unless the -invoker is the super-user, and then any value may be added. -An account with a restricted login shell may not change -their login shell. -For this reason, placing \fB/bin/rsh\fR in \fI/etc/shells\fR -is discouraged since accidentally changing to a restricted -shell would prevent the user from every changing their login -shell back to its original value. -.PP -If the \fB-s\fR option is not selected, \fBchsh\fR operates in an interactive -fashion, prompting the user with the current login shell. -Enter the new value to change the field, or leave the line blank to use -the current value. -The current value is displayed between a pair of \fB[ ]\fR marks. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shells \- list of valid login shells -.SH SEE ALSO -.BR chfn (1), -.BR passwd (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/dialups.5 b/man/dialups.5 deleted file mode 100644 index df33d6cd..00000000 --- a/man/dialups.5 +++ /dev/null @@ -1,22 +0,0 @@ -.TH DIALUPS 5 "03 Oct 1999" -.SH NAME -d_passwd \- The dialup shell password file -.br -dialups \- List of dialup lines -.SH DESCRIPTION -The \fBd_passwd\fR file contains the names of login shells which require -dialup passwords. Each line contains the fully qualified path name -for the shell, followed by an optional password. Each field is separated -by a '\fB:\fR'. -.PP -The \fBdialups\fR file contains the names of ports which may be dialup -lines. Each line consists of the last component of the path name. The -leading "\fB/dev/\fR" string is removed. -.SH FILES -/etc/d_passwd \- dialup shell password file -.br -/etc/dialups \- dialup line list -.SH SEE ALSO -.BR login (1), -.SH AUTHOR -Ben Collins diff --git a/man/dpasswd.8 b/man/dpasswd.8 deleted file mode 100644 index b19b36f8..00000000 --- a/man/dpasswd.8 +++ /dev/null @@ -1,55 +0,0 @@ -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: dpasswd.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH DPASSWD 8 -.SH NAME -\fBdpasswd\fR - change dialup password -.SH SYNOPSIS -\fBdpasswd\fR -.RB [ - ( a | d )] -\fIshell\fR -.SH DESCRIPTION -\fBdpasswd\fR adds, deletes, and updates dialup passwords for user -login shells. -The dialup password is prompted for after a user's password has been -authenticated whenever the user logs in over a dialup line. -\fBdpasswd\fR will prompt for the new password twice to insure it -has been entered correctly. -.PP -The \fIshell\fR argument must be the complete pathname of the login -program. -.SH FILES -.br -/etc/d_passwd -.br -/etc/dialups -.SH SEE ALSO -.BR login (1) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/faillog.5 b/man/faillog.5 deleted file mode 100644 index 8beffdf9..00000000 --- a/man/faillog.5 +++ /dev/null @@ -1,59 +0,0 @@ -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: faillog.5,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH FAILLOG 5 -.SH NAME -faillog \- Login failure logging file -.SH DESCRIPTION -.I faillog -maintains a count of login failures and the limits for each account. -The file is fixed length record, indexed by numerical UID. -Each record contains the count of login failures since the last -successful login; -the maximum number of failures before the account is disabled; -the line the last login failure occured on; -and the date the last login failure occured. -.PP -The structure of the file is -.DS - - struct faillog { - short fail_cnt; - short fail_max; - char fail_line[12]; - time_t fail_time; - }; - -.DE -.SH FILES -/var/log/faillog \- login failure log -.SH SEE ALSO -.BR faillog (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/faillog.8 b/man/faillog.8 deleted file mode 100644 index 3ce76a1e..00000000 --- a/man/faillog.8 +++ /dev/null @@ -1,100 +0,0 @@ -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: faillog.8,v 1.7 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH FAILLOG 8 -.SH NAME -faillog \- examine faillog and set login failure limits -.SH SYNOPSIS -.TP 8 -.B faillog -.RB [ -u -.IR login-name ] -.RB [ -a ] -.RB [ -t -.IR days ] -.RB [ -m -.IR max ] -.RB [ -pr ] -.SH DESCRIPTION -\fBfaillog\fR formats the contents of the failure log, -\fI/var/log/faillog\fR, and maintains failure counts and -limits. -The order of the arguments to \fBfaillog\fR is significant. -Each argument is processed immediately in the order given. -.PP -The \fB-p\fR flag causes failure entries to be printed in UID -order. -Entering \fB-u \fIlogin-name\fR flag will -cause the failure record for \fIlogin-name\fR only to be printed. -Entering \fB-t \fIdays\fR will cause only the -failures more recent than \fIdays\fR to be printed. -The \fB-t\fR flag overrides the use of \fB-u\fR. -The \fB-a\fR flag causes all users to be selected. -When used with the \fB-p\fR flag, this option selects all users -who have ever had a login failure. -It is meaningless with the \fB-r\fR flag. -.PP -The \fB-r\fR flag is used to reset the count of login failures. -Write access to \fI/var/log/faillog\fR is required for -this option. -Entering \fB-u \fIlogin-name\fR will cause only the failure count -for \fIlogin-name\fR to be reset. -.PP -The \fB-m\fR flag is used to set the maximum number of login -failures before the account is disabled. -Write access to \fI/var/log/faillog\fR is required for this -option. -Entering \fB-m \fImax\fR will cause all accounts to be disabled -after \fImax\fR failed logins occur. -This may be modified with \fB-u \fIlogin-name\fR to limit this -function to \fIlogin-name\fR only. -Selecting a \fImax\fR value of 0 has the effect of not placing -a limit on the number of failed logins. -The maximum failure count -should always be 0 for \fBroot\fR to prevent -a denial of services attack against the system. -.PP -Options may be combined in virtually any fashion. -Each \fB-p\fR, \fB-r\fR, and \fB-m\fR option will cause -immediate execution using any \fB-u\fR or \fB-t\fR modifier. -.SH CAVEATS -\fBfaillog\fR only prints out users with no successful login since -the last failure. -To print out a user who has had a successful login since their last -failure, you must explicitly request the user with the \fB-u\fR flag, -or print out all users with the \fB-a\fR flag. -.PP -Some systems may replace /var/log with /var/adm or /usr/adm. -.SH FILES -/var/log/faillog \- failure logging file -.SH SEE ALSO -.BR login (1), -.BR faillog (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/gpasswd.1 b/man/gpasswd.1 deleted file mode 100644 index 2b9c3dfa..00000000 --- a/man/gpasswd.1 +++ /dev/null @@ -1,73 +0,0 @@ -.\" Copyright 1996, Rafal Maszkowski, rzm@pdi.net -.\" All rights reserved. You can redistribute this man page and/or -.\" modify it under the terms of the GNU General Public License as -.\" published by the Free Software Foundation; either version 2 of the -.\" License, or (at your option) any later version. -.\" -.\" $Id: gpasswd.1,v 1.2 1996/09/10 02:45:18 marekm Exp $ -.\" -.TH GPASSWD 1 -.SH NAME -gpasswd \- administer the /etc/group file -.br -.SH SYNOPSIS -.B gpasswd \fIgroup\fR -.br -.B gpasswd -.B -a -\fIuser\fR \fIgroup\fR -.br -.B gpasswd -.B -d -\fIuser\fR \fIgroup\fR -.br -.B gpasswd -.B -R -\fIgroup\fR -.br -.B gpasswd -.B -r -\fIgroup\fR -.br -.B gpasswd -.RB [ -A -\fIuser\fR,...] -.RB [ -M -\fIuser\fR,...] -\fIgroup\fR -.br -.SH DESCRIPTION -.B gpasswd -is used to administer the /etc/group file (and /etc/gshadow -file if compiled with SHADOWGRP defined). Every group can -have administrators, members and a password. System -administrator can use \fB-A\fR option to define group -administrator(s) and \fB-M\fR option to define members and -has all rights of group administrators and members. -.PP -Group administrator can add and delete users using \fB-a\fR -and \fB-d\fR options respectively. Administrators can use -\fB-r\fR option to remove group password. When no password -is set only group members can use -.BR newgrp (1) -to join the group. Option \fB-R\fR disables -access to the group through -.BR newgrp (1) -command. -.PP -.B gpasswd -called by a group administrator with group name only prompts -for the group password. If password is set the members can still -.BR newgrp (1) -without a password, non-members must supply the password. - -.SH FILES -/etc/group \- group information -.br -/etc/gshadow \- shadow group information -.SH SEE ALSO -.BR newgrp (1), -.BR groupadd (8), -.BR groupdel (8), -.BR groupmod (8), -.BR grpck (8) diff --git a/man/groupadd.8 b/man/groupadd.8 deleted file mode 100644 index 2d3de403..00000000 --- a/man/groupadd.8 +++ /dev/null @@ -1,64 +0,0 @@ -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: groupadd.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH GROUPADD 8 -.SH NAME -groupadd \- Create a new group -.SH SYNOPSIS -.B groupadd -[\fB-g\fI gid \fR[\fB-o\fR]] -.I group -.SH DESCRIPTION -The \fBgroupadd\fR command -creates a new group account using the values specified on the -command line and the default values from the system. -The new group will be entered into the system files as needed. -The options which apply to the \fBgroupadd\fR command are -.IP "\fB-g \fIgid\fR" -The numerical value of the group's ID. -This value must be unique, unless the \fB-o\fR option is used. -The value must be non-negative. -The default is to use the smallest ID value greater than 99 and -greater than every other group. -Values between 0 and 99 are typically reserved for system accounts. -.SH FILES -/etc/group \- group account information -.br -/etc/gshadow \- secure group account information -.SH SEE ALSO -.BR chfn (1), -.BR chsh (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8), -.BR passwd (1), -.BR groupdel (8), -.BR groupmod (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/groupdel.8 b/man/groupdel.8 deleted file mode 100644 index 19621a6b..00000000 --- a/man/groupdel.8 +++ /dev/null @@ -1,60 +0,0 @@ -.\" Copyright 1991 - 1993, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: groupdel.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH GROUPDEL 8 -.SH NAME -groupdel \- Delete a group -.SH SYNOPSIS -.B groupdel -.I group -.SH DESCRIPTION -The \fBgroupdel\fR command modifies the system account files, deleting -all entries that refer to \fIgroup\fR. -The named group must exist. -.PP -You must manually check all filesystems to insure that no files remain -with the named group as the file group ID. -.SH CAVEATS -You may not remove the primary group of any existing user. -You must remove the user before you remove the group. -.SH FILES -/etc/group \- group information -.br -/etc/gshadow \- secure group information -.SH SEE ALSO -.BR chfn (1), -.BR chsh (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8), -.BR passwd (1), -.BR groupadd (8), -.BR groupmod (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/groupmod.8 b/man/groupmod.8 deleted file mode 100644 index 28815dc8..00000000 --- a/man/groupmod.8 +++ /dev/null @@ -1,66 +0,0 @@ -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: groupmod.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH GROUPMOD 8 -.SH NAME -groupmod \- Modify a group -.SH SYNOPSIS -.B groupmod -[\fB-g\fI gid \fR[\fB-o\fR]] -[\fB-n\fI group_name \fR] -.I group -.SH DESCRIPTION -The \fBgroupmod\fR command modifies the system account files to reflect -the changes that are specified on the command line. -The options which apply to the \fIgroupmod\fR command are -.IP "\fB-g \fIgid\fR" -The numerical value of the group's ID. -This value must be unique, unless the \fB-o\fR option is used. -The value must be non-negative. -Values between 0 and 99 are typically reserved for system groups. -Any files which the old group ID is the file group ID -must have the file group ID changed manually. -.IP "\fB-n \fIgroup_name\fR" -The name of the group will be changed from \fIgroup\fR to -\fIgroup_name\fR. -.SH FILES -/etc/group \- group information -.br -/etc/gshadow \- secure group information -.SH SEE ALSO -.BR chfn (1), -.BR chsh (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8), -.BR passwd (1), -.BR groupadd (8), -.BR groupdel (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/grpck.8 b/man/grpck.8 deleted file mode 100644 index 3d2f7948..00000000 --- a/man/grpck.8 +++ /dev/null @@ -1,101 +0,0 @@ -.\" Copyright 1992 - 1993, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: grpck.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH GRPCK 1 -.SH NAME -grpck \- verify integrity of group files -.SH SYNOPSIS -\fBgrpck\fR [\fB-r\fR] [\fIgroup\fR \fIshadow\fR] -.SH DESCRIPTION -\fBgrpck\fR verifies the integrity of the system authentication information. -All entries in the \fI/etc/group\fR and \fI/etc/gshadow\fR are checked to -see that the entry has the proper format and valid data in each field. -The user is prompted to delete entries that are improperly formatted or -which have other incorrectable errors. -.P -Checks are made to verify that each entry has -.sp -.in +.5i -- the correct number of fields -.br -- a unique group name -.br -- a valid list of members and administrators -.in -.5i -.sp -.P -The checks for correct number of fields and unique group name are fatal. -If the entry has the wrong number of fields, the user will be prompted to -delete the entire line. -If the user does not answer affirmatively, all further checks are bypassed. -An entry with a duplicated group name is prompted for deletion, but the -remaining checks will still be made. -All other errors are warnings and the user is encouraged to run the -\fBgroupmod\fR command to correct the error. -.P -The commands which operate on the \fI/etc/group\fR file are not able to -alter corrupted or duplicated entries. -\fBgrpck\fR should be used in those circumstances to remove the offending -entry. -.SH OPTIONS -By default, \fBgrpck\fR operates on the files \fI/etc/group\fR and -\fI/etc/gshadow\fR. -The user may select alternate files with the \fIgroup\fR and \fIshadow\fR -parameters. -Additionally, the user may execute the command in read-only mode by -specifying the \fB-r\fR flag. -This causes all questions regarding changes to be answered \fBno\fR -without user intervention. -.SH FILES -/etc/group \- group account information -.br -/etc/gshadow \- encrypted passwords and group administrator information -.br -/etc/passwd \- user information -.SH SEE ALSO -.BR groupmod (8), -.BR group (5), -.BR passwd (5), -.BR shadow (5) -.SH DIAGNOSTICS -The \fBgrpck\fR command exits with the following values: -.IP 0 5 -Success -.IP 1 5 -Syntax Error -.IP 2 5 -One or more bad group entries -.IP 3 5 -Cannot open group files -.IP 4 5 -Cannot lock group files -.IP 5 5 -Cannot update group files -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/lastlog.8 b/man/lastlog.8 deleted file mode 100644 index 85acc13b..00000000 --- a/man/lastlog.8 +++ /dev/null @@ -1,63 +0,0 @@ -.\" Copyright 1992, Phillip Street and Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" @(#)lastlog.8 3.3 08:24:58 29 Sep 1993 (National Guard Release) -.\" $Id: lastlog.8,v 1.6 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH LASTLOG 8 -.SH NAME -lastlog \- examine lastlog file -.SH SYNOPSIS -.B lastlog -.RB [ -u -.IR login-name ] -.RB [ -t -.IR days ] -.SH DESCRIPTION -\fBlastlog\fR formats and prints the contents of the last login log, -\fI/var/log/lastlog\fR. The \fBlogin-name\fR, \fBport\fR, and \fBlast login -time\fR will be printed. -The default (no flags) causes lastlog entries to be printed, sorted -by the numerical UID. -Entering \fB-u \fIlogin-name\fR flag will -cause the lastlog record for \fIlogin-name\fR only to be printed. -Entering \fB-t \fIdays\fR will cause only the -lastlogins more recent than \fIdays\fR to be printed. -The \fB-t\fR flag overrides the use of \fB-u\fR. -.PP -If the user has never logged in the message \fB"**Never logged in**"\fR will -be displayed instead of the port and time. -.SH FILES -/var/log/lastlog \- lastlog logging file -.SH CAVEATS -Large gaps in uid numbers will cause the lastlog program to run longer with -no output to the screen (i.e. if mmdf=800 and last uid=170, program will -appear to hang as it processes uid 171-799). -.SH AUTHORS -Julianne Frances Haugh (jfh@austin.ibm.com) -.br -Phillip Street diff --git a/man/limits.5 b/man/limits.5 deleted file mode 100644 index 4031219c..00000000 --- a/man/limits.5 +++ /dev/null @@ -1,76 +0,0 @@ -.TH LIMITS 5 -.SH NAME -limits \- Resource limits definition -.SH DESCRIPTION -The -.I limits -file (/etc/limits by default or LIMITS_FILE defined config.h) -describes the resource limits you wish to impose. -It should be owned by root and readable by root account only. -.PP -By default no quotas are imposed on 'root'. In fact, there is no way to impose -limits via this procedure to root-equiv accounts (accounts with UID 0). -.PP -Each line describes a limit for a user in the form: -.sp -.I user LIMITS_STRING -.PP -The \fBLIMITS_STRING\fP is a string of a concatenated list of resource limits. -Each limit consists of a letter identifier followed by a numerical limit. -.PP -The valid identifiers are: -.sp -A: max address space (KB) -.br -C: max core file size (KB) -.br -D: max data size (KB) -.br -F: maximum filesize (KB) -.br -M: max locked-in-memory address space (KB) -.br -N: max number of open files -.br -R: max resident set size (KB) -.br -S: max stack size (KB) -.br -T: max CPU time (MIN) -.br -U: max number of processes -.br -K: file creation mask, set by \fBumask\fR(2). -.br -L: max number of logins for this user -.br -P: process priority, set by \fBsetpriority\fR(2). -.PP -For example, \fIL2D2048N5\fP is a valid \fBLIMITS_STRING\fP. For reading convenience, -the following entries are equivalent: -.sp -username L2D2048N5 -.br -username L2 D2048 N5 -.PP -Be aware that after \fIusername\fP the rest of the line is considered a limit -string, thus comments are not allowed. A invalid limits string will be -rejected (not considered) by the login program. -.PP -The default entry is denoted by username "\fB*\fP". If you have multiple \fIdefault\fP -entries in your \fBLIMITS_FILE\fP, then the last one will be used as the default -entry. -.PP -To completely disable limits for a user, a single dash "\fB-\fP" will do. -.PP -Also, please note that all limit settings are set PER LOGIN. They are -not global, nor are they permanent. Perhaps global limits will come, but -for now this will have to do ;) -.SH FILES -/etc/limits -.SH SEE ALSO -.BR login (1), -.BR setpriority (2), -.BR setrlimit (2) -.SH AUTHOR -Cristian Gafton (gafton@sorosis.ro) diff --git a/man/login.1 b/man/login.1 deleted file mode 100644 index 45a42b5f..00000000 --- a/man/login.1 +++ /dev/null @@ -1,155 +0,0 @@ -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: login.1,v 1.7 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH LOGIN 1 -.SH NAME -login \- Begin session on the system -.SH SYNOPSIS -\fBlogin\fR [\fB-p\fR] [\fIusername\fR] [\fIENV=VAR ...\fR] -.br -\fBlogin\fR [\fB-p\fR] [\fB-h\fR \fIhost\fR] [\fB-f\fR \fIusername\fR] -.br -\fBlogin\fR [\fB-p\fR] \fB-r\fR \fIhost\fR -.SH DESCRIPTION -.B login -is used to establish a new session with the system. -It is normally invoked automatically by responding to the -.I login: -prompt on the user\'s terminal. -.B login -may be special to the shell and may not be invoked as a sub-process. -Typically, -.B login -is treated by the shell as \fBexec login\fR which causes the user -to exit from the current shell. -Attempting to execute \fBlogin\fR from any shell but the login shell -will produce an error message. -.PP -When invoked from the \fIlogin:\fR prompt, the user may enter -environmental variables after the username. -These variables are entered in the form \fBNAME=VALUE\fR. -Not all variables may be set in the fashion, notably \fBPATH\fR, -\fBHOME\fR and \fBSHELL\fR. -Additionally, \fBIFS\fR may be inhibited if the user\'s login -shell is \fB/bin/sh\fR. -.PP -The user is then prompted for a password, where appropriate. -Echoing is disabled to prevent revealing the password. -Only a small number of password failures are permitted before -\fBlogin\fR exits and the communications link is severed. -.PP -If password aging has been enabled for your account, you may be -prompted for a new password before proceeding. -You will be forced to provide your old password and the new -password before continuing. -Please refer to \fBpasswd \fR(1) for more information. -.PP -After a successful login, -you will be informed of any system messages and the presence -of mail. -You may turn off the printing of the system message file, -\fI/etc/motd\fR, by creating a zero-length file \fI.hushlogin\fR -in your login directory. -The mail message will be one of "\fBYou have new mail.\fR", -"\fBYou have mail.\fR", or "\fBNo Mail.\fR" according to -the condition of your mailbox. -.PP -Your user and group ID will be set according to their values in -the \fI/etc/passwd\fR file. -The value for \fB$HOME\fR, \fB$SHELL\fR, \fB$PATH\fR, \fB$LOGNAME\fR, -and \fB$MAIL\fR are set according to the appropriate fields in the -password entry. -Ulimit, umask and nice values may also be set according to -entries in the GECOS field. -.PP -On some installations, the environmental variable \fB$TERM\fR will be -initialize to the terminal type on your tty line, as specified in -\fI/etc/ttytype\fR. -.PP -An initialization script for your command interpreter may also be -executed. -Please see the appropriate manual section for more information on -this function. -.PP -A subsystem login is indicated by the presense of a "*" as the first -character of the login shell. The given home directory will be used as -the root of a new filesystem which the user is actually logged into. -.SH OPTIONS -.TP -.B -p -Preserve environment. -.TP -.B -f -Do not perform authentication, user is preauthenticated. -.TP -.B -h -Name of the remote host for this login. -.TP -.B -r -Perform autologin protocol for rlogin. -.PP -The \fB-r -h\fP and \fB-f\fP options are only used when \fBlogin\fP is invoked by root. -.SH CAVEATS -.PP -This version of \fBlogin\fR has many compilation options, only some of which -may be in use at any particular site. -.PP -The location of files is subject to differences in system configuration. -.SH FILES -/etc/utmp \- list of current login sessions -.br -/etc/wtmp \- list of previous login sessions -.br -/etc/passwd \- user account information -.br -/etc/shadow \- encrypted passwords and age information -.br -/etc/motd \- system message file -.br -/etc/nologin \- prevent non-root users from logging in -.br -/etc/ttytype \- list of terminal types -.br -$HOME/.profile \- initialization script for default shell -.br -$HOME/.hushlogin \- suppress printing of system messages -.br -.SH SEE ALSO -.PP -.BR getty (8), -.BR mail (1), -.BR passwd (1), -.BR sh (1), -.BR su (1), -.BR login.defs (5), -.\" .BR d_passwd (5), -.BR passwd (5), -.BR nologin (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/login.access.5 b/man/login.access.5 deleted file mode 100644 index 01f06beb..00000000 --- a/man/login.access.5 +++ /dev/null @@ -1,52 +0,0 @@ -.\" this is comment -.TH LOGIN.ACCESS 5 -.\" .Dt SKEY.ACCESS 5 -.\" .Os FreeBSD 1.2 -.SH NAME -login.access \- Login access control table -.SH DESCRIPTION -The -.I login.access -file specifies (user, host) combinations and/or (user, tty) -combinations for which a login will be either accepted or refused. -.PP -When someone logs in, the -.I login.access -is scanned for the first entry that -matches the (user, host) combination, or, in case of non-networked -logins, the first entry that matches the (user, tty) combination. The -permissions field of that table entry determines whether the login will -be accepted or refused. -.PP -Each line of the login access control table has three fields separated by a -":" character: -.sp 1 -.IR permission : users : origins -.sp 1 -The first field should be a "\fB+\fR" (access granted) or "\fB-\fR" -(access denied) character. The second field should be a list of one or -more login names, group names, or -.B ALL -(always matches). The third field should be a list -of one or more tty names (for non-networked logins), host names, domain -names (begin with "\fB.\fR"), host addresses, internet network numbers -(end with "\fB.\fR"), -.B ALL -(always matches) or -.B LOCAL -(matches any string that does not contain a "\fB.\fR" character). -If you run NIS you can use @netgroupname in host or user patterns. -.PP -The -.B EXCEPT -operator makes it possible to write very compact rules. -.PP -The group file is searched only when a name does not match that of the -logged-in user. Only groups are matched in which users are explicitly -listed: the program does not look at a user's primary group id value. -.SH FILES -/etc/login.access -.SH SEE ALSO -.BR login (1) -.SH AUTHOR -Guido van Rooij diff --git a/man/login.defs.5 b/man/login.defs.5 deleted file mode 100644 index d21a3cc9..00000000 --- a/man/login.defs.5 +++ /dev/null @@ -1,573 +0,0 @@ -.\" Copyright 1991 - 1993, Julianne Frances Haugh and Chip Rosenthal -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: login.defs.5,v 1.7 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH LOGIN 5 -.SH NAME -/etc/login.defs \- Login configuration -.SH DESCRIPTION -The -.I /etc/login.defs -file defines the site-specific configuration for the shadow login -suite. This file is required. Absence of this file will not prevent -system operation, but will probably result in undesirable operation. -.PP -This file is a readable text file, each line of the file describing -one configuration parameter. The lines consist of a configuration -name and value, seperated by whitespace. Blank lines and comment -lines are ignored. Comments are introduced with a `#' pound sign and -the pound sign must be the first non-white character of the line. -.PP -Parameter values may be of four types: strings, booleans, numbers, -and long numbers. A string is comprised of any printable characters. -A boolean should be either the value ``yes'' or ``no''. An undefined -boolean parameter or one with a value other than these will be given -a ``no'' value. Numbers (both regular and long) may be either decimal -values, octal values (precede the value with ``0'') or hexadecimal -values (precede the value with ``0x''). The maximum value of the -regular and long numeric parameters is machine-dependant. -.PP -The following configuration items are provided: -.\" -.IP "CHFN_AUTH (boolean)" -If -.IR yes , -the -.B chfn -and -.B chsh -programs will ask for password before making any changes, unless -run by the superuser. -.\" -.IP "CHFN_RESTRICT (string)" -This parameter specifies which values in the -.I gecos -field of the -.I passwd -file may be changed by regular users using the -.B chfn -program. It can be any combination of letters -.IR f , -.IR r , -.IR w , -.IR h , -for Full name, Room number, Work phone, and Home phone, respectively. -If not specified, only the superuser can make any changes. -.\" -.IP "CLOSE_SESSIONS (boolean)" -Enable pam_close_session() calling. When using normal (pam_unix.so) -session handling modules, this is not needed. However with modules -(such as kerberos or other persistent session models), -.B login -needs to fork and wait for the shell to exit, so that sessions can be -cleaned up. -.\" -.IP "CONSOLE (string)" -If specified, this definition provides for a restricted set of lines -on which root logins will be allowed. An attempted root login which -does not meet the criteria established here will be rejected. The -value of this field may be one of two forms, either a fully-rooted -pathname such as -.sp -.ft I - CONSOLE /etc/consoles -.ft R -.sp -or a colon-delimited list of terminal lines such as: -.sp -.ft I - CONSOLE console:tty01:tty02:tty03:tty04 -.ft R -.sp -If a pathname is given, each line of the file should specify one -terminal line. If this parameter is not defined or the specified file -does not exist, then root logins will be allowed from any terminal -line. Because the removal of this file, or its truncation, could -result in unauthorized root logins, this file must be protected. -Where security is critical, the colon-separated form should be used -to prevent this potential method of attack. -.\" -.IP "CONSOLE_GROUPS (string)" -XXX needs to be documented. -.\" -.IP "CRACKLIB_DICTPATH (string)" -XXX needs to be documented. -.\" -.IP "DEFAULT_HOME (boolean)" -XXX needs to be documented. -.\" -.IP "DIALUPS_CHECK_ENAB (boolean)" -If -.I yes -and an -.I /etc/dialups -file exists, then secondary passwords are enabled upon the dialup -lines specified in this file. This file should contain a list of -dialups, one per line, for example: -.nf -.sp -.ft I - ttyfm01 - ttyfm02 - \0\0. - \0\0. - \0\0. -.ft R -.sp -.fi -.\" -.IP "ENVIRON_FILE (string)" -File containing a list of environment variables (one per line) to set -when logging in or su'ing. -.\" -.IP "ENV_HZ (string)" -This parameter specifies a value for an HZ environment parameter. -Example usage is: -.sp - \fIENV_HZ HZ=50\fR -.sp -If this parameter is not defined then no HZ value will be established. -.\" -.IP "ENV_PATH (string)" -This parameter must be defined as the search path for regular users. -When a login with UID other than zero occurs, the PATH environment -parameter is initialized to this value. This parameter is required; -if undefined a possibly incorrect default value will be provided. -.\" -.IP "ENV_SUPATH (string)" -This parameter must be defined as the search path for the superuser. -When a login with UID zero occurs, the PATH environment parameter is -initialized to this value. This parameter is required; if undefined -a possibly incorrect default value will be provided. -.\" -.IP "ENV_TZ (string)" -This parameter specifies information for generating a TZ environment -parameter. The value must either be the desired contents of TZ, or -the full pathname of a file which contains this information. Example -usage is: -.sp - \fIENV_TZ\0\0\0\0TZ=CST6CDT\fP -.sp -or -.sp - \fIENV_TZ\0\0\0\0/etc/tzname\fP -.sp -If a nonexistent file is named, then TZ will be initialized to some -default value. If this parameter is not defined then no TZ value will -be established. -.\" -.IP "ERASECHAR (number)" -The terminal -.I erase -character is initialized to this value. This is supported only on -systems with the -.I termio -interface, e.g. System V. If not specified, the erase character will -be initialized to a backspace. See KILLCHAR for related information. -.\" -.IP "FAILLOG_ENAB (boolean)" -If -.I yes -then login failures will be accumulated in -.I /var/log/faillog -in a -.BR faillog (8) -format. -.\" -.IP "FAIL_DELAY (number)" -Delay time in seconds after each failed login attempt. -.\" -.IP "FAKE_SHELL (string)" -Instead of the real user shell, the program specified by this -parameter will be launched, although its visible name (argv[0]) will -be the shell's. The program may do whatever it wants (logging, -additional authentification, banner, ...) before running the actual -shell. -.\" -.IP "FTMP_FILE (string)" -This parameter specifies the full pathname to a file to which login -failures are recorded. When a login failure occurs, a -.I utmp -format record will be appended to this file. Note that this differs -from the -.I /var/log/faillog -failure logging in that this facility logs every failure whereas the -``faillog'' facility accumulates failure information per user. If -this parameter is not specified then logging will be inhibited. See -FAILLOG_ENAB and LOG_UNKFAIL_ENAB for related information. -.\" -.IP "GID_MAX (number)" -.IP "GID_MIN (number)" -Range of group IDs to choose from for the -.B groupadd -program. -.\" -.IP "HUSHLOGIN_FILE (string)" -This parameter is used to establish ``hushlogin'' conditions. There -are two possible ways to establish these conditions. First, if the -value of this parameter is a filename and that file exists in the -user's home directory then ``hushlogin'' conditions will be in effect. -The contents of this file are ignored; its mere presence triggers -``hushlogin'' conditions. Second, if the value of this parameter is -a full pathname and either the user's login name or the user's shell -is found in this file, then ``hushlogin'' conditions will be in effect. -In this case, the file should be in a format similar to: -.nf -.sp -.ft I - demo - /usr/lib/uucp/uucico - \0\0. - \0\0. - \0\0. -.ft R -.sp -.fi -If this parameter is not defined, then ``hushlogin'' conditions will -never occur. When ``hushlogin'' conditions are established, the -message of the day, last successful and unsuccessful login display, -mail status display, and password aging checks are suppressed. Note -that allowing hushlogin files in user home directories allows the user -to disable password aging checks. See MOTD_FILE, FAILLOG_ENAB, -LASTLOG_ENAB, and MAIL_CHECK_ENAB for related information. -.\" -.IP "ISSUE_FILE (string)" -Full pathname of the file to display before each login prompt. -.\" -.IP "KILLCHAR (number)" -The terminal -.I kill -character is initialized to this value. This is supported only on -systems with the -.I termio -interface, e.g. System V. If not specified, the kill character will -be initialized to a \s-2CTRL/U\s0. -See ERASECHAR for related information. -.\" -.IP "LASTLOG_ENAB (boolean)" -If -.IR yes , -and if the -.I /var/log/lastlog -file exists, then a successful user login will be recorded to this -file. Furthermore, if this option is enabled then the times of the -most recent successful and unsuccessful logins will be displayed to -the user upon login. The unsuccessful login display will be suppressed -if FAILLOG_ENAB is not enabled. If ``hushlogin'' conditions are in -effect, then both the successful and unsuccessful login information -will be suppressed. -.\" -.IP "LOGIN_RETRIES (number)" -Number of login attempts allowed before the -.B login -program exits. -.\" -.IP "LOGIN_STRING (string)" -XXX needs to be documented. -.IP "LOGIN_TIMEOUT (number)" -XXX needs to be documented. -.IP "LOG_OK_LOGINS (boolean)" -XXX needs to be documented. -.IP "LOG_UNKFAIL_ENAB (boolean)" -If -.I yes -then unknown usernames will be included when a login failure is -recorded. Note that this is a potential security risk; a common login -failure mode is transposition of the user name and password, thus this -mode will often cause passwords to accumulate in the failure logs. -If this option is disabled then unknown usernames will be suppressed -in login failure messages. -.\" -.IP "MAIL_CHECK_ENAB (boolean)" -If -.IR yes , -the user will be notified of his or her mailbox status upon login. -See MAIL_DIR for related information. -.\" -.IP "MAIL_DIR (string)" -This parameter specifies the full pathname to the directory which -contains the user mailbox files. The user's login name is appended -to this path to form the MAIL environment parameter \- the path to -the user's mailbox. Either this parameter or MAIL_FILE must be defined; -if undefined some possibly incorrect default value will be assumed. -See MAIL_CHECK_ENAB for related information. -.\" -.IP "MAIL_FILE (string)" -This parameter specifies the name of the user's mailbox file. This -name is appended to the name of the user's home directory to form the -MAIL environment parameter \- the path to the user's mailbox. Either -this parameter or MAIL_DIR must be defined; if undefined some possibly -incorrect default value will be assumed. See MAIL_CHECK_ENAB for -related information. -.\" -.IP "MD5_CRYPT_ENAB (boolean)" -If -.IR yes , -the -.B passwd -program will encrypt newly changed passwords using a new MD5-based -.BR crypt (3) -password hashing algorithm, which originally appeared in FreeBSD, and -is also supported by libc-5.4.38 and glibc-2.0 (or higher) on Linux. -This algorithm allows passwords longer than 8 characters (limited by -.BR getpass (3) -to 127 characters), but is incompatible with traditional -.BR crypt (3) -implementations. -.\" -.IP "MOTD_FILE (string)" -This parameter specifies a colon-delimited list of pathnames to ``message -of the day'' files. -If a specified file exists, then its contents are displayed to the user -upon login. -If this parameter is not defined or ``hushlogin'' login conditions are -in effect, this information will be suppressed. -.\" -.IP "NOLOGINS_FILE (string)" -This parameter specifies the full pathname to a file which inhibits -non-root logins. If this file exists and a user other than root -attempts to log in, the contents of the file will be displayed and -the user will be disconnected. If this parameter is not specified -then this feature will be inhibited. -.\" -.IP "NOLOGIN_STR (string)" -XXX needs to be documented. -.\" -.IP "OBSCURE_CHECKS_ENAB (boolean)" -If -.IR yes , -the -.B passwd -program will perform additional checks before accepting a password change. -The checks performed are fairly simple, and their use is recommended. -These obscurity checks are bypassed if -.B passwd -is run by -.IR root . -See PASS_MIN_LEN for related information. -.\" -.IP "PASS_ALWAYS_WARN (boolean)" -XXX needs to be documented. -.\" -.IP "PASS_CHANGE_TRIES (number)" -XXX needs to be documented. -.\" -.IP "PASS_MIN_DAYS (number)" -The minimum number of days allowed between password changes. Any password -changes attempted sooner than this will be rejected. If not specified, a -zero value will be assumed. -.\" -.IP "PASS_MIN_LEN (number)" -The minimum number of characters in an acceptable password. An attempt to -assign a password with fewer characters will be rejected. A zero value -suppresses this check. If not specified, a zero value will be assumed. -.\" -.IP "PASS_MAX_DAYS (number)" -The maximum number of days a password may be used. If the password is -older than this, then the account will be locked. If not specified, -a large value will be assumed. -.\" -.IP "PASS_MAX_LEN (number)" -XXX needs to be documented. -.\" -.IP "PASS_WARN_AGE (number)" -The number of days warning given before a password expires. A zero means -warning is given only upon the day of expiration, a negative value means -no warning is given. If not specified, no warning will be provided. -.\" -.IP "PORTTIME_CHECKS_ENAB (boolean)" -If -.I yes -and an -.I /etc/porttime -file exists, that file will be consulted to ensure the user may login -at this time on the given line. -c.f. -.BR porttime (5) -.\" -.IP "QMAIL_DIR (string)" -For Qmail users, this parameter specifies a directory where a Maildir -hierarchy is stored. -See MAIL_CHECK_ENAB for related information. -.\" -.IP "QUOTAS_ENAB (boolean)" -If -.I yes , -then the user's ``ulimit,'' ``umask,'' and ``niceness'' will be -initialized to the values if specified in the -.I gecos -field of the -.I passwd -file. -c.f. -.BR passwd (5). -.\" -.IP "SU_NAME (string)" -This parameter assigns a command name when ``su -'' is run. For -example, if the parameter is defined as ``su'', then a -.BR ps (1) -listing would show the command running as ``-su''. If this parameter -is undefined, then a -.BR ps (1) -listing would show the name of the actual shell being run, e.g. -something like ``-sh''. -.\" -.IP "SULOG_FILE (string)" -This parameter specifies a full pathname of a file in which -.B su -activity is logged. -If this parameter is not specified, the logging is suppressed. -Because the -.B su -command may be used when attempting to authenticate a password, -either this option, or -.I syslog -should be used to note -.B su -activity. See the SYSLOG_SU_ENAB option for related information. -.\" -.IP "SU_WHEEL_ONLY (boolean)" -XXX needs to be documented. -.\" -.IP "SYSLOG_SG_ENAB (boolean)" -XXX needs to be documented. -.\" -.IP "SYSLOG_SU_ENAB (boolean)" -If -.I yes -and -.B login -was compiled with -.I syslog -support, then all -.B su -activity will be noted through the -.I syslog -facility. -See SULOG_FILE for related information. -.\" -.IP "TTYGROUP (string or number)" -The group ownership of the terminal is initialized to this group -name or number. One well-known security attack involves forcing terminal -control sequences upon another user's terminal line. This problem -can be averted by disabling permissions which allow other users to -access the terminal line, but this unfortunately prevents programs -such as -.B write -from operating. Another solution is to use a version of the -.B write -program which filters out potentially dangerous character sequences, -make this program ``setgid'' to a special group, assign group ownership -of the terminal line to this special group, and assign permissions of -\fI0620\fR to the terminal line. The TTYGROUP definition has been -provided for just this situation. If this item is not defined, then -the group ownership of the terminal is initialized to the user's group -number. See TTYPERMS for related information. -.\" -.IP "TTYPERM (number)" -The login terminal permissions are initialized to this value. Typical -values will be \fI0622\fR to permit others write access to the line -or \fI0600\fR to secure the line from other users. If not specified, -the terminal permissions will be initialized to \fI0622\fR. See -TTYGROUP for related information. -.\" -.IP "TTYTYPE_FILE (string)" -This parameter specifies the full pathname to a file which maps terminal -lines to terminal types. Each line of the file contains a terminal -type and a terminal line, seperated by whitespace, for example: -.nf -.sp -.ft I - vt100\0 tty01 - wyse60 tty02 - \0\0.\0\0\0 \0\0. - \0\0.\0\0\0 \0\0. - \0\0.\0\0\0 \0\0. -.ft R -.sp -.fi -This information is only used to initialize the TERM environment parameter -when it does not already exist. -A line starting with a ``#'' pound sign will be treated as a comment. -If this paramter is not specified, the file does not exist, or the terminal -line is not found in the file, then the TERM environment parameter will not -be set. -.\" -.IP "UID_MAX (number)" -XXX needs to be documented. -.IP "UID_MIN (number)" -XXX needs to be documented. -.\" -.IP "ULIMIT (long number)" -The file size limit is initialized to this value. This is supported -only on systems with a -.IR ulimit , -e.g. System V. If not specified, the file size limit will be initialized -to some large value. -.\" -.IP "UMASK (number)" -The permission mask is initialized to this value. If not specified, -the permission mask will be initialized to zero. -.\" -.IP "USERDEL_CMD (string)" -XXX needs to be documented. -.\" -.SH CROSS REFERENCE -The following cross reference shows which programs in the shadow login -suite use which parameters. -.na -.IP login 12 -CONSOLE DIALUPS_CHECK_ENAB ENV_HZ ENV_SUPATH ENV_TZ ERASECHAR FAILLOG_ENAB -FTMP_FILE HUSHLOGIN_FILE KILLCHAR LASTLOG_ENAB LOG_UNKFAIL_ENAB -MAIL_CHECK_ENAB MAIL_DIR MOTD_FILE NOLOGINS_FILE PORTTIME_CHECKS_ENAB -QUOTAS_ENAB TTYPERM TTYTYPE_FILE ULIMIT UMASK -.IP newusers 12 -PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE UMASK -.IP passwd 12 -OBSCURE_CHECKS_ENAB PASS_MIN_LEN -.IP pwconv 12 -PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE -.IP su 12 -ENV_HZ ENV_SUPATH ENV_TZ HUSHLOGIN_FILE MAIL_CHECK_ENAB MAIL_DIR -MOTD_FILE NOLOGIN_STR QUOTAS_ENAB SULOG_FILE SYSLOG_SU_ENAB -.IP sulogin 12 -ENV_HZ ENV_SUPATH ENV_TZ MAIL_DIR QUOTAS_ENAB TTYPERM -.ad -.SH BUGS -Some of the supported configuration parameters are not documented in this -manual page. -.SH SEE ALSO -.BR login (1), -.BR passwd (5), -.BR faillog (5), -.BR porttime (5), -.BR faillog (8) -.SH AUTHORS -Julianne Frances Haugh (jfh@austin.ibm.com) -.br -Chip Rosenthal (chip@unicom.com) diff --git a/man/logoutd.8 b/man/logoutd.8 deleted file mode 100644 index b611d4f9..00000000 --- a/man/logoutd.8 +++ /dev/null @@ -1,51 +0,0 @@ -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: logoutd.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH LOGOUTD 8 -.SH NAME -logoutd \- Enforce login time restrictions -.SH SYNOPSIS -.B logoutd -.SH DESCRIPTION -.B logoutd -enforces the login time and port restrictions specified in -.IR /etc/porttime . -.B logoutd -should be started from \fI/etc/rc\fR. -The \fI/etc/utmp\fR file is scanned periodically and each user name -is checked to see if the named user is permitted on the named port -at the current time. -Any login session which is violating the restrictions in \fI/etc/porttime\fR -is terminated. -.SH FILES -/etc/porttime \- login and port permissions -.br -/etc/utmp \- current login sessions -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/mkpasswd.8 b/man/mkpasswd.8 deleted file mode 100644 index ad4ed796..00000000 --- a/man/mkpasswd.8 +++ /dev/null @@ -1,81 +0,0 @@ -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: mkpasswd.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH MKPASSWD 1 -.SH NAME -mkpasswd \- Update passwd and group database files -.SH SYNOPSIS -\fBmkpasswd\fR [\fB-fvgps\fR] \fIfile\fR -.SH DESCRIPTION -.B mkpasswd -reads the file in the format given by the flags and converts it to the -corresponding database file format. -These database files are used to improve access performance on systems -with large numbers of users. -The output files will be named \fIfile\fR.dir and \fIfile\fR.pag. -.PP -The \fB-f\fR option causes \fBmkpasswd\fR to ignore any existing output -files and overwrite them. -Normally \fBmkpasswd\fR complains about existing output files and quits. -.PP -The \fB-v\fR option causes \fBmkpasswd\fR to output information about -each record as it is converted, with a final message at the very end. -.PP -The \fB-g\fR option treats the input file as though it were in -\fI/etc/group\fR file format. -When combined with the \fB-s\fR option, the \fI/etc/gshadow\fR file -format is used instead. -.PP -The \fB-p\fR option treats the input file as though it were in -\fI/etc/passwd\fR file format. -This is the default. -When combined with the \fB-s\fR option, the \fI/etc/shadow\fR file -format is used instead. -.SH CAVEATS -The use of more than one database file is limited to systems which -include the NDBM database library and therefore may not be available -on every system. -.SH NOTE -Since most commands are capable of updating the database files as -changes are made, this command need only be used when re-creating a -deleted or corrupted database file. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- shadow user information -.br -/etc/group \- group information -.br -/etc/gshadow \- shadow group information -.SH SEE ALSO -.BR passwd (5), -.BR group (5), -.BR shadow (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/newgrp.1 b/man/newgrp.1 deleted file mode 100644 index f3308357..00000000 --- a/man/newgrp.1 +++ /dev/null @@ -1,80 +0,0 @@ -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: newgrp.1,v 1.6 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH NEWGRP 1 -.SH NAME -newgrp \- Change group ID -.br -sg \- Execute command as different group ID -.SH SYNOPSIS -.BR newgrp " [" - ] -[\fIgroup\fR] -.br -.BR sg " [" - ] -[\fIgroup\fR [[\fB-c\fR] \fIcommand\fR]] -.SH DESCRIPTION -.B newgrp -is used to change the current group ID during a login session. -If the optional \fB\-\fR flag is given, the user's environment -will be reinitialized as though the user had logged in, otherwise -the current environment, including current working directory, -remains unchanged. -.PP -.B newgrp -changes the current real group ID to the named group, or to -the default group listed in \fI/etc/passwd\fR if no group name -is given. -The user will be prompted for a password if they do not have a -password and the group does, or if the user is not listed as a -member and the group has a password. -The user will be denied access if the group password is empty -and the user is not listed as a member. -.PP -The -.B sg -command works similiar to \fBnewgrp\fR but does not replace the -user's shell, so upon exit from a \fBsg\fR command, you are -returned to your previous group ID. -.B sg -also accepts a command. -The command will be executed with the Bourne shell and must be -enclosed in quotes. -.SH CAVEATS -This version of \fBnewgrp\fR has many compilation options, -only some of which may be in use at any particular site. -.SH FILES -/etc/passwd \- user account information -.br -/etc/group \- group information -.SH SEE ALSO -.BR login (1), -.BR id (1), -.BR su (1) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/newusers.8 b/man/newusers.8 deleted file mode 100644 index 447b8d91..00000000 --- a/man/newusers.8 +++ /dev/null @@ -1,68 +0,0 @@ -.\" Copyright 1991 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: newusers.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH NEWUSERS 8 -.SH NAME -\fBnewusers\fR - update and create new users in batch -.SH SYNOPSIS -\fBnewusers\fR [\fI new_users \fR] -.SH DESCRIPTION -\fBnewusers\fR reads a file of user name and cleartext password pairs -and uses this information to update a group of existing users or to -create new users. -Each line is in the same format as the standard password file (see -\fBpasswd\fR(5)) with the following exceptions. -.IP "\fIpw_passwd\fR" 10 -This field will be encrypted and used as the new value -of the encrpted password. -.IP "\fIpw_age\fR" -This field will be ignored for shadow passwords if the user already -exists. -.IP "\fIpw_gid\fR" -This field may be the name of an existing group, in which case the -named user will be added as a member. If a non-existent numerical -group is given, a new group will be created having this number. -.IP "\fIpw_dir\fR" -This field will be checked for existence as a directory and a new -directory with the same name will be created if it does not already exist. -The ownership of the directory will be set to be that of the user -being created or updated. -.PP -This command is intended to be used in a large system environment where -many accounts are updated at a single time. -.SH CAVEATS -.\" The \fImkpasswd\fR command must be executed afterwards to update the -.\" DBM password files. -The input file must be protected since it contains unencrypted passwords. -.SH SEE ALSO -.\" mkpasswd(8), passwd(1), useradd(1) -.BR passwd (1), -.BR useradd (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/passwd.1 b/man/passwd.1 deleted file mode 100644 index 8090db76..00000000 --- a/man/passwd.1 +++ /dev/null @@ -1,190 +0,0 @@ -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: passwd.1,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH PASSWD 1 -.SH NAME -passwd \- change user password -.SH SYNOPSIS -\fBpasswd\fR [\fB-f\fR|\fB-s\fR] [\fIname\fR] -.br -\fBpasswd\fR [\fB-g\fR] [\fB-r\fR|\fBR\fR] \fIgroup\fR -.br -\fBpasswd\fR [\fB-x\fR \fImax\fR] [\fB-n\fR \fImin\fR] -[\fB-w\fR \fIwarn\fR] [\fB-i\fR \fIinact\fR] \fIname\fR -.br -\fBpasswd\fR {\fB-l\fR|\fB-u\fR|\fB-d\fR|\fB-S\fR} \fIname\fR -.SH DESCRIPTION -\fBpasswd\fR changes passwords for user and group accounts. -A normal user may only change the password for their own account, -the super user may change the password for any account. -The administrator of a group may change the password for the group. -\fBpasswd\fR also changes account information, such as the full name -of the user, their login shell, or password expiry dates and intervals. -.SS Password Changes -The user is first prompted for their old password, -if one is present. -This password is then encrypted and compared against the -stored password. -The user has only one chance to enter the correct password. -The super user is permitted to bypass this step so that forgotten -passwords may be changed. -.PP -After the password has been entered, password aging information -is checked to see if the user is permitted to change their password -at this time. -If not, \fBpasswd\fR refuses to change the password and exits. -.PP -The user is then prompted for a replacement password. -This password is tested for complexity. -As a general guideline, -passwords should consist of 6 to 8 characters including -one or more from each of following sets: -.IP "" .5i -Lower case alphabetics -.IP "" .5i -Upper case alphabetics -.IP "" .5i -Digits 0 thru 9 -.IP "" .5i -Punctuation marks -.PP -Care must be taken not to include the system default erase -or kill characters. -\fBpasswd\fR will reject any password which is not suitably -complex. -.PP -If the password is accepted, -\fBpasswd\fR will prompt again and compare the second entry -against the first. -Both entries are require to match in order for the password -to be changed. -.SS Group passwords -When the \fB-g\fR option is used, the password for the named -group is changed. -The user must either be the super user, or a group administrator -for the named group. -The current group password is not prompted for. -The \fB-r\fR option is used with the \fB-g\fR option to remove -the current password from the named group. -This allows group access to all members. -The \fB-R\fR option is used with the \fB-g\fR option to restrict -the named group for all users. -.SS Password expiry information -The password aging information may be changed by the super -user with the \fB-x\fR, \fB-n\fR, \fB-w\fR, and \fB-i\fR options. -The \fB-x\fR option is used to set the maximum number of days -a password remains valid. -After \fImax\fR days, the password is required to be changed. -The \fB-n\fR option is used to set the minimum number of days -before a password may be changed. -The user will not be permitted to change the password until -\fImin\fR days have elapsed. -The \fB-w\fR option is used to set the number of days of warning -the user will receive before their password will expire. -The warning occurs \fIwarn\fR days before the expiration, telling -the user how many days until the password is set to expire. -The \fB-i\fR option is used to disable an account after the -password has been expired for a number of days. -After a user account has had an expired password for \fIinact\fR -days, the user may no longer sign on to the account. -.SS Account maintenance -User accounts may be locked and unlocked with the \fB-l\fR and -\fB-u\fR flags. -The \fB-l\fR option disables an account by changing the password to a -value which matches no possible encrypted value. -The \fB-u\fR option re-enables an account by changing the password -back to its previous value. -.PP -The account status may be given with the \fB-S\fR option. -The status information consists of 6 parts. -The first part indicates if the user account is locked (L), has no -password (NP), or has a usable password (P). -The second part gives the date of the last password change. -The next four parts are the minimum age, maximum age, warning period, -and inactivity period for the password. -.SS Hints for user passwords -The security of a password depends upon the strength of the -encryption algorithm and the size of the key space. -The \fB\s-2UNIX\s+2\fR System encryption method is based on -the NBS DES algorithm and is very secure. -The size of the key space depends upon the randomness of the -password which is selected. -.PP -Compromises in password security normally result from careless -password selection or handling. -For this reason, you should select a password which does not -appear in a dictionary or which must be written down. -The password should also not be a proper name, your license -number, birth date, or street address. -Any of these may be used as guesses to violate system security. -.PP -Your password must easily remembered so that you will not -be forced to write it on a piece of paper. -This can be accomplished by appending two small words together -and separating each with a special character or digit. -For example, Pass%word. -.PP -Other methods of construction involve selecting an easily -remembered phrase from literature and selecting the first -or last letter from each. -An example of this is -.IP "" .5i -Ask not for whom the bell tolls. -.PP -which produces -.IP "" .5i -An4wtbt. -.PP -You may be reasonably sure few crackers will have -included this in their dictionary. -You should, however, select your own methods for constructing -passwords and not rely exclusively on the methods given here. -.SS Notes about group passwords -Group passwords are an inherent security problem since more -than one person is permitted to know the password. -However, groups are a useful tool for permitting co-operation -between different users. -.SH CAVEATS -Not all options may be supported. -Password complexity checking may vary from site to site. -The user is urged to select as complex a password as they -feel comfortable with. -User's may not be able to change their password on a system if NIS -is enabled and they are not logged into the NIS server. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- encrypted user passwords -.SH SEE ALSO -.BR passwd (3), -.\" .BR shadow (3), -.BR group (5), -.BR passwd (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/passwd.5 b/man/passwd.5 deleted file mode 100644 index 3b21d092..00000000 --- a/man/passwd.5 +++ /dev/null @@ -1,111 +0,0 @@ -.\" Copyright 1989 - 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: passwd.5,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH PASSWD 5 -.SH NAME -passwd \- The password file -.SH DESCRIPTION -.I passwd -contains various pieces of information for each user account. -Included is -.IP "" .5i -Login name -.IP "" .5i -Optional encrypted password -.IP "" .5i -Numerical user ID -.IP "" .5i -Numerical group ID -.IP "" .5i -User name or comment field -.IP "" .5i -User home directory -.IP "" .5i -User command interpreter -.PP -The password field may not be filled if shadow passwords -have been enabled. -If shadow passwords are being used, the encrypted password will -be found in \fI/etc/shadow\fR. -The encryped password consists of 13 characters from the -64 character alphabet -a thru z, A thru Z, 0 thru 9, \. and /. -Refer to \fBcrypt\fR(3) for details on how this string is -interpreted. -.PP -An optional password age string may follow the encrypted -password, separated by a comma, from the same alphabet -as the password itself. -The first character gives the number of weeks during which the -password is valid. -The second character gives the number of weeks which must pass -before the user is permitted to change the password. -The last two characters give the week since Jan 1970 when the -password was last changed. -When the number of weeks during which the password is valid -have passed, the user will be required to provide a new -password. -.PP -The comment field is used by various system utilities, such as -\fBfinger\fR(1). -Three additional values may be present in the comment field. -They are -.IP "" .5i -pri= \- set initial value of nice -.IP "" .5i -umask= \- set initial value of umask -.IP "" .5i -ulimit= \- set initial value of ulimit -.PP -These fields are separated from each other and from any other -comment field by a comma. -.PP -The home directory field provides the name of the initial -working directory. -\fBLogin\fR uses this information to set the value of -the \fBHOME\fR environmental variable. -.PP -The command interpreter field provides the name of the user's -command language interpreter, or the name of the initial program -to execute. -\fBLogin\fR uses this information to set the value of the -\fBSHELL\fR environmental variable. -If this field is empty, it defaults to the value \fB/bin/sh\fR. -.SH FILES -/etc/passwd \- user account information -.SH SEE ALSO -.BR login (1), -.BR passwd (1), -.BR su (1), -.BR sulogin (8), -.BR shadow (5), -.BR pwconv (8), -.BR pwunconv (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/Makefile.am b/man/pl/Makefile.am index 2ef48e2c..547c9b4e 100644 --- a/man/pl/Makefile.am +++ b/man/pl/Makefile.am @@ -1,13 +1,7 @@ -AUTOMAKE_OPTIONS = 1.0 foreign -manpldir = $(mandir)/pl -manpl1dir = $(manpldir)/man1 -manpl3dir = $(manpldir)/man3 -manpl5dir = $(manpldir)/man5 -manpl8dir = $(manpldir)/man8 +mandir = @mandir@/pl - -manpl1_DATA = \ +man_MANS = \ chage.1 \ chfn.1 \ chsh.1 \ @@ -17,13 +11,9 @@ manpl1_DATA = \ login.1 \ newgrp.1 \ passwd.1 \ - su.1 - -manpl3_DATA = \ + su.1 \ pw_auth.3 \ - shadow.3 - -manpl5_DATA = \ + shadow.3 \ d_passwd.5 \ dialups.5 \ faillog.5 \ @@ -33,15 +23,16 @@ manpl5_DATA = \ passwd.5 \ porttime.5 \ shadow.5 \ - suauth.5 - -manpl8_DATA = \ + suauth.5 \ + adduser.8 \ chpasswd.8 \ dpasswd.8 \ faillog.8 \ groupadd.8 \ groupdel.8 \ groupmod.8 \ + grpconv.8 \ + grpunconv.8 \ grpck.8 \ lastlog.8 \ logoutd.8 \ @@ -50,11 +41,10 @@ manpl8_DATA = \ pwauth.8 \ pwck.8 \ pwconv.8 \ + pwunconv.8 \ shadowconfig.8 \ - sulogin.8 + sulogin.8 \ useradd.8 \ userdel.8 \ usermod.8 \ vipw.8 - -EXTRA_DIST = $(manpl1_DATA) $(manpl3_DATA) $(manpl5_DATA) $(manpl8_DATA) diff --git a/man/pl/Makefile.in b/man/pl/Makefile.in index 277746be..f11ebd1d 100644 --- a/man/pl/Makefile.in +++ b/man/pl/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -28,7 +28,6 @@ sharedstatedir = @sharedstatedir@ localstatedir = @localstatedir@ libdir = @libdir@ infodir = @infodir@ -mandir = @mandir@ includedir = @includedir@ oldincludedir = /usr/include @@ -46,9 +45,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -76,7 +76,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -89,7 +88,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -102,124 +100,176 @@ VERSION = @VERSION@ YACC = @YACC@ l = @l@ -AUTOMAKE_OPTIONS = 1.0 foreign +mandir = @mandir@/pl -manpldir = $(mandir)/pl -manpl1dir = $(manpldir)/man1 -manpl3dir = $(manpldir)/man3 -manpl5dir = $(manpldir)/man5 -manpl8dir = $(manpldir)/man8 +man_MANS = chage.1 chfn.1 chsh.1 groups.1 gpasswd.1 id.1 login.1 newgrp.1 passwd.1 su.1 pw_auth.3 shadow.3 d_passwd.5 dialups.5 faillog.5 limits.5 login.access.5 login.defs.5 passwd.5 porttime.5 shadow.5 suauth.5 adduser.8 chpasswd.8 dpasswd.8 faillog.8 groupadd.8 groupdel.8 groupmod.8 grpconv.8 grpunconv.8 grpck.8 lastlog.8 logoutd.8 mkpasswd.8 newusers.8 pwauth.8 pwck.8 pwconv.8 pwunconv.8 shadowconfig.8 sulogin.8 useradd.8 userdel.8 usermod.8 vipw.8 -manpl1_DATA = chage.1 chfn.1 chsh.1 groups.1 gpasswd.1 id.1 login.1 newgrp.1 passwd.1 su.1 - - -manpl3_DATA = pw_auth.3 shadow.3 - - -manpl5_DATA = d_passwd.5 dialups.5 faillog.5 limits.5 login.access.5 login.defs.5 passwd.5 porttime.5 shadow.5 suauth.5 - - -manpl8_DATA = chpasswd.8 dpasswd.8 faillog.8 groupadd.8 groupdel.8 groupmod.8 grpck.8 lastlog.8 logoutd.8 mkpasswd.8 newusers.8 pwauth.8 pwck.8 pwconv.8 shadowconfig.8 sulogin.8 - - -EXTRA_DIST = $(manpl1_DATA) $(manpl3_DATA) $(manpl5_DATA) $(manpl8_DATA) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../../config.h CONFIG_CLEAN_FILES = -DATA = $(manpl1_DATA) $(manpl3_DATA) $(manpl5_DATA) $(manpl8_DATA) +man1dir = $(mandir)/man1 +man3dir = $(mandir)/man3 +man5dir = $(mandir)/man5 +man8dir = $(mandir)/man8 +MANS = $(man_MANS) +NROFF = nroff DIST_COMMON = Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best all: all-redirect .SUFFIXES: $(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --foreign --include-deps man/pl/Makefile + cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps man/pl/Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status -install-manpl1DATA: $(manpl1_DATA) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(manpl1dir) - @list='$(manpl1_DATA)'; for p in $$list; do \ - if test -f $(srcdir)/$$p; then \ - echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl1dir)/$$p"; \ - $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl1dir)/$$p; \ - else if test -f $$p; then \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(manpl1dir)/$$p"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(manpl1dir)/$$p; \ - fi; fi; \ +install-man1: + $(mkinstalldirs) $(DESTDIR)$(man1dir) + @list='$(man1_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \ done -uninstall-manpl1DATA: - @$(NORMAL_UNINSTALL) - list='$(manpl1_DATA)'; for p in $$list; do \ - rm -f $(DESTDIR)$(manpl1dir)/$$p; \ +uninstall-man1: + @list='$(man1_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \ + rm -f $(DESTDIR)$(man1dir)/$$inst; \ done -install-manpl3DATA: $(manpl3_DATA) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(manpl3dir) - @list='$(manpl3_DATA)'; for p in $$list; do \ - if test -f $(srcdir)/$$p; then \ - echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl3dir)/$$p"; \ - $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl3dir)/$$p; \ - else if test -f $$p; then \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(manpl3dir)/$$p"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(manpl3dir)/$$p; \ - fi; fi; \ +install-man3: + $(mkinstalldirs) $(DESTDIR)$(man3dir) + @list='$(man3_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.3*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man3dir)/$$inst"; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(man3dir)/$$inst; \ done -uninstall-manpl3DATA: - @$(NORMAL_UNINSTALL) - list='$(manpl3_DATA)'; for p in $$list; do \ - rm -f $(DESTDIR)$(manpl3dir)/$$p; \ +uninstall-man3: + @list='$(man3_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.3*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f $(DESTDIR)$(man3dir)/$$inst"; \ + rm -f $(DESTDIR)$(man3dir)/$$inst; \ done -install-manpl5DATA: $(manpl5_DATA) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(manpl5dir) - @list='$(manpl5_DATA)'; for p in $$list; do \ - if test -f $(srcdir)/$$p; then \ - echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl5dir)/$$p"; \ - $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl5dir)/$$p; \ - else if test -f $$p; then \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(manpl5dir)/$$p"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(manpl5dir)/$$p; \ - fi; fi; \ +install-man5: + $(mkinstalldirs) $(DESTDIR)$(man5dir) + @list='$(man5_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.5*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst"; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(man5dir)/$$inst; \ done -uninstall-manpl5DATA: - @$(NORMAL_UNINSTALL) - list='$(manpl5_DATA)'; for p in $$list; do \ - rm -f $(DESTDIR)$(manpl5dir)/$$p; \ +uninstall-man5: + @list='$(man5_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.5*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f $(DESTDIR)$(man5dir)/$$inst"; \ + rm -f $(DESTDIR)$(man5dir)/$$inst; \ done -install-manpl8DATA: $(manpl8_DATA) - @$(NORMAL_INSTALL) - $(mkinstalldirs) $(DESTDIR)$(manpl8dir) - @list='$(manpl8_DATA)'; for p in $$list; do \ - if test -f $(srcdir)/$$p; then \ - echo " $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl8dir)/$$p"; \ - $(INSTALL_DATA) $(srcdir)/$$p $(DESTDIR)$(manpl8dir)/$$p; \ - else if test -f $$p; then \ - echo " $(INSTALL_DATA) $$p $(DESTDIR)$(manpl8dir)/$$p"; \ - $(INSTALL_DATA) $$p $(DESTDIR)$(manpl8dir)/$$p; \ - fi; fi; \ +install-man8: + $(mkinstalldirs) $(DESTDIR)$(man8dir) + @list='$(man8_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.8*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst"; \ + $(INSTALL_DATA) $$file $(DESTDIR)$(man8dir)/$$inst; \ done -uninstall-manpl8DATA: - @$(NORMAL_UNINSTALL) - list='$(manpl8_DATA)'; for p in $$list; do \ - rm -f $(DESTDIR)$(manpl8dir)/$$p; \ +uninstall-man8: + @list='$(man8_MANS)'; \ + l2='$(man_MANS)'; for i in $$l2; do \ + case "$$i" in \ + *.8*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f $(DESTDIR)$(man8dir)/$$inst"; \ + rm -f $(DESTDIR)$(man8dir)/$$inst; \ done +install-man: $(MANS) + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) install-man1 install-man3 install-man5 \ + install-man8 +uninstall-man: + @$(NORMAL_UNINSTALL) + $(MAKE) $(AM_MAKEFLAGS) uninstall-man1 uninstall-man3 uninstall-man5 \ + uninstall-man8 tags: TAGS TAGS: @@ -232,7 +282,7 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ @@ -250,23 +300,21 @@ installcheck: installcheck-am install-exec-am: install-exec: install-exec-am -install-data-am: install-manpl1DATA install-manpl3DATA \ - install-manpl5DATA install-manpl8DATA +install-data-am: install-man install-data: install-data-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am install: install-am -uninstall-am: uninstall-manpl1DATA uninstall-manpl3DATA \ - uninstall-manpl5DATA uninstall-manpl8DATA +uninstall-am: uninstall-man uninstall: uninstall-am -all-am: Makefile $(DATA) +all-am: Makefile $(MANS) all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: - $(mkinstalldirs) $(DESTDIR)$(manpl1dir) $(DESTDIR)$(manpl3dir) \ - $(DESTDIR)$(manpl5dir) $(DESTDIR)$(manpl8dir) + $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man3 \ + $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8 mostlyclean-generic: @@ -297,19 +345,15 @@ maintainer-clean-am: maintainer-clean-generic distclean-am maintainer-clean: maintainer-clean-am -.PHONY: uninstall-manpl1DATA install-manpl1DATA uninstall-manpl3DATA \ -install-manpl3DATA uninstall-manpl5DATA install-manpl5DATA \ -uninstall-manpl8DATA install-manpl8DATA tags distdir info-am info \ -dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ -install-exec install-data-am install-data install-am install \ -uninstall-am uninstall all-redirect all-am all installdirs \ -mostlyclean-generic distclean-generic clean-generic \ -maintainer-clean-generic clean mostlyclean distclean maintainer-clean - - useradd.8 \ - userdel.8 \ - usermod.8 \ - vipw.8 +.PHONY: install-man1 uninstall-man1 install-man3 uninstall-man3 \ +install-man5 uninstall-man5 install-man8 uninstall-man8 install-man \ +uninstall-man tags distdir info-am info dvi-am dvi check check-am \ +installcheck-am installcheck install-exec-am install-exec \ +install-data-am install-data install-am install uninstall-am uninstall \ +all-redirect all-am all installdirs mostlyclean-generic \ +distclean-generic clean-generic maintainer-clean-generic clean \ +mostlyclean distclean maintainer-clean + # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/man/pl/chage.1 b/man/pl/chage.1 deleted file mode 100644 index 48f1c879..00000000 --- a/man/pl/chage.1 +++ /dev/null @@ -1,110 +0,0 @@ -.\" {PTM/WK/1999-09-16} -.\" Copyright 1990 - 1994 Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH CHAGE 1 -.SH NAZWA -chage \- zmieñ informacjê o terminie wa¿no¶ci has³a u¿ytkownika -.SH SK£ADNIA -.TP 6 -.B chage -.RB [ -m -.IR mindni ] -.RB [ -M -.IR maxdni ] -.RB [ -d -.IR ostatni ] -.RB [ -I -.IR nieaktywne ] -.br -.RB [ -E -.IR data_wa¿no¶ci ] -.RB [ -W -.IR dni_ostrzegania ] -.I u¿ytkownik -.TP 6 -.B chage -l \fIu¿ytkownik\fR -.SH OPIS -\fBchage\fR zmienia liczbê dni pomiêdzy zmianami has³a i datê ostatniej -zmiany has³a. Informacjê tê system wykorzystuje do ustalenia, kiedy -u¿ytkownik musi zmieniæ has³o. -Polecenia \fBchage\fR mo¿e u¿yæ tylko u¿ytkownik root, za wyj±tkiem -opcji \fB-l\fR. Mo¿e siê ni± pos³u¿yæ siê u¿ytkownik nieuprzywilejowany -do stwierdzenia, kiedy wygasa jego w³asne has³o lub konto. -.PP -Opcja \fB-m\fR ustawia minimaln± liczbê dni pomiêdzy zmianami has³a -na warto¶æ \fImindni\fR. Warto¶æ zerowa oznacza, ¿e u¿ytkownik mo¿e je zmieniaæ -w dowolnym czasie. -.PP -Opcja \fB-M\fR ustawia maksymaln± liczbê dni, przez jakie has³o jest wa¿ne -na warto¶æ \fImaxdni\fR. -Gdy \fImaxdni\fR plus \fIostatni\fR jest mniejsze ni¿ bie¿±cy dzieñ, -od u¿ytkownika wymagana jest zmiana has³a przed skorzystaniem z konta. -Zdarzenie to mo¿e byæ zaplanowane z wyprzedzeniem przez wykorzystanie -opcji \fB-W\fR, ostrzegaj±cej zawczasu u¿ytkownika o zbli¿aj±cym siê terminie -zmiany. -.PP -Opcja \fB-d\fR ustawia liczbê dni od 1 stycznia 1970 do dnia kiedy ostatnio -zmieniono has³o na \fIostatni\fR. Data mo¿e równie¿ zostaæ podana w postaci -RRRR-MM-DD (lub postaci powszechniej u¿ywanej w twoim regionie). -.PP -Opcja \fB-E\fR s³u¿y do ustawiania daty, od której konto u¿ytkownika -nie bêdzie ju¿ dostêpne. -\fIdata_wa¿no¶ci\fR jest liczb± dni od 1 stycznia 1970, od której konto jest -blokowane. Data mo¿e byæ te¿ wyra¿ona w postaci RRRR-MM-DD (lub innej, -powszechniej u¿ywanej w twoim regionie). -U¿ytkownik, którego konto jest zablokowane musi skontaktowaæ siê -z administratorem systemu zanim bêdzie móg³ z niego ponownie skorzystaæ. -.PP -Opcja \fB-I\fR s³u¿y do ustawiania czasu nieaktywno¶ci po wyga¶niêciu -has³a, po którym konto jest blokowane. Parametr \fInieaktywne\fR podaje -liczbê dni nieaktywno¶ci. Warto¶æ 0 wy³±cza tê funkcjê. -U¿ytkownik, którego konto jest zablokowane musi skontaktowaæ siê -z administratorem systemu zanim bêdzie móg³ z niego ponownie skorzystaæ. -.PP -Opcja \fB-W\fR s³u¿y do ustawiania ostrzegania przed wymagan± zmian± has³a. -Parametr \fIdni_ostrzegania\fR jest liczb± dni przed up³ywem wa¿no¶ci has³a; -od tego dnia u¿ytkownik bêdzie ostrzegany o nadchodz±cym terminie. -.PP -Wszystkie powy¿sze warto¶ci przechowywane s± jako liczba dni, je¿eli u¿ywany -jest dodatkowy, przes³aniany plik hase³ (shadow). Jednak je¿eli u¿ywany jest -standardowy plik hase³, to s± one zamieniane (w obie strony) na liczbê tygodni. -Z powodu powy¿szej konwersji mog± pojawiæ siê b³êdy zaokr±gleñ. -.PP -Je¶li nie podano ¿adnej opcji, to \fBchage\fR dzia³a w trybie interaktywnym, -proponuj±c u¿ytkownikowi warto¶ci bie¿±ce dla ka¿dego z pól. Wprowad¼ now± -warto¶æ by zmieniæ pole, lub pozostaw pust± by u¿yæ warto¶ci bie¿±cej. -Bie¿±ca warto¶æ pola wy¶wietlana jest miêdzy par± znaczników \fB[ ]\fR. -.SH PLIKI -.IR /etc/passwd " - informacje o kontach u¿ytkowników" -.br -.IR /etc/shadow " - chronione informacje o kontach u¿ytkowników" -.SH ZOBACZ TAK¯E -.BR passwd (5), -.BR shadow (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/chfn.1 b/man/pl/chfn.1 deleted file mode 100644 index 8b254764..00000000 --- a/man/pl/chfn.1 +++ /dev/null @@ -1,77 +0,0 @@ -.\" {PTM/WK/1999-09-25} -.\" Copyright 1990 - 1994 Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH CHFN 1 -.SH NAZWA -chfn \- zmieñ nazwê u¿ytkownika i informacjê o nim -.SH SK£ADNIA -.TP 5 -.B chfn -.RB [ -f -.IR pe³na_nazwa ] -.RB [ -r -.IR nr_pokoju ] -.br -.RB [ -w -.IR tel_s³u¿b ] -.RB [ -h -.IR tel_dom ] -.RB [ -o -.IR inne ] -.RI [ u¿ytkownik ] -.SH OPIS -\fBchfn\fR zmienia pe³n± nazwê (imiê i nazwisko), telefon s³u¿bowy i domowy -dla danego konta u¿ytkownika. Informacja ta jest zwykle drukowana przez -\fBfinger\fR(1) i podobne mu programy. -Zwyk³y u¿ytkownik mo¿e zmieniaæ wy³±cznie pola opisuj±ce w³asne konto. -Tylko superu¿ytkownik mo¿e zmieniaæ pola dowolnego konta. -Równie¿ tylko on mo¿e pos³u¿yæ siê opcj± \fB-o\fR by zmieniæ niezdefiniowane -czê¶ci pola GECOS. -.PP -Jedynym ograniczeniem nak³adanym na zawarto¶æ pól jest zakaz u¿ywania w nich -znaków kontrolnych oraz przecinka, dwukropka i znaku równo¶ci. -Pola \fIinne\fR (other) nie obowi±zuje to ograniczenie. Pole to s³u¿y do -przechowywania informacji rozliczeniowej u¿ywanej przez inne aplikacje. -.PP -Je¶li nie wybrano ¿adnej z opcji, to \fBchfn\fR dzia³a w trybie interaktywnym, -proponuj±c u¿ytkownikowi warto¶ci bie¿±ce dla ka¿dego z pól. Wprowad¼ now± -warto¶æ by zmieniæ pole, lub pozostaw pust± by u¿yæ warto¶ci bie¿±cej. -Bie¿±ca warto¶æ pola wy¶wietlana jest miêdzy par± znaczników \fB[ ]\fR. -Bez podania opcji \fBchfn\fR pyta o konto u¿ytkownika, które ma podlegaæ -zmianie. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.SH ZOBACZ TAK¯E -.BR passwd (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij siê, ¿e korzystasz -z w³a¶ciwej dokumentacji. diff --git a/man/pl/chpasswd.8 b/man/pl/chpasswd.8 deleted file mode 100644 index eea01899..00000000 --- a/man/pl/chpasswd.8 +++ /dev/null @@ -1,62 +0,0 @@ -.\" {PTM/WK/1999-09-16} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH CHPASSWD 8 -.SH NAZWA -chpasswd - wsadowa aktualizacja pliku hase³ -.SH SK£ADNIA -.B chpasswd -.RB [ -e ] -.SH OPIS -\fBchpasswd\fR odczytuje ze standardowego wej¶cia plik zawieraj±cy pary: -nazwa u¿ytkownika i has³o. Odczytan± informacje wykorzystuje do aktualizacji -grupy istniej±cych u¿ytkowników. -Bez prze³±cznika -e, has³a traktowane s± jako podane jawnie. Z prze³±cznikiem --e has³a powinny byæ dostarczone w postaci zakodowanej (encrypted). -Ka¿dy wiersz ma postaæ -.sp 1 - \fInazwa_U¿ytkownika\fR:\fIhas³o\fR -.sp 1 -Dany u¿ytkownik musi istnieæ. -Je¿eli bêdzie to konieczne, podane has³o zostanie zakodowane a wiek has³a, -je¶li wystêpuje, zaktualizowany. -.PP -Polecenie to przeznaczone jest do u¿ytku w du¿ych systemach, gdzie aktualizuje -siê wiele kont naraz. -.SH PRZESTROGI -.\" Po u¿yciu \fBchpasswd\fR musi zostaæ wykonane polecenie \fImkpasswd\fR, -.\" aktualizuj±ce pliki DBM hase³ (DBM password files). -Plik ¼ród³owy, je¶li zawiera niezakodowane has³a, musi byæ chroniony. -.\" Polecenie to mo¿e byæ zaniechane na rzecz polecenia newusers(8). -.SH ZOBACZ TAK¯E -.\" mkpasswd(8), passwd(1), useradd(1) -.BR passwd (1), -.BR useradd (8), -.BR newusers (8) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/chsh.1 b/man/pl/chsh.1 deleted file mode 100644 index 7f20e865..00000000 --- a/man/pl/chsh.1 +++ /dev/null @@ -1,70 +0,0 @@ -.\" {PTM/WK/1999-09-25} -.\" Copyright 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH CHSH 1 -.SH NAZWA -chsh \- zmieñ pow³okê zg³oszeniow± -.SH SK£ADNIA -.TP 5 -.B chsh -.RB [ -s -.IR pow³oka ] -.RI [ u¿ytkownik ] -.SH OPIS -\fBchsh\fR zmienia pow³okê zg³oszeniow± u¿ytkownika. -Okre¶la nazwê pocz±tkowego polecenia zg³oszeniowego u¿ytkownika. -Zwyk³y u¿ytkownik mo¿e zmieniæ wy³±cznie pow³okê zg³oszeniow± w³asnego konta, -superu¿ytkownik mo¿e zmieniæ pow³okê zg³oszeniow± dla dowolnego konta. -.PP -Jedynym ograniczeniem na³o¿onym na pow³okê zg³oszeniow± jest to, ¿e jej nazwa -musi byæ ujêta w \fI/etc/shells\fR, chyba ¿e polecenie \fBchsh\fR wywo³ywane -jest przez superu¿ytkownika, wówczas mo¿e byæ podana nazwa dowolnego polecenia. -U¿ytkownicy kont z ograniczon± pow³ok± logowania nie mog± jej zmieniaæ. -Odradza siê z tego powodu umieszczanie \fB/bin/rsh\fR w pliku \fI/etc/shells\fR, -gdy¿ przypadkowa zmiana na pow³okê ograniczon± uniemo¿liwi u¿ytkownikowi -jak±kolwiek zmianê pow³oki logowania, nawet z powrotem na dotychczasow±. -.PP -je¿eli nie podano opcji \fB-s\fR, to \fBchsh\fR dzia³a w trybie interaktywnym, -proponuj±c u¿ytkownikowi bie¿±c± pow³okê logowania. Wprowad¼ now± warto¶æ -do pola lub pozostaw je puste, by pozostawiæ aktualn± warto¶æ. -Bie¿±ca warto¶æ wy¶wietlana jest pomiêdzy par± znaczników \fB[ ]\fR. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/shells " - lista dozwolonych pow³ok zg³oszeniowych" -.SH ZOBACZ TAK¯E -.BR chfn (1), -.BR passwd (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Istnieje wiele programów i skryptów do zarz±dzania kontami -u¿ytkowników czy grup. Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij -siê, ¿e korzystasz z w³a¶ciwej dokumentacji. diff --git a/man/pl/d_passwd.5 b/man/pl/d_passwd.5 deleted file mode 100644 index 0b3989b2..00000000 --- a/man/pl/d_passwd.5 +++ /dev/null @@ -1,30 +0,0 @@ -.\" -.\" {PTM/WK/1999-09-22} -.\" -.TH D_PASSWD 5 -.SH NAZWA -d_passwd - plik hase³ telefonicznych -.SH OPIS -Z dostêpem do systemu przez liniê telefoniczn± zwi±zane s± dwa pliki -konfiguracyjne: \fI/etc/d_passwd\fR, zawieraj±cy has³a i \fI/etc/dialups\fR, -zawieraj±cy linie. -Ka¿dorazowo, zanim u¿ytkownik ³±cz±cy siê za po¶rednictwem modemu otrzyma -dostêp do systemu, musi podaæ has³o telefoniczne. Has³a te s± niezale¿ne -od hase³ u¿ytkowników i przypisane nie do u¿ytkownika, ani linii terminalowej, -lecz do pow³oki zg³oszeniowej u¿ytkownika. -Do rozpoczêcia sesji wymagane jest zarówno has³o u¿ytkownika jak -i telefoniczne. Zauwa¿ jednak, ¿e has³a telefoniczne nie posiadaj± kontroli -terminu wa¿no¶ci. Nale¿y, po uzgodnieniu, okresowo zmieniaæ je rêcznie. -W pliku \fId_passwd\fR kolejne wiersze definiuj± has³a dla rozmaitych pow³ok: -.br -.sp 1 - pow³oka:zakodowane_has³o: -.br -.sp 1 -Zauwa¿, ¿e po polu has³a wystêpuje dwukropek. Pow³oka powinna byæ -okre¶lona przez bezwzglêdn± nazwê ¶cie¿kow± pliku interpretatora poleceñ. -Do zarz±dzania has³ami telefonicznymi s³u¿y polecenie \fBdpasswd\fR (1). -.SH ZOBACZ TAK¯E -.BR dpasswd (1), -.BR login (1), -.BR dialups (5). diff --git a/man/pl/dialups.5 b/man/pl/dialups.5 deleted file mode 100644 index 3edb8a2c..00000000 --- a/man/pl/dialups.5 +++ /dev/null @@ -1,24 +0,0 @@ -.\" -.\" {PTM/WK/1999-09-22} -.\" -.TH DIALUPS -.SH NAZWA -dialups - plik terminalowych linii telefonicznych -.SH OPIS -Z dostêpem do systemu przez liniê telefoniczn± zwi±zane s± dwa pliki -konfiguracyjne: \fI/etc/d_passwd\fR, zawieraj±cy has³a i \fI/etc/dialups\fR, -zawieraj±cy linie. W ka¿dym wierszu pliku \fIdialups\fR zawarta jest nazwa -pliku specjalnego linii terminalowej, do której pod³±czony jest modem: -.br -.sp 1 - /dev/tty12 - /dev/tty13 -.br -.sp 1 -Warto jest uj±æ w nim \fBwszystkie\fR linie z dostêpem modemowym. -Po³±czenie z linii pominiêtej nie bêdzie dodatkowo weryfikowane - u¿ytkownicy -³±cz±cy siê ni± nie bêd± musieli podawaæ has³a telefonicznego. -.SH ZOBACZ TAK¯E -.BR dpasswd (1), -.BR login (1), -.BR d_passwd (5). diff --git a/man/pl/dpasswd.8 b/man/pl/dpasswd.8 deleted file mode 100644 index b5cf5624..00000000 --- a/man/pl/dpasswd.8 +++ /dev/null @@ -1,56 +0,0 @@ -.\" {PTM/WK/1999-09-17} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH DPASSWD 8 -.SH NAZWA -\fBdpasswd\fR - zmieñ has³o telefoniczne -.SH SK£ADNIA -.B dpasswd -.RB [ - ( a | d )] -.I pow³oka -.SH OPIS -\fBdpasswd\fR dodaje, usuwa i aktualizuje has³a telefoniczne (dialup -passwords) dla pow³ok logowania u¿ytkowników. -Ka¿dorazowo, gdy u¿ytkownik loguje siê przez liniê telefoniczn±, -¿±dane jest od niego has³o telefoniczne (po poprawnym uwierzytelnieniu -jego w³asnego has³a). -.PP -\fBdpasswd\fR bêdzie prosiæ o podanie nowego has³a dwukrotnie, by upewniæ -siê, ¿e zosta³o ono poprawnie wprowadzone. -.PP -Argument \fIpow³oka\fR musi byæ pe³n±, ¶cie¿kow± nazw± programu zg³oszenia -(logowania). -.SH PLIKI -.br -.I /etc/d_passwd -.br -.I /etc/dialups -.SH ZOBACZ TAK¯E -.BR login (1) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/faillog.5 b/man/pl/faillog.5 deleted file mode 100644 index 6fc16cdf..00000000 --- a/man/pl/faillog.5 +++ /dev/null @@ -1,59 +0,0 @@ -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" Translation (c) 1998 "Gwidon S. Naskrent" -.\" $Id: faillog.5,v 1.3 1999/09/20 20:56:42 wojtek2 Exp $ -.\" -.TH faillog 5 -.SH NAZWA -faillog \- plik rejestruj±cy nieudane zalogowania -.SH OPIS -.I faillog -prowadzi licznik nieudanych zalogowañ i limity dla ka¿dego konta. -Plik ten sk³ada siê z rekordów o sta³ej d³ugo¶ci, indeksowanych -liczbowym UID. Ka¿dy rekord zawiera licznik nieudanych zalogowañ -od ostatniego pomy¶lnego logowania, maksymaln± liczbê pomy³ek -przed zablokowaniem konta, konsolê na której nast±pi³o ostatnie -nieudane logowanie, oraz datê tego¿. -.PP -Struktura tego pliku to -.DS - - struct faillog { - short fail_cnt; - short fail_max; - char fail_line[12]; - time_t fail_time; - }; - -.DE -.SH PLIKI -.IR /var/log/faillog " - rejestr nieudanych zalogowañ" -.SH ZOBACZ TAK¯E -.BR faillog (8) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/faillog.8 b/man/pl/faillog.8 deleted file mode 100644 index a180cc4b..00000000 --- a/man/pl/faillog.8 +++ /dev/null @@ -1,95 +0,0 @@ -.\" {PTM/WK/1999-09-18} -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH FAILLOG 8 -.SH NAZWA -faillog \- sprawd¼ faillog i ustaw limity b³êdnych logowañ -.SH SK£ADNIA -.TP 8 -.B faillog -.RB [ -u -.IR nazwa ] -.RB [ -a ] -.RB [ -t -.IR dni ] -.RB [ -m -.IR max ] -.RB [ -pr ] -.SH OPIS -\fBfaillog\fR formatuje zawarto¶æ rejestru nieudanych prób rozpoczêcia sesji, -\fI/var/log/faillog\fR, oraz obs³uguje ograniczenia i liczniki b³êdnych prób. -Kolejno¶æ argumentów \fBfaillog\fR jest znacz±ca. Ka¿dy z argumentów jest -natychmiast przetwarzany w zadanej kolejno¶ci. -.PP -Flaga \fB-p\fR powoduje, ¿e zapisy o nieudanych logowaniach wy¶wietlane bêd± -w kolejno¶ci rosn±cych identyfikatorów u¿ytkowników (UID). -Pos³u¿enie siê flag± \fB-u \fInazwa\fR spowoduje, ¿e zostanie wy¶wietlony -wy³±cznie zapis dotycz±cy u¿ytkownika o tej \fInazwie\fR. -U¿ycie \fB-t \fIdni\fR powoduje wy¶wietlanie wy³±cznie nieudanych prób -logowania ¶wie¿szych ni¿ sprzed zadanej liczby \fIdni\fR. -Flaga \fB-t\fR uniewa¿nia u¿ycie \fB-u\fR. -Flaga \fB-a\fR powoduje wybranie wszystkich u¿ytkowników. -W po³±czeniu z flag± \fB-p\fR flag, opcja ta wybiera wszystkich u¿ytkowników, -dla których kiedykolwiek odnotowano niepomy¶ln± próbê logowania. -Opcja ta nie ma znaczenia w po³±czeniu z flag± \fB-r\fR. -.PP -\fB-r\fR s³u¿y do zerowania licznika b³êdnych logowañ. Do poprawnego dzia³ania -tej opcji wymagane jest prawo zapisu do \fI/var/log/faillog\fR. -W po³±czeniu z \fB-u \fInazwa\fR s³u¿y do zerowania licznika b³êdów u¿ytkownika -o podanej \fInazwie\fR. -.PP -Flaga \fB-m\fR ustawia maksymaln± liczbê b³êdów logowania, po której konto -zostanie wy³±czone. Dla tej opcji wymagane jest prawo zapisu do -\fI/var/log/faillog\fR. -Argumenty \fB-m \fImax\fR powoduj±, ¿e wszystkie konta bêd± wy³±czane po -\fImax\fR nieudanych próbach logowania. -U¿ycie dodatkowo \fB-u \fInazwa\fR, ogranicza dzia³anie tej funkcji do -u¿ytkownika o podanej \fInazwie\fR. -Pos³u¿enie siê zerow± warto¶ci± \fImax\fR powoduje, ¿e liczba nieudanych prób -rozpoczêcia sesji jest nieograniczona. -Dla u¿ytkownika \fBroot\fR maksymalna liczba niepowodzeñ powinna byæ zawsze -ustawiona na 0, by zapobiec atakom typu denial of service (odmowa obs³ugi). -.PP -Opcje mog± byæ ³±czone w praktycznie dowolny sposób. Ka¿da z opcji \fB-p\fR, -\fB-r\fR i \fB-m\fR powoduje natychmiastowe wykonanie przy u¿yciu modyfikatora -\fB-u\fR lub \fB-t\fR. -.SH PRZESTROGI -\fBfaillog\fR wy¶wietla wy³±cznie u¿ytkowników, którzy od ostatniej nieudanej -próby nie mieli poprawnych logowañ. -Chc±c wy¶wietliæ u¿ytkownika, który po ostatniej pora¿ce logowa³ siê ju¿ -pomy¶lnie, musisz jawnie za¿±daæ o nim informacji przy pomocy flagi \fB-u\fR. -Mo¿esz tak¿e wy¶wietliæ wszystkich u¿ytkowników pos³uguj±c siê flag± \fB-a\fR. -.PP -W niektórych systemach zamiast /var/log wystêpuje /var/adm lub /usr/adm. -.SH PLIKI -.IR /var/log/faillog " - plik rejestracji b³êdów logowania" -.SH ZOBACZ TAK¯E -.BR login (1), -.BR faillog (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/gpasswd.1 b/man/pl/gpasswd.1 deleted file mode 100644 index 17f5e4ba..00000000 --- a/man/pl/gpasswd.1 +++ /dev/null @@ -1,65 +0,0 @@ -.\" {PTM/WK/1999-09-16} -.\" Copyright 1996, Rafal Maszkowski, rzm@pdi.net -.\" All rights reserved. You can redistribute this man page and/or -.\" modify it under the terms of the GNU General Public License as -.\" published by the Free Software Foundation; either version 2 of the -.\" License, or (at your option) any later version. -.\" -.TH GPASSWD 1 -.SH NAZWA -gpasswd \- administracja plikiem /etc/group -.br -.SH SK£ADNIA -.B gpasswd \fIgrupa\fR -.br -.B gpasswd -a -.I u¿ytkownik grupa -.br -.B gpasswd -d -.I u¿ytkownik grupa -.br -.B gpasswd -R -.I grupa -.br -.B gpasswd -r -.I grupa -.br -.B gpasswd -.RB [ -A -.IR u¿ytkownik ,...] -.RB [ -M -.IR u¿ytkownik ,...] -.I grupa -.SH OPIS -.B gpasswd -s³u¿y do administrowania plikiem \fI/etc/group\fR (oraz \fI/etc/gshadow\fR -je¶li zosta³a wykonana kompilacja ze zdefiniowanym SHADOWGRP). Ka¿da z grup -mo¿e posiadaæ administratorów, cz³onków i has³o. Administrator systemu mo¿e -pos³u¿yæ siê opcj± \fB-A\fR do zdefiniowania administratora(ów) grupy oraz -opcj± \fB-M\fR do zdefiniowania jej cz³onków. Posiada on wszystkie prawa -administratorów i cz³onków grup. -.PP -Administrator grupy mo¿e dodawaæ i usuwaæ u¿ytkowników przy pomocy, -odpowiednio, opcji \fB-a\fR i \fB-d\fR. Administratorzy mog± te¿ u¿ywaæ opcji -\fB-r\fR w celu usuniêcia has³a grupy. Je¿eli grupa nie posiada has³a, -to polecenia -.BR newgrp (1) -do przy³±czenia siê do grupy mog± u¿ywaæ tylko jej cz³onkowie. -Opcja \fB-R\fR wy³±cza dostêp do grupy za pomoc± polecenia -.BR newgrp (1). -.PP -.B gpasswd -wywo³ane przez administratora grupy tylko z nazw± grupy pyta o jej has³o. -Je¿eli has³o jest ustawione, to cz³onkowie grupy mog± nadal wykonywaæ -.BR newgrp (1) -bez has³a, inni musz± natomiast podaæ has³o. -.SH PLIKI -.IR /etc/group " - informacja o grupach" -.br -.IR /etc/gshadow " - chroniona informacja o grupach" -.SH ZOBACZ TAK¯E -.BR newgrp (1), -.BR groupadd (8), -.BR groupdel (8), -.BR groupmod (8), -.BR grpck (8) diff --git a/man/pl/groupadd.8 b/man/pl/groupadd.8 deleted file mode 100644 index e80b4bd0..00000000 --- a/man/pl/groupadd.8 +++ /dev/null @@ -1,72 +0,0 @@ -.\" {PTM/WK/0.1/VIII-1999} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: groupadd.8,v 1.1 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH GROUPADD 8 -.SH NAZWA -groupadd - twórz now± grupê -.SH SK£ADNIA -.B groupadd -.RB [ -g -.I gid -.RB [ -o ]] -.I grupa -.SH OPIS -Polecenie \fBgroupadd\fR tworzy nowe konto grupy pos³uguj±c siê -warto¶ciami podanymi w wierszu poleceñ i domy¶lnymi warto¶ciami z systemu. -W razie potrzeby zostanie wprowadzona do systemu nowa grupa. -Polecenie \fBgroupadd\fR posiada opcje: -.TP -.BI -g " gid" -Numeryczna warto¶æ identyfikatora grupy. Warto¶æ ta musi byæ niepowtarzalna, -chyba ¿e u¿yto opcji \fB-o\fR. Warto¶æ ID grupy nie mo¿e byæ ujemna. Domy¶lnie -u¿ywana jest najmniejsza warto¶æ identyfikatora wiêksza ni¿ 99 a wiêksza ni¿ -jakiejkolwiek innej grupy. -Warto¶ci miêdzy 0 a 99 s± zwykle zarezerwowane dla kont systemowych. -.SH PLIKI -.IR /etc/group " - informacja o kontach grup" -.br -.IR /etc/gshadow " - bezpieczna informacja o kontach grup" -.SH ZOBACZ TAK¯E -.BR chfn (1), -.BR chsh (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8), -.BR passwd (1), -.BR groupdel (8), -.BR groupmod (8). -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Istnieje wiele programów i skryptów do zarz±dzania kontami -u¿ytkowników czy grup. Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij -siê, ¿e korzystasz z w³a¶ciwej dokumentacji. diff --git a/man/pl/groupdel.8 b/man/pl/groupdel.8 deleted file mode 100644 index 24cd254e..00000000 --- a/man/pl/groupdel.8 +++ /dev/null @@ -1,68 +0,0 @@ -.\" {PTM/WK/0.1/VIII-1999} -.\" Copyright 1991 - 1993, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: groupdel.8,v 1.1 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH GROUPDEL 8 -.SH NAZWA -groupdel - usuñ grupê -.SH SK£ADNIA -.B groupdel -.I grupa -.SH OPIS -Polecenie \fBgroupdel\fR zmienia systemowe pliki kont, usuwaj±c -wszystkie zapisy odnosz±ce siê do \fIgrupy\fR. -Wymieniona grupa musi istnieæ. -.PP -Musisz rêcznie sprawdziæ wszystkie systemy plików, by upewniæ siê, ¿e -nie pozosta³y ¿adne pliki, dla których wymieniona grupa jest grup± w³a¶cicieli. -.SH PRZESTROGI -Nie mo¿esz usun±æ podstawowej grupy ¿adnego z istniej±cych u¿ytkowników. -Musisz usun±æ u¿ytkownika przed usuniêciem takiej grupy. -.SH PLIKI -.IR /etc/group " - informacja o grupach" -.br -.IR /etc/gshadow " - bezpieczna informacja o grupach" -.\" secure group information -.SH ZOBACZ TAK¯E -.BR chfn (1), -.BR chsh (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8), -.BR passwd (1), -.BR groupadd (8), -.BR groupmod (8). -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Istnieje wiele programów i skryptów do zarz±dzania kontami -u¿ytkowników czy grup. Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij -siê, ¿e korzystasz z w³a¶ciwej dokumentacji. diff --git a/man/pl/groupmod.8 b/man/pl/groupmod.8 deleted file mode 100644 index bead76d1..00000000 --- a/man/pl/groupmod.8 +++ /dev/null @@ -1,77 +0,0 @@ -.\" {PTM/WK/0.1/VIII-1999} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: groupmod.8,v 1.1 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH GROUPMOD 8 -.SH NAZWA -groupmod - zmieñ dane grupy -.SH SK£ADNIA -.B groupmod -.RB [ -g -.I gid -.RB [ -o ]] -.RB [ -n -.IR nazwa_grupy ] -.I grupa -.SH OPIS -Polecenie \fBgroupmod\fR modyfikuje systemowe pliki kont tak, by -odzwierciedliæ w nich zmiany grup podane w wierszu poleceñ. Obs³uguje ono -nastêpuj±ce opcje: -.TP -.BI -g " gid" -Numeryczna warto¶æ identyfikatora grupy (group ID). -Warto¶æ ta musi byæ niepowtarzalna, chyba ¿e u¿yto opcji \fB-o\fR. -Nie mo¿e byæ ujemna. Warto¶ci pomiêdzy 0 a 99 s± zwykle zarezerwowane -dla grup systemowych. -Pliki, dla których stary identyfikator jest identyfikatorem -grupy pliku, wymagaj± rêcznej zmiany ID grupy. -.TP -.BI -n " nazwa_grupy" -Nazwa grupy zostanie zmieniona z \fIgrupa\fR na \fInazwa_grupy\fR. -.SH PLIKI -.IR /etc/group " - informacja o grupach" -.br -.IR /etc/gshadow " - bezpieczna informacja o grupach" -.SH ZOBACZ TAK¯E -.BR chfn (1), -.BR chsh (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8), -.BR passwd (1), -.BR groupadd (8), -.BR groupdel (8). -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Istnieje wiele programów i skryptów do zarz±dzania kontami -u¿ytkowników czy grup. Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij -siê, ¿e korzystasz z w³a¶ciwej dokumentacji. diff --git a/man/pl/groups.1 b/man/pl/groups.1 deleted file mode 100644 index 6903d6cd..00000000 --- a/man/pl/groups.1 +++ /dev/null @@ -1,61 +0,0 @@ -.\" {PRM/WK/1999-09-25} -.\" Copyright 1991 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH GROUPS 1 -.SH NAZWA -groups \- wy¶wietl nazwy bie¿±cych grup -.SH SK£ADNIA -.B groups -.RI [ u¿ytkownik ] -.SH OPIS -.B groups -wy¶wietla nazwy lub warto¶ci bie¿±cych identyfikatorów grup. -Je¿eli warto¶æ nie posiada odpowiedniego wpisu w \fI/etc/group\fR, to zostanie -wy¶wietlona jako numeryczny identyfikator grupy. -Opcjonalny parametr \fIu¿ytkownik\fR powoduje wy¶wietlenie grup dla danego -\fIu¿ytkownika\fR. -.SH UWAGA -Systemy nie obs³uguj±ce równoczesnych grup (tj.takie, w których u¿ytkownik mo¿e -w danej byæ cz³onkiem tylko jednej grupy, grupy aktywnej) bêd± wy¶wietlaæ -informacjê z \fI/etc/group\fR. -Do zmiany bie¿±cego rzeczywistego i efektywnego identyfikatora grupy u¿ytkownik -musi u¿yæ polecenia \fBnewgrp\fR lub \fBsg\fR. -.SH PLIKI -.IR /etc/group " - informacja o grupach" -.SH ZOBACZ TAK¯E -.BR newgrp (1), -.BR getuid (2), -.BR getgid (2), -.BR getgroups (2) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij siê, ¿e korzystasz -z w³a¶ciwej dokumentacji. diff --git a/man/pl/grpck.8 b/man/pl/grpck.8 deleted file mode 100644 index 55234e49..00000000 --- a/man/pl/grpck.8 +++ /dev/null @@ -1,103 +0,0 @@ -.\" {PTM/WK/1999-09-17} -.\" Copyright 1992 - 1993, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH GRPCK 1 -.SH NAZWA -grpck \- weryfikacja spójno¶ci plików grup -.SH SK£ADNIA -.B grpck -.RB [ -r ] -.RI [ group -.IR shadow ] -.SH OPIS -\fBgrpck\fR weryfikuje integralno¶æ informacji autentykacji systemowej. -Sprawdzane s± wszystkie pozycje w plikach \fI/etc/group\fR -i \fI/etc/gshadow\fR, by upewniæ siê, ¿e ka¿da z nich posiada w³a¶ciwy format -i poprawne dane w ka¿dym z pól. U¿ytkownik monitowany jest o usuniêcie -pozycji, które s± sformatowane niepoprawnie lub posiadaj± inne nie daj±ce -siê skorygowaæ b³êdy. -.P -Kontrolowane jest czy ka¿da pozycja posiada -.sp -.in +.5i -- w³a¶ciw± liczbê pól -.br -- unikaln± nazwê grupy -.br -- poprawn± listê cz³onków i administratorów -.in -.5i -.sp -.P -Kontrola w³a¶ciwej liczby pól i niepowtarzalnej nazwy grupy jest -decyduj±ca. Je¿eli pozycja posiada b³êdn± liczbê pól, to u¿ytkownik jest -proszony o usuniêcie ca³ej pozycji (wiersza). -Je¿eli u¿ytkownik nie potwierdzi decyzji o usuniêciu, to pomijane s± wszelkie -dalsze sprawdzenia. -Pozycja z powtórzon± nazw± grupy powoduje monit o usuniêcie, ale nadal -bêd± wykonywane pozosta³e sprawdzenia. -Wszystkie inne b³êdy daj± ostrze¿enia a u¿ytkownik jest zachêcany -do uruchomienia polecenia \fBgroupmod\fR, by je poprawiæ. -.P -Polecenia dzia³aj±ce na pliku \fI/etc/group\fR nie potrafi± zmieniaæ -uszkodzonych lub powielonych pozycji. W takich okoliczno¶ciach powinien byæ -u¿ywany \fBgrpck\fR, by usun±æ nieprawid³ow± pozycjê. -.SH OPCJE -Domy¶lnie \fBgrpck\fR dzia³a na plikach \fI/etc/group\fR oraz \fI/etc/gshadow\fR. -Przy pomocy parametrów \fIgroup\fR i \fIshadow\fR u¿ytkownik mo¿e wybraæ inne -pliki. -Dodatkowo, u¿ytkownik mo¿e wykonaæ polecenie w trybie tylko-do-odczytu, poprzez -podanie flagi \fB-r\fR. -Powoduje to, ¿e na wszystkie pytania dotycz±ce zmian zostanie, bez ingerencji -u¿ytkownika, u¿yta odpowied¼ \fBnie\fR. -.SH PLIKI -.IR /etc/group " - informacja o kontach grup" -.br -.IR /etc/gshadow " - zakodowana informacja o has³ach i administratorach grup" -.br -.IR /etc/passwd " -informacja o u¿ytkownikach" -.SH ZOBACZ TAK¯E -.BR groupmod (8), -.BR group (5), -.BR passwd (5), -.BR shadow (5) -.SH DIAGNOSTYKA -Polecenie \fBgrpck\fR koñczy pracê z nastêpuj±cymi warto¶ciami kodów: -.IP 0 5 -Powodzenie -.IP 1 5 -B³±d sk³adni -.IP 2 5 -Jedna lub wiêcej z³ych pozycji pliku grup -.IP 3 5 -Niemo¿liwe otwarcie plików grup -.IP 4 5 -Niemo¿liwa blokada plików grup -.IP 5 5 -Niemo¿liwa aktualizacja plików grup -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/id.1 b/man/pl/id.1 deleted file mode 100644 index 71392b94..00000000 --- a/man/pl/id.1 +++ /dev/null @@ -1,57 +0,0 @@ -.\" {PTM/WK/1999-09-25} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH ID 1 -.SH NAZWA -id - wy¶wietl nazwy bie¿±cych ID u¿ytkownika i grupy -.SH SK£ADNIA -.B id -.RB [ -a ] -.SH OPIS -.B id -wy¶wietla bie¿±ce nazwy (lub warto¶ci) rzeczywistych i efektywnych -identyfikatorów u¿ytkownika i grupy. -Je¿eli dana warto¶æ nie posiada odpowiedniego wpisu w \fI/etc/passwd\fR -lub \fI/etc/group\fR, to zostanie wy¶wietlona bez odpowiedniej nazwy. -Opcjonalna flaga \fB-a\fR wy¶wietla zestaw grup w systemach, które obs³uguj± -równoczesne cz³onkostwo w wielu grupach. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/group " - informacja o grupach" -.SH ZOBACZ TAK¯E -.BR getuid (2), -.BR getgid (2), -.BR getgroups (2) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij siê, ¿e korzystasz -z w³a¶ciwej dokumentacji. diff --git a/man/pl/lastlog.8 b/man/pl/lastlog.8 deleted file mode 100644 index 63d5e270..00000000 --- a/man/pl/lastlog.8 +++ /dev/null @@ -1,64 +0,0 @@ -.\" {PTM/WK/1999-09-18} -.\" Copyright 1992, Phillip Street and Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" @(#)lastlog.8 3.3 08:24:58 29 Sep 1993 (National Guard Release) -.\" -.TH LASTLOG 8 -.SH NAZWA -lastlog \- sprawd¼ plik ostatnich logowañ (lastlog) -.SH SK£ADNIA -.B lastlog -.RB [ -u -.IR uid ] -.RB [ -t -.IR dni -.SH OPIS -\fBlastlog\fR formatuje i wy¶wietla zawarto¶æ dziennika ostatnich logowañ, -\fI/var/log/lastlog\fR. Wy¶wietlone zostan± \fBnazwa u¿ytkownika\fR, -\fBport\fR i \fBczas ostatniego logowania\fR. -Domy¶lnie (bez flag) pozycje pliku wy¶wietlane s± w kolejno¶ci identyfikatorów -u¿ytkowników (UID). -Wprowadzenie opcji \fB-u \fInazwa_u¿ytkownika\fR spowoduje wy¶wietlenie -pozycji opisuj±cej ostatnie rozpoczêcie sesji tylko dla tego u¿ytkownika. -U¿ycie \fB-t \fIdni\fR powoduje, ¿e bêd± wy¶wietlone ostatnie logowania -u¿ytkowników nowsze ni¿ sprzed zadanej liczby \fIdni\fR. -Opcja \fB-t\fR przes³ania u¿ycie opcji \fB-u\fR. -.PP -Je¿eli u¿ytkownik nigdy siê nie logowa³ to zamiast portu i czasu logowania -zostanie wy¶wietlony komunikat \fB"**Never logged in**"\fR (nigdy siê nie -logowa³). -.SH PLIKI -.IR /var/log/lastlog " - dziennik ostatnich logowañ" -.SH PRZESTROGI -Du¿e luki w numeracji UID powoduj±, ¿e program bêdzie pracowa³ d³u¿ej, nie -wy¶wietlaj±c wyników (np. je¶li mmdf=800, za¶ ostatni uid=170, to program -bêdzie sprawia³ wra¿enie zawieszonego w trakcie przetwarzania uid 171-799). -.SH AUTORZY -Julianne Frances Haugh (jfh@austin.ibm.com) -.br -Phillip Street diff --git a/man/pl/limits.5 b/man/pl/limits.5 deleted file mode 100644 index 9ffa0f59..00000000 --- a/man/pl/limits.5 +++ /dev/null @@ -1,79 +0,0 @@ -.\" {PTM/WK/1999-09-18} -.TH LIMITS 5 -.SH NAZWA -limits \- definicja ograniczeñ zasobów -.SH OPIS -Plik -.I limits -(domy¶lnie /etc/limits lub LIMITS_FILE zdefiniowane w config.h) -opisuje ograniczenia zasobów, jakie chcia³by¶ narzuciæ u¿ytkownikom. -W³a¶cicielem tego pliku powinien byæ u¿ytkownik root i wy³±cznie dla niego -plik ten powinien byæ dostêpny do odczytu. -.PP -Domy¶lnie u¿ytkownikowi 'root' nie s± narzucane ¿adne ograniczenia. -W rzeczywisto¶ci, przy u¿yciu tego sposobu nie jest mo¿liwe narzucenie limitów -dla kont równowa¿nych root (kont z UID równym 0). -.PP -Ka¿dy wiersz definiuje ograniczenie dla u¿ytkownika w postaci: -.sp -.I u¿ytkownik £AÑCUCH_OGRANICZEÑ -.PP -\fB£AÑCUCH OGRANICZEÑ\fP sk³ada siê z po³±czonych definicji ograniczeñ zasobów. -Ka¿de ograniczenie opisywane jest liter± z nastêpuj±c± po niej warto¶ci± -numeryczn± limitu. -.PP -Dozwolone s± nastêpuj±ce identyfikatory: -.sp -A: max. przestrzeñ adresowa (KB) -.br -C: max. rozmiar pliku core (KB) -.br -D: max. rozmiar danych (KB) -.br -F: maksymalny rozmiar pliku (KB) -.br -M: max. locked-in-memory address space (KB) -.br -N: max. liczba otwartych plików -.br -R: max. resident set size (KB) -.br -S: max. rozmiar stosu (KB) -.br -T: max. czas procesora (CPU) (MIN) -.br -U: max. liczba procesów -.br -L: max. liczba sesji pracy dla tego u¿ytkownika -.br -P: priorytet procesu, ustawiany przez \fBsetpriority\fR(2). -.PP -Na przyk³ad, \fIL2D2048N5\fP jest poprawnym \fB£AÑCUCHEM OGRANICZEÑ\fP. -Z uwagi na lepsz± czytelno¶ci przyjêto, ¿e poni¿sze zapisy s± równowa¿ne: -.sp -nazwa_u¿ytkownika L2D2048N5 -.br -nazwa_u¿ytkownika L2 D2048 N5 -.PP -Nale¿y podkre¶liæ, ¿e reszta wiersza po \fInazwie_u¿ytkownika\fP traktowana -jest jako ³añcuch ograniczeñ, zatem komentarze nie s± dozwolone. Nieprawid³owy -³añcuch ograniczeñ zostanie odrzucony (nie bêdzie brany pod uwagê) przez -program login. -.PP -Nazwa u¿ytkownika równa "\fB*\fP" oznacza wpis domy¶lny. -Je¿eli w pliku \fBLIMITS_FILE\fP posiadasz wiele takich wpisów, to jako -domy¶lny zostanie u¿yty ostatni z nich. -.PP -Pojedyncza kreska "\fB-\fP" ca³kowicie wy³±cza ograniczenia dla u¿ytkownika. -.PP -Zauwa¿ te¿, proszê, ¿e wszystkie te ograniczenia definiowane s± w odniesieniu -do pojedynczej sesji (per login). Nie s± one globalne ani sta³e. Byæ mo¿e bêd± -kiedy¶ ograniczenia globalne, ale na razie tyle musi wystarczyæ ;) -.SH PLIKI -.I /etc/limits -.SH ZOBACZ TAK¯E -.BR login (1), -.BR setpriority (2), -.BR setrlimit (2) -.SH AUTOR -Cristian Gafton (gafton@sorosis.ro) diff --git a/man/pl/login.1 b/man/pl/login.1 deleted file mode 100644 index ecedc24c..00000000 --- a/man/pl/login.1 +++ /dev/null @@ -1,134 +0,0 @@ -.\" {PTM/WK/1999-09-25} -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH LOGIN 1 -.SH NAZWA -login \- rozpocznij sesjê pracy w systemie -.SH SK£ADNIA -.B login -.RI [ u¿ytkownik " [" zmienne_¶rodowiska ]] -.\" XXX - udokumentowaæ opcje -f -h -p -r -.SH OPIS -.B login -s³u¿y do utworzenia nowej sesji pracy z systemem. Zwykle wywo³ywane jest -automatycznie w odpowiedzi na zachêtê -.I login: -na terminalu u¿ytkownika. -.B login -mo¿e byæ specyficzne dla pow³oki i mo¿e zostaæ wywo³ane jako podproces. -Najczê¶ciej, -.B login -traktowane jest przez pow³okê jako \fBexec login\fR, co powoduje opuszczenie -przez u¿ytkownika bie¿±cej pow³oki. -Próba wykonania \fBlogin\fR z pow³oki innej ni¿ zg³oszeniowa powoduje komunikat -o b³êdzie. -.PP -Przy wywo³aniu polecenia z zachêty \fIlogin:\fR, u¿ytkownik mo¿e po swojej -nazwie wprowadziæ zmienne ¶rodowiska. Zmienne te wprowadzane s± w postaci: -\fBNAZWA=WARTO¦Æ\fR. Nie wszystkie zmienne mog± jednak byæ ustawione w ten -sposób, szczególnie \fBPATH\fR, \fBHOME\fR i \fBSHELL\fR. -Dodatkowo, zakazane mo¿e byæ \fBIFS\fR (input field separator: separator pól -wej¶ciowych), je¿eli pow³ok± zg³oszeniow± u¿ytkownika \fB/bin/sh\fR. -.PP -U¿ytkownik pytany jest o has³o, je¶li takowe istnieje. -Dla zapobie¿enia ujawnieniu has³a wy¶wietlanie wprowadzanych znaków jest -wy³±czone. Dozwolona jest jedynie niewielka liczba nieudanych prób podania -has³a. Po wyczerpaniu limitu prób \fBlogin\fR koñczy pracê za¶ po³±czenie -komunikacyjne jest zrywane. -.PP -Je¿eli dla twego konta w³±czona jest kontrola wa¿no¶ci has³a, mo¿esz byæ -proszony o podanie nowego has³a przed kontynuacj±. Bêdziesz wówczas musia³ -podaæ stare i nowe has³o. Wiêcej informacji na ten temat znajdziesz -w \fBpasswd \fR(1). -.PP -Po poprawnym rozpoczêciu sesji (zalogowaniu siê), zostanie wy¶wietlona -wiadomo¶æ dnia (je¶li jest) i informacja o stanie skrzynki pocztowej. -Mo¿esz wy³±czyæ wy¶wietlanie zawarto¶ci pliku wiadomo¶ci dnia, -\fI/etc/motd\fR, tworz±c zerowej wielko¶ci plik \fI.hushlogin\fR -w swoim katalogu domowym. -Informacja o stanie skrzynki pocztowej jest jedn± z: -"\fBYou have new mail.\fR" (masz now± pocztê), -"\fBYou have mail.\fR" (masz pocztê), lub "\fBNo Mail.\fR" (brak poczty) - -stosownie do stanu skrzynki. -.PP -Identyfikator u¿ytkownika i grupy (UID i GID) zostan± ustawione wed³ug warto¶ci -w pliku \fI/etc/passwd\fR. -Warto¶ci \fB$HOME\fR, \fB$SHELL\fR, \fB$PATH\fR, \fB$LOGNAME\fR -i \fB$MAIL\fR ustawiane s± stosownie do odpowiednich pól danego wpisu pliku -hase³. -Mog± byæ ustalane równie¿ warto¶ci ulimit, umask oraz nice wed³ug wpisów w polu -GECOS. -.PP -W niektórych systemach zostanie ustawiona zmienna ¶rodowiskowa \fB$TERM\fR, -wskazuj±ca na typ terminala na linii tty, jak podano w \fI/etc/ttytype\fR. -.PP -Mo¿e tak¿e zostaæ wykonany skrypt startowy (inicjacyjny) twojego interpretatora -poleceñ. -Przegl±dnij, proszê, odpowiedni± sekcjê dokumentacji opisuj±c± bardziej -szczegó³owo tê funkcjê. -.SH PRZESTROGI -Niniejsza wersja \fBlogin\fR posiada wiele opcji kompilacji, z których tylko -czê¶æ bêdzie mieæ zastosowanie w danej instalacji. -.PP -Po³o¿enie plików mo¿e byæ ró¿ne w zale¿no¶ci od konfiguracji systemu. -.SH PLIKI -.IR /etc/utmp " - lista bie¿±cych sesji pracy" -.br -.IR /etc/wtmp " - lista poprzednich sesji pracy" -.br -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/shadow " - zakodowane has³a i informacja o ich wa¿no¶ci" -.br -.IR /etc/motd " - plik 'wiadomo¶ci dnia'" -.br -.IR /etc/nologin " - zapobiega logowaniu innych ni¿ root" -.br -.IR /etc/ttytype " - lista typów terminali" -.br -.IR $HOME/.profile " - skrypt startowy domy¶lnej pow³oki" -.br -.IR $HOME/.hushlogin " - zapobiega m.in. wy¶wietlaniu wiadomo¶ci dnia" -.br -.SH ZOBACZ TAK¯E -.BR getty (8), -.BR mail (1), -.BR passwd (1), -.BR sh (1), -.BR su (1), -.BR login.defs (5), -.\" .BR d_passwd (5), -.BR passwd (5), -.BR nologin (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij siê, ¿e korzystasz -z w³a¶ciwej dokumentacji. diff --git a/man/pl/login.access.5 b/man/pl/login.access.5 deleted file mode 100644 index cfcad56c..00000000 --- a/man/pl/login.access.5 +++ /dev/null @@ -1,54 +0,0 @@ -.\" {PTM/WK/1999-09-17} -.TH LOGIN.ACCESS 5 -.\" .Dt SKEY.ACCESS 5 -.\" .Os FreeBSD 1.2 -.SH NAZWA -login.access \- tabela kontroli dostêpu logowania -.SH OPIS -Plik -.I login.access -okre¶la kombinacje (u¿ytkownik, host) i/lub (u¿ytkownik, tty) -dla których logowanie bêdzie albo przyjête albo odrzucone. -.PP -Gdy kto¶ siê loguje, plik -.I login.access -przeszukiwany jest do znalezienia pierwszej pozycji pasuj±cej do danej -kombinacji (u¿ytkownik, host), lub, w przypadku logowañ nie-sieciowych -kombinacji (u¿ytkownik, tty). Pole zezwolenia w tej tablicy pozycji okre¶la -czy logowanie bêdzie przyjête czy odrzucone. -.PP -Ka¿dy wiersz tabeli kontroli dostêpu logowania posiada trzy, oddzielone -znakiem dwukropka, pola: -.sp 1 -.IR zezwolenie : u¿ytkownicy : pochodzenie -.sp 1 -Pierwsze pole powinno zawieraæ znak "\fB+\fR" (dostêp zapewniony) lub "\fB-\fR" -(zakaz dostêpu). Drugie z pól powinno zawieraæ listê jednego lub wiêcej nazw -u¿ytkowników, grup lub s³owo -.B ALL -(zawsze pasuje do wszystkich). Trzecie pole powinno byæ list± jednej lub wiêcej -nazw tty (dla logowañ nie-sieciowych), nazw hostów, domen (rozpoczynaj±cych siê -od kropki), adresów hostów, internetowych numerów sieci (koñcz±cych siê -kropk±), s³owem -.B ALL -(wszystkie - zawsze pasuje) lub -.B LOCAL -(dopasowuje dowolny ³añcuch nie zawieraj±cy kropki). -Je¿eli uruchomisz NIS mo¿esz u¿yæ @nazwagrupysieciowej we wzorcu hosta -lub u¿ytkownika. -.\" @netgroupname -.PP -Operator -.B EXCEPT -(oprócz) umo¿liwia pisanie z³o¿onych regu³. -.PP -Plik grup przeszukiwany jest wy³±cznie wtedy, gdy nazwa nie pasuje do -loguj±cego siê u¿ytkownika. Dopasowywane s± tylko te grupy, w których -u¿ytkownik jest jawnie wymieniony: program nie sprawdza warto¶ci -identyfikatora grupy g³ównej u¿ytkownika. -.SH PLIKI -.I /etc/login.access -.SH ZOBACZ TAK¯E -.BR login (1) -.SH AUTOR -Guido van Rooij diff --git a/man/pl/login.defs.5 b/man/pl/login.defs.5 deleted file mode 100644 index 79c907de..00000000 --- a/man/pl/login.defs.5 +++ /dev/null @@ -1,557 +0,0 @@ -.\" {PTM/WK/1999-09-18} -.\" Copyright 1991 - 1993, Julianne Frances Haugh and Chip Rosenthal -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH LOGIN 5 -.SH NAZWA -/etc/login.defs \- konfiguracja logowania -.SH OPIS -Plik -.I /etc/login.defs -definiuje specyficzn± dla naszej maszyny konfiguracjê pakietu shadow login. -Plik ten jest wymagany. Jego nieobecno¶æ nie wstrzyma dzia³ania systemu, -ale prawdopodobnie spowoduje nieprzewidywalne dzia³anie. -.PP -Plik ten jest czytelnym plikiem tekstowym. Ka¿dy z jego wierszy opisuje jeden -parametr konfiguracji. Wiersze sk³adaj± siê z nazwy parametru i jego warto¶ci, -oddzielonych bia³ym znakiem. Ignorowane s± puste wiersze i wiersze komentarzy. -Komentarze rozpoczynaj± siê od znaku '#', który musi byæ pierwszym znakiem -wiersza (pomijaj±c bia³e znaki). -.PP -Istniej± cztery typy warto¶ci parametrów: napisy, logiczne (boolean), -liczby i d³ugie liczby (long numbers). Napis jest z³o¿ony -z dowolnych znaków drukowalnych. Parametr logiczny mo¿e mieæ albo warto¶æ -"yes" albo "no". Niezdefiniowanemu parametrowi logicznemu lub parametrowi, -któremu przypisano warto¶æ inn± od powy¿szych przypisane zostanie "no". -Liczby (zarówno zwyk³e jak i d³ugie) mog± byæ warto¶ciami dziesiêtnymi, -ósemkowymi (poprzed¼ warto¶æ cyfr± "0") albo szesnastkowymi (poprzed¼ warto¶æ -sekwencj± "0x"). Maksymalne warto¶ci zwyk³ych i d³ugich parametrów -numerycznych zale¿± od maszyny. -.PP -Obs³ugiwane s± nastêpuj±ce opcje konfiguracyjne: -.\" -.IP "CHFN_AUTH (logiczna)" -Je¿eli ma warto¶æ -.IR yes , -to programy -.B chfn -i -.B chsh -bêd± pytaæ o has³o przed dokonaniem zmian, chyba ¿e uruchamiane s± przez -superu¿ytkownika. -.\" -.IP "CHFN_RESTRICT (napis)" -Ten parametr okre¶la, jakie warto¶ci w polu -.I gecos -pliku -.I passwd -mog± byæ zmieniane przez zwyk³ych u¿ytkowników za pomoc± programu -.B chfn -Mo¿e on byæ dowoln± kombinacj± liter -.IR f , -.IR r , -.IR w , -.IR h , -oznaczaj±cych odpowiednio: Full name (pe³na nazwa), Room number (numer pokoju), -Work phone (telefon s³u¿bowy) i Home phone (telefon domowy). -Je¶li parametr nie jest podany, to zmian mo¿e dokonywaæ wy³±cznie -superu¿ytkownik. -.\" -.IP "CONSOLE (napis)" -Je¶li podana, definicja ta okre¶la ograniczony zestaw linii, na których -dozwolone jest rozpoczynanie sesji u¿ytkownika root. Próby logowania -u¿ytkownika root niespe³niaj±ce ustalonych tu kryteriów zostan± odrzucone. -Warto¶æ tego pola mo¿e wyst±piæ w jednej z dwu postaci: albo pe³nej nazwy -¶cie¿kowej pliku, jak na przyk³ad -.sp -.ft I - CONSOLE /etc/consoles -.ft R -.sp -albo listy linii terminalowych rozdzielonych dwukropkami, jak poni¿ej: -.sp -.ft I - CONSOLE console:tty01:tty02:tty03:tty04 -.ft R -.sp -(Zauwa¿, ¿e wymienione tu nazwy nie zawieraj± ¶cie¿ki /dev/). -Je¿eli podano ¶cie¿kow± nazwê pliku, to ka¿dy jego wiersz powinien okre¶laæ -jedn± liniê terminalow±. Je¶li parametr ten nie jest zdefiniowany albo podany -plik nie istnieje, to u¿ytkownik root bêdzie móg³ siê logowaæ z dowolnej linii -terminalowej. Poniewa¿ usuniêcie lub obciêcie pliku definiuj±cego -dozwolone linie mo¿e spowodowaæ nieautoryzowane logowania roota, plik ten musi -byæ chroniony. Tam, gdzie bezpieczeñstwo jest spraw± kluczow±, powinna byæ -u¿ywana postaæ listy separowanej dwukropkami, co chroni przed potencjaln± -prób± ataku w opisany sposób. -.\" -.IP "CONSOLE_GROUPS (napis)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "CRACKLIB_DICTPATH (napis)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "DEFAULT_HOME (logiczna)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "DIALUPS_CHECK_ENAB (logiczna)" -Je¿eli ma warto¶æ -.I yes -a plik -.I /etc/dialups -istnieje, to na liniach telefonicznych wyszczególnionych w tym pliku s± -w³±czane wtórne has³a (has³a telefoniczne). Plik ten powinien zawieraæ listê -linii telefonicznych (dialups), po jednej w wierszu, na przyk³ad: -.nf -.sp -.ft I - ttyfm01 - ttyfm02 - \0\0. - \0\0. - \0\0. -.ft R -.sp -.fi -.\" -.IP "ENVIRON_FILE (napis)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "ENV_HZ (napis)" -Parametr ten okre¶la warto¶æ parametru ¶rodowiska HZ. Przyk³ad u¿ycia: -.sp - \fIENV_HZ HZ=50\fR -.sp -Je¿eli jest on zdefiniowany, to nie zostanie ustanowiona ¿adna warto¶æ HZ. -.\" -.IP "ENV_PATH (napis)" -Parametr ten musi byæ zdefiniowany jako ¶cie¿ka przeszukiwania dla zwyk³ych -u¿ytkowników. Przy logowaniu z UID innym ni¿ zero, zmienna ¶rodowiskowa PATH -jest inicjowana t± w³a¶nie warto¶ci±. Jest to parametr wymagany; je¿eli nie -zostanie zdefiniowany, to zostanie nadana, byæ mo¿e niepoprawna, warto¶æ -domy¶lna. -.\" -.IP "ENV_SUPATH (napis)" -Parametr ten musi byæ zdefiniowany jako ¶cie¿ka przeszukiwania dla -superu¿ytkownika. Przy rozpoczynaniu sesji z UID równym zero, zmienna -¶rodowiskowa PATH jest inicjowana t± w³a¶nie warto¶ci±. Jest to parametr -wymagany; je¿eli nie zostanie zdefiniowany, to zostanie nadana, byæ mo¿e -niepoprawna, warto¶æ domy¶lna. -.\" -.IP "ENV_TZ (napis)" -Parametr ten zawiera informacjê s³u¿±c± do utworzenia zmiennej ¶rodowiskowej TZ. -Jego warto¶æ musi byæ albo wprost wymagan± zawarto¶ci± TZ, albo -pe³n± nazw± ¶cie¿kow± pliku zawieraj±cego tê informacjê. Przyk³ad u¿ycia: -.sp - \fIENV_TZ\0\0\0\0TZ=CST6CDT\fP -.sp -lub -.sp - \fIENV_TZ\0\0\0\0/etc/tzname\fP -.sp -Je¿eli podano nieistniej±cy plik, to TZ zostanie zainicjowane pewn± warto¶ci± -domy¶ln±. Je¿eli nie zdefiniowano tego parametru to nie bêdzie ustawiona -¿adna warto¶æ TZ. -.\" -.IP "ERASECHAR (liczba)" -T± warto¶ci± jest inicjowany terminalowy znak -.I erase -(kasowania). Jest to obs³ugiwane tylko w systemach z interfejsem -.IR termio, -np. System V. Je¿eli nie podano parametru, to znak kasowania zostanie -zainicjowany na backspace. Informacjê powi±zan± znajdziesz w opisie KILLCHAR. -.\" -.IP "FAILLOG_ENAB (logiczna)" -Je¿eli ustawiona na -.I yes -to nieudane logowania bêd± odnotowywane w pliku -.I /var/log/faillog -w formacie -.BR faillog (8). -.\" -.IP "FAIL_DELAY (liczba)" -Czas opó¼nienia, wyra¿ony w sekundach, po ka¿dej nieudanej próbie logowania. -.\" -.IP "FAKE_SHELL (napis)" -Zamiast rzeczywistej pow³oki u¿ytkownika zostanie uruchomiony program okre¶lony -warto¶ci± tego parametru. Nazwa widoczna (argv[0]) programu bêdzie jednak -nazw± pow³oki. Program przed uruchomieniem faktycznej pow³oki mo¿e wykonywaæ -dowoln± akcjê (logowanie, dodatkowe uwierzytelnianie, banner itp.). -.\" -.IP "FTMP_FILE (napis)" -Okre¶la pe³n± ¶cie¿kow± nazwê pliku, w którym rejestrowane s± nieudane próby -rozpoczynania sesji pracy. W przypadku nieudanej próby logowania do pliku -dopisywana jest pozycja o formacie -.IR utmp . -Zauwa¿, ¿e ró¿ni siê to od rejestracji niepomy¶lnych logowañ do -.IR /var/log/faillog , -gdy¿ opisywana funkcja odnotowuje wszystkie nieudane próby, podczas gdy -"faillog" kumuluje informacjê o pora¿kach danego u¿ytkownika. Je¶li nie -podano tego parametru, to rejestracja bêdzie wy³±czona. Powi±zane informacje -znajdziesz w opisie FAILLOG_ENAB i LOG_UNKFAIL_ENAB. -.\" -.IP "GID_MAX (liczba)" -.IP "GID_MIN (liczba)" -Zakres identyfikatorów grup, w obrêbie którego mo¿e wybieraæ program -.BR groupadd . -.\" -.IP "HUSHLOGIN_FILE (nazwa)" -Parametr u¿ywany do ustalenia okoliczno¶ci cichego logowania ("hushlogin"). -Okoliczno¶ci te mog± byæ ustalone na dwa sposoby. Po pierwsze, je¿eli warto¶ci± -parametru jest nazwa pliku, a plik ten istnieje w katalogu domowym u¿ytkownika, -to wprowadzane s± warunki cichego logowania. Zawarto¶æ pliku jest ignorowana; -sama jego obecno¶æ powoduje ciche logowanie. Po drugie, je¿eli warto¶ci± -parametru jest pe³na nazwa ¶cie¿kowa pliku a w pliku tym znaleziona zostanie -nazwa u¿ytkownika lub nazwa jego pow³oki, to wprowadzone zostan± warunki -cichego logowania. W tym przypadku, plik powinien mieæ format podobny do: -.nf -.sp -.ft I - demo - /usr/lib/uucp/uucico - \0\0. - \0\0. - \0\0. -.ft R -.sp -.fi -Je¿eli nie zdefiniowano tego parametru, to warunki cichego logowania nigdy -nie wyst±pi±. W trakcie cichego logowanie wstrzymane jest wy¶wietlanie -wiadomo¶ci dnia (message of the day), ostatniego udanego i nieudanego -rozpoczêcia sesji pracy, wy¶wietlanie stanu skrzynki pocztowej i sprawdzenie -wieku has³a. Zauwa¿, ¿e zezwolenie na pliki cichego logowania w katalogach -domowych u¿ytkowników pozwala im na wstrzymanie kontroli wa¿no¶ci -has³a. Informacje zwi±zane z tym tematem znajdziesz w opisach MOTD_FILE, -FILELOG_ENAB, LASTLOG_ENAB i MAIL_CHECK_ENAB. -.\" -.IP "ISSUE_FILE (napis)" -Pe³na ¶cie¿kowa nazwa pliku wy¶wietlanego przed ka¿d± zachêt± do logowania. -.\" -.IP "KILLCHAR (liczba)" -T± warto¶ci± inicjowany jest terminalowy znak -.IR kill . -Jest to obs³ugiwane tylko w systemach z interfejsem -.IR termio, -np. System V. Je¿eli nie podano parametru, to znak kasowania zostanie -zainicjowany na \s-2CTRL/U\s0. Informacjê powi±zan± znajdziesz w opisie -ERASECHAR. -.\" -.IP "LASTLOG_ENAB (logiczna)" -Je¶li ma warto¶æ -.IR yes , -i istnieje plik -.IR /var/log/lastlog , -to w tym pliku bêdzie rejestrowane poprawne rozpoczêcie sesji pracy u¿ytkownika -(zalogowanie siê). Ponadto, je¶li opcja ta jest w³±czona, to podczas logowania -siê u¿ytkownika bêdzie wy¶wietlana informacja o liczbie ostatnich udanych -i nieudanych logowañ. Zakoñczone niepowodzeniem logowania nie bêd± wy¶wietlane -je¶li nie w³±czono FAILLOG_ENAB. W warunkach cichego logowanie nie -bêd± wy¶wietlane informacje ani o pomy¶lnych ani o niepomy¶lnych logowaniach. -.\" -.IP "LOGIN_RETRIES (liczba)" -Dozwolona liczba prób logowania przed zakoñczeniem pracy programu -.BR login . -.\" -.IP "LOGIN_STRING (napis)" -XXX powinno zostaæ udokumentowane. -.IP "LOGIN_TIMEOUT (liczba)" -XXX powinno zostaæ udokumentowane. -.IP "LOG_OK_LOGINS (logiczna)" -XXX powinno zostaæ udokumentowane. -.IP "LOG_UNKFAIL_ENAB (logiczna)" -Je¶li posiada warto¶æ -.I yes -to nieznane nazwy u¿ytkowników bêd± równie¿ odnotowywane je¶li w³±czone jest -rejestrowanie nieudanych prób rozpoczêcia sesji. Zauwa¿, ¿e niesie to ze sob± -potencjalne zagro¿enie bezpieczeñstwa: powszechn± przyczyn± nieudanego -logowania jest zamiana nazwy u¿ytkownika i has³a, tryb ten zatem spowoduje, -¿e czêsto w rejestrach nieudanych logowañ bêd± siê odk³adaæ jawne has³a. -Je¿eli opcja ta jest wy³±czona, to nieznane nazwy u¿ytkowników bêd± pomijane -w komunikatach o nieudanych próbach logowania. -.\" -.IP "MAIL_CHECK_ENAB (logiczna)" -Je¿eli ma warto¶æ -.IR yes , -to u¿ytkownik po rozpoczêciu sesji pracy bêdzie powiadamiany o stanie swojej -skrzynki pocztowej. Informacjê zwi±zan± z tym tematem znajdziesz w opisie -MAIL_DIR. -.\" -.IP "MAIL_DIR (napis)" -Okre¶la pe³n± nazwê ¶cie¿kow± do katalogu zawieraj±cego pliki skrzynki -pocztowej u¿ytkownika. Do powy¿szej ¶cie¿ki doklejana jest nazwa u¿ytkownika, -tworz±c w ten sposób zmienn± ¶rodowiskow± MAIL - ¶cie¿kê do skrzynki -u¿ytkownika. Musi byæ zdefiniowany albo niniejszy parametr albo parametr -MAIL_FILE; je¶li nie zostan± zdefiniowane, to zostanie nadana, byæ mo¿e -niepoprawna, warto¶æ domy¶lna. Zobacz tak¿e opis MAIL_CHECK_ENAB. -.\" -.IP "MAIL_FILE (napis)" -Okre¶la nazwê pliku skrzynki pocztowej u¿ytkownika. Nazwa ta doklejana jest -na koniec nazwy katalogu domowego u¿ytkownika tworz±c zmienn± ¶rodowiskow± -MAIL - ¶cie¿kê do skrzynki u¿ytkownika. Musi byæ zdefiniowany albo niniejszy -parametr albo parametr MAIL_DIR; je¶li nie zostan± zdefiniowane, to zostanie -nadana, byæ mo¿e niepoprawna, warto¶æ domy¶lna. Zobacz tak¿e opis -MAIL_CHECK_ENAB. -.\" -.IP "MD5_CRYPT_ENAB (logiczna)" -Je¿eli ma warto¶æ -.IR yes , -to program -.B passwd -bêdzie kodowaæ nowo zmieniane has³a przy pomocy nowego algorytmu -.BR crypt (3), -opartego o MD-5. Algorytm ten pierwotnie pojawi³ siê we FreeBSD i jest te¿ -obs³ugiwany przez libc-5.4.38 oraz glibc-2.0 (lub wy¿sz±) w Linuksie. -Pozwala on na u¿ywanie hase³ d³u¿szych ni¿ 8 znaków (ograniczone przez -.BR getpass (3) -do 127 znaków), ale nie jest zgodny z tradycyjnymi implementacjami polecenia -.BR crypt (3). -.\" -.IP "MOTD_FILE (napis)" -Okre¶la listê rozdzielonych dwukropkami ¶cie¿ek do plików "wiadomo¶ci dnia" -(message of the day, MOTD). Je¶li podany plik istnieje, to jego zawarto¶æ jest -wy¶wietlana u¿ytkownikowi podczas rozpoczynania przez niego sesji pracy. -Je¿eli parametr ten jest niezdefiniowany lub wykonywane jest ciche logowanie, -to informacja ta bêdzie pomijana. -.\" -.IP "NOLOGINS_FILE (napis)" -Okre¶la pe³n± nazwê ¶cie¿kow± pliku zabraniaj±cego logowañ dla u¿ytkowników -innych ni¿ root. Je¿eli plik ten istnieje a u¿ytkownik inny ni¿ root usi³uje -siê zalogowaæ, to wy¶wietlana zostanie zawarto¶æ pliku a u¿ytkownik bêdzie -roz³±czony. Je¿eli nie podano tego parametru, to opisana funkcja bêdzie -wy³±czona. -.\" -.IP "NOLOGIN_STR (napis)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "OBSCURE_CHECKS_ENAB (logiczna)" -Je¿eli ma warto¶æ -.IR yes , -to program -.B passwd -przed akceptacj± zmiany has³a bêdzie wykonywa³ dodatkowe sprawdzenia. -Kontrole te s± do¶æ proste, a ich u¿ycie jest zalecane. -Te sprawdzenia nieoczywisto¶ci s± pomijane, je¿eli -.B passwd -uruchamiane jest przez u¿ytkownika -.IR root . -Zobacz tak¿e opis PASS_MIN_LEN. -.\" -.IP "PASS_ALWAYS_WARN (logiczna)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "PASS_CHANGE_TRIES (liczba)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "PASS_MIN_DAYS (liczba)" -Minimalna liczba dni miêdzy dozwolonymi zmianami has³a. Jakiekolwiek próby -zmiany has³a podejmowane wcze¶niej zostan± odrzucone. Je¿eli nie podano tego -parametru, to przyjêta zostanie warto¶æ zerowa. -.\" -.IP "PASS_MIN_LEN (liczba)" -Minimalna liczba znaków w akceptowalnym ha¶le. Próba przypisania has³a o -mniejszej liczbie znaków zostanie odrzucona. Warto¶æ zero wy³±cza tê -kontrolê. Je¶li nie podano parametru, to przyjêta zostanie warto¶æ zerowa. -.\" -.IP "PASS_MAX_DAYS (liczba)" -Maksymalna liczba dni, przez jak± mo¿e byæ u¿ywane has³o. Je¶li has³o jest -stanie siê starsze, to rachunek zostanie zablokowany. Je¶li nie podano, to -zostanie przyjêta bardzo du¿a warto¶æ. -.\" -.IP "PASS_MAX_LEN (liczba)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "PASS_WARN_AGE (liczba)" -Liczba dni ostrzegania przed wyga¶niêciem has³a. Warto¶æ zerowa oznacza, -¿e ostrze¿enie wyst±pi wy³±cznie w dniu utraty wa¿no¶ci has³a. Warto¶æ -ujemna oznacza brak ostrze¿eñ. Brak parametru oznacza, ¿e ostrze¿enia nie -bêd± wy¶wietlane. -.\" -.IP "PORTTIME_CHECKS_ENAB (logiczna)" -Je¶li ma warto¶æ -.IR yes , -za¶ plik -.I /etc/porttime -istnieje, to bêdzie on przegl±dany, by upewniæ siê czy u¿ytkownik mo¿e siê -w danej chwili zalogowaæ na danej linii. Patrz tak¿e podrêcznik -.BR porttime (5) -.\" -.IP "QMAIL_DIR (napis)" -Dla u¿ytkowników Qmail, parametr ten okre¶la katalog, w którym przechowywana -jest hierarchia Maildir. -Zobacz te¿ MAIL_CHECK_ENAB. -.\" -.IP "QUOTAS_ENAB (logiczna)" -Je¶li ma warto¶æ -.I yes , -wówczas dla danego u¿ytkownika "ulimit," "umask" i "niceness" bêd± -zainicjowane warto¶ciami podanymi (o ile s± podane) w polu -.I gecos -pliku -.IR passwd . -Patrz tak¿e podrêcznik -.BR passwd (5). -.\" -.IP "SU_NAME (napis)" -Przypisuje nazwê polecenia do uruchomionego "su -". Na przyk³ad, je¶li -parametr ten jest zdefiniowany jako "su", to polecenie -.BR ps (1) -poka¿e uruchomione polecenie jako "-su". Je¶li parametr ten jest -niezdefiniowany, to -.BR ps (1) -poka¿e nazwê faktycznie wykonywanej pow³oki, np. co¶ w rodzaju "-sh". -.\" -.IP "SULOG_FILE (napis)" -Pokazuje pe³n± nazwê ¶cie¿kow± pliku, w którym rejestrowane jest wykorzystanie -.BR su . -Je¶li parametr ten nie jest okre¶lony, to rejestrowanie nie jest wykonywane. -Poniewa¿ polecenie -.B su -mo¿e byæ u¿ywane podczas prób uwierzytelnienia has³a, do odnotowywania -u¿ycia -.B su -powinny byæ u¿ywane albo niniejsza opcja -albo -.IR syslog . -Zobacz te¿ opis SYSLOG_SU_ENAB. -.\" -.IP "SU_WHEEL_ONLY (logiczna)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "SYSLOG_SG_ENAB (logiczna)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "SYSLOG_SU_ENAB (logiczna)" -Je¿eli ma warto¶æ -.IR yes , -za¶ program -.B login -zosta³ skompilowany z obs³ug± -.IR syslog , -to wszelkie dzia³ania -.B su -bêd± rejestrowane za pomoc± -.IR syslog . -Zobacz te¿ opis SULOG_FILE. -.\" -.IP "TTYGROUP (napis lub liczba)" -Grupa (w³a¶cicielska) terminala inicjowana jest na nazwê b±d¼ numer tej grupy. -Jeden z dobrze znanych ataków polega na wymuszeniu sekwencji kontrolnych -terminala na linii terminalowej innego u¿ytkownika. Problemu tego mo¿na -unikn±æ wy³±czaj±c prawa zezwalaj±ce innym u¿ytkownikom na dostêp do linii -terminalowej, ale niestety zapobiega to równie¿ dzia³aniu programów takich -jak -.BR write . -Innym rozwi±zaniem jest pos³u¿enie siê tak± wersj± programu -.BR write , -która odfiltrowuje potencjalnie niebezpieczne sekwencje znaków. Nastêpnie -programowi nale¿y przyznaæ rozszerzone prawa dostêpu (SGID) dla specjalnej -grupy, ustawiæ grupê w³a¶cicieli terminala na tê grupê i nadaæ prawa dostêpu -\fI0620\fR do linii. Definicja TTYGROUP powsta³a do obs³ugi tej w³a¶nie -sytuacji. -Je¶li pozycja ta nie jest zdefiniowana, to grupa terminala inicjowana jest -na numer grupy u¿ytkownika. -Zobacz tak¿e TTYPERM. -.\" -.IP "TTYPERM (liczba)" -T± warto¶ci± inicjowane s± prawa terminala logowania. Typowymi warto¶ciami s± -\fI0622\fR zezwalaj±ce innym na pisanie do linii lub \fI0600\fR zabezpieczaj±ce -liniê przed innymi u¿ytkownikami. Je¿eli nie podano tego parametru, to prawa -dostêpu do terminala zostan± zainicjowane warto¶ci± \fI0622\fR. Zobacz te¿ -TTYGROUP. -.\" -.IP "TTYTYPE_FILE (napis)" -Okre¶la pe³n± nazwê ¶cie¿kow± pliku przypisuj±cego typy terminali do linii -terminalowych. Ka¿dy z wierszy tego pliku zawiera rozdzielone bia³ym znakiem -typ i liniê terminala. Na przyk³ad: -.nf -.sp -.ft I - vt100\0 tty01 - wyse60 tty02 - \0\0.\0\0\0 \0\0. - \0\0.\0\0\0 \0\0. - \0\0.\0\0\0 \0\0. -.ft R -.sp -.fi -Informacja ta s³u¿y do inicjowania zmiennej ¶rodowiska TERM. Wiersz -rozpoczynaj±cy siê znakiem # bêdzie traktowany jak komentarz. Je¿eli nie -podano tego parametru lub plik nie istnieje albo nie znaleziono w nim -linii terminala, to zmienna TERM nie zostanie ustawiona. -.\" -.IP "UID_MAX (liczba)" -XXX powinno zostaæ udokumentowane. -.IP "UID_MIN (liczba)" -XXX powinno zostaæ udokumentowane. -.\" -.IP "ULIMIT (d³uga liczba)" -Warto¶ci± t± inicjowany jest limit wielko¶ci pliku. Cecha ta obs³ugiwana -jest wy³±cznie w systemach posiadaj±cych -.IR ulimit , -np. System V. Je¶li nie podano, to limit wielko¶ci pliku zostanie ustalony -na pewn± wielk± warto¶æ. -.\" -.IP "UMASK (liczba)" -T± warto¶ci± inicjowana jest maska praw dostêpu. Nie podana, ustawia mask± -praw na zero. -.\" -.IP "USERDEL_CMD (napis)" -XXX powinno zostaæ udokumentowane. -.\" -.SH POWI¡ZANIA -Poni¿sze zestawienie pokazuje, które z programów wchodz±cych w sk³ad pakietu -shadow wykorzystuj± jakie parametry. -.na -.IP login 12 -CONSOLE DIALUPS_CHECK_ENAB ENV_HZ ENV_SUPATH ENV_TZ ERASECHAR FAILLOG_ENAB -FTMP_FILE HUSHLOGIN_FILE KILLCHAR LASTLOG_ENAB LOG_UNKFAIL_ENAB -MAIL_CHECK_ENAB MAIL_DIR MOTD_FILE NOLOGINS_FILE PORTTIME_CHECKS_ENAB -QUOTAS_ENAB TTYPERM TTYTYPE_FILE ULIMIT UMASK -.IP newusers 12 -PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE UMASK -.IP passwd 12 -OBSCURE_CHECKS_ENAB PASS_MIN_LEN -.IP pwconv 12 -PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE -.IP su 12 -ENV_HZ ENV_SUPATH ENV_TZ HUSHLOGIN_FILE MAIL_CHECK_ENAB MAIL_DIR -MOTD_FILE NOLOGIN_STR QUOTAS_ENAB SULOG_FILE SYSLOG_SU_ENAB -.IP sulogin 12 -ENV_HZ ENV_SUPATH ENV_TZ MAIL_DIR QUOTAS_ENAB TTYPERM -.ad -.SH B£ÊDY -Niektóre z obs³ugiwanych parametrów konfiguracyjnych pozosta³y -nieopisane w niniejszym podrêczniku. -.SH ZOBACZ TAK¯E -.BR login (1), -.BR passwd (5), -.BR faillog (5), -.BR porttime (5), -.BR faillog (8) -.SH AUTORZY -Julianne Frances Haugh (jfh@austin.ibm.com) -.br -Chip Rosenthal (chip@unicom.com) diff --git a/man/pl/logoutd.8 b/man/pl/logoutd.8 deleted file mode 100644 index d9f8f28a..00000000 --- a/man/pl/logoutd.8 +++ /dev/null @@ -1,50 +0,0 @@ -.\" {PTM/WK/1999-09-17} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH LOGOUTD 8 -.SH NAZWA -logoutd \- wymuszenie ograniczeñ czasu logowania -.SH SK£ADNIA -.B logoutd -.SH OPIS -.B logoutd -wymusza ograniczenia portów i czasów logowania podane w -.IR /etc/porttime . -.B logoutd -powinno byæ uruchamiane z \fI/etc/rc\fR. -Okresowo przegl±dany jest plik \fI/etc/utmp\fR. Sprawdzana jest ka¿da nazwa -u¿ytkownika, by móc stwierdziæ czy posiada on zezwolenie na pracê w bie¿±cym -czasie na danym porcie. -Ka¿da sesja pracy (logowania) naruszaj±ca ograniczenia zawarte -w \fI/etc/porttime\fR jest koñczona. -.SH PLIKI -.IR /etc/porttime " - zezwolenia dla logowania na portach" -.br -.IR /etc/utmp " - bie¿±ce sesje pracy" -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/mkpasswd.8 b/man/pl/mkpasswd.8 deleted file mode 100644 index 815ea6ac..00000000 --- a/man/pl/mkpasswd.8 +++ /dev/null @@ -1,80 +0,0 @@ -.\" {PTM/WK/1999-09-16} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: mkpasswd.8,v 1.1 1999/09/16 07:11:24 wojtek2 Exp $ -.\" -.TH MKPASSWD 1 -.SH NAZWA -mkpasswd \- aktualizuj pliki baz passwd i group -.SH SK£ADNIA -\fBmkpasswd\fR [\fB-fvgps\fR] \fIplik\fR -.SH OPIS -.B mkpasswd -czyta plik w formacie okre¶lonym przez flagi i konwertuje go postaci -odpowiedniego pliku bazy danych. -Wymienione pliki baz danych u¿ywane s± do poprawienia wydajno¶ci dostêpu -w systemach o du¿ej liczbie u¿ytkowników. -Pliki wynikowe otrzymaj± nazwy \fIplik\fR.dir i \fIplik\fR.pag. -.PP -Opcja \fB-f\fR powoduje, ¿e \fBmkpasswd\fR ignoruje istnienie plików -wynikowych i nadpisuje je. -Normalnie \fBmkpasswd\fR skar¿y siê na istnienie plików wynikowych -i koñczy pracê. -.PP -Opcja \fB-v\fR powoduje wy¶wietlanie informacji o ka¿dym konwertowanym -rekordzie oraz komunikatu koñcowego. -.PP -Opcja \fB-g\fR traktuje plik ¼ród³owy tak, jak gdyby by³ on w formacie -pliku \fI/etc/group\fR. -Przy po³±czeniu z opcj± \fB-s\fR u¿ywany jest format pliku \fI/etc/gshadow\fR. -.PP -Opcja \fB-p\fR traktuje plik ¼ród³owy tak, jak gdyby by³ on w formacie -pliku \fI/etc/passwd\fR. -Jest to opcja domy¶lna. -Przy po³±czeniu z opcj± \fB-s\fR u¿ywany jest format pliku \fI/etc/shadow\fR. -.SH PRZESTROGI -U¿ycie wiêcej ni¿ jednego pliku bazy ogranicza siê do systemów posiadaj±cych -bibliotekê baz danych NDBM. Mo¿e zatem nie byæ dostêpne w ka¿dym systemie. -.SH UWAGA -Poniewa¿ wiêkszo¶æ poleceñ jest w stanie aktualizowaæ pliki bazy danych -podczas dokonywania zmian, \fBmkpasswd\fR potrzebne jest jedynie -do ponownego utworzenia usuniêtego lub zepsutego pliku bazy. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/shadow " - chroniona informacja o u¿ytkownikach" -.br -.IR /etc/group " - informacja o grupach" -.br -.IR /etc/gshadow " - chroniona informacja o grupach" -.SH ZOBACZ TAK¯E -.BR passwd (5), -.BR group (5), -.BR shadow (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/newgrp.1 b/man/pl/newgrp.1 deleted file mode 100644 index eaf3b18e..00000000 --- a/man/pl/newgrp.1 +++ /dev/null @@ -1,87 +0,0 @@ -.\" {PTM/WK/1999-09-15} -.\" Copyright 1991, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: newgrp.1,v 1.2 1999/09/25 20:07:46 wojtek2 Exp $ -.\" -.TH NEWGRP 1 -.SH NAZWA -newgrp \- zmieñ identyfikator grupy -.br -sg \- wykonaj polecenie przy innym ID grupy -.SH SK£ADNIA -.BR newgrp " [" - ] -.RI [ grupa ] -.br -.BR sg " [" - ] -.RI [ grupa -.RB [ -c -.IR polecenie ]] -.SH OPIS -.B newgrp -s³u¿y do zmiany bie¿±cego identyfikatora grupy (GID) podczas sesji logowania. -Je¿eli podano opcjonaln± flagê \fB\-\fR, to ¶rodowisko u¿ytkownika zostanie -ponownie zainicjowane, tak jak wówczas, gdy u¿ytkownik siê loguje. Je¿eli nie -u¿yto flagi \fB\-\fR, to bie¿±ce ¶rodowisko, ³±cznie z bie¿±cym katalogiem -roboczym, pozostaje bez zmian. -.PP -.B newgrp -zmienia bie¿±cy faktyczny identyfikator grupy na identyfikator danej grupy -lub, je¶li nie podano nazwy grupy, na identyfikator grupy domy¶lnej, podanej -w \fI/etc/passwd\fR. -Je¿eli grupa posiada has³o, za¶ u¿ytkownik nie ma has³a b±d¼ nie jest jej -cz³onkiem, to zostanie poproszony o podanie has³a. -Je¿eli has³o grupy jest puste za¶ u¿ytkownik nie jest jej cz³onkiem, to -efektem bêdzie odmowa dostêpu. -.PP -Polecenie -.B sg -dzia³a podobnie do \fBnewgrp\fR, lecz nie zastêpuje pow³oki u¿ytkownika, -wiêc po zakoñczeniu \fBsg\fR powracasz do swego poprzedniego identyfikatora -grupy. -.B sg -przyjmuje tak¿e pojedyncze polecenie. Podane polecenie zostanie wykonane -w pow³oce Bourne'a i musi byæ umieszczone w cudzys³owach. -.\" enclosed in quotes. -.SH PRZESTROGI -Niniejsza wersja \fBnewgrp\fR posiada wiele opcji kompilacji, -z których tylko czê¶æ mo¿e byæ u¿yteczna w konkretnej instalacji. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/group " - informacja o grupach" -.SH ZOBACZ TAK¯E -.BR login (1), -.BR id (1), -.BR su (1) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij siê, ¿e korzystasz -z w³a¶ciwej dokumentacji. diff --git a/man/pl/newusers.8 b/man/pl/newusers.8 deleted file mode 100644 index 077da942..00000000 --- a/man/pl/newusers.8 +++ /dev/null @@ -1,69 +0,0 @@ -.\" {PTM/WK/1999-09-15} -.\" Copyright 1991 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: newusers.8,v 1.3 1999/09/25 20:07:47 wojtek2 Exp $ -.\" -.TH NEWUSERS 8 -.SH NAZWA -newusers - wsadowa aktualizacja i tworzenie nowych u¿ytkowników -.SH SK£ADNIA -.B newusers -.RI [ nowi_u¿ytkownicy ] -.SH OPIS -\fBnewusers\fR odczytuje plik zawieraj±cy pary: nazwa u¿ytkownika i podane -jawnym tekstem has³o. Odczytan± informacjê wykorzystuje do aktualizacji grupy -istniej±cych u¿ytkowników lub utworzenia nowych. -Ka¿dy wiersz pliku posiada taki sam format jak standardowy plik hase³ (patrz -\fBpasswd\fR(5)), z nastêpuj±cymi wyj±tkami: -.IP "\fIpw_passwd\fR" 10 -To pole zostanie zakodowane i u¿yte jako nowa warto¶æ zakodowanego has³a. -.IP "\fIpw_age\fR" -Dla chronionych hase³ (shadow) pole zostanie zignorowane je¶li u¿ytkownik ju¿ -istnieje. -.IP "\fIpw_gid\fR" -Pole to mo¿e zawieraæ nazwê istniej±cej grupy. Dany u¿ytkownik zostanie -wówczas dodany do jej cz³onków. Je¿eli podano numeryczny identyfikator -nieistniej±cej grupy, to zostanie za³o¿ona nowa grupa o tym identyfikatorze. -.IP "\fIpw_dir\fR" -Zostanie wykonane sprawdzenie czy istnieje katalog o tej nazwie. Je¿eli nie, -to bêdzie on utworzony. W³a¶cicielem zostanie ustanowiony tworzony -(lub aktualizowany) u¿ytkownik. Grupa katalogu zostanie ustawiona na grupê -u¿ytkownika. -.PP -Polecenie to przeznaczone jest do u¿ytku w du¿ych systemach, gdzie aktualizuje -siê wiele kont naraz. -.SH PRZESTROGI -.\" Po u¿yciu \fBnewusers\fR musi zostaæ wykonane polecenie \fImkpasswd\fR, -.\" aktualizuj±ce pliki DBM hase³ (DBM password files). -Plik ¼ród³owy, zawieraj±cy niezakodowane has³a, musi byæ chroniony. -.SH ZOBACZ TAK¯E -.\" mkpasswd(8), passwd(1), useradd(1) -.BR passwd (1), -.BR useradd (8) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/passwd.1 b/man/pl/passwd.1 deleted file mode 100644 index 6e69c963..00000000 --- a/man/pl/passwd.1 +++ /dev/null @@ -1,201 +0,0 @@ -.\" {PTM/WK/1999-09-20} -.\" Copyright 1989 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH PASSWD 1 -.SH NAZWA -passwd \- zmieñ has³o u¿ytkownika -.SH SK£ADNIA -.B passwd -.RB [ -f | -s ] -.RI [ nazwa ] -.br -.B passwd -.RB [ -g ] -.RB [ -r | R ] -.I grupa -.br -.B passwd -.RB [ -x -.IR max ] -.RB [ -n -.IR min ] -.RB [ -w -.IR ostrze¿ ] -.RB [ -i -.IR nieakt ] -.I nazwa -.br -.B passwd -.RB { -l | -u | -d | -S } -.I nazwa -.SH OPIS -\fBpasswd\fR zmienia has³a kont u¿ytkowników i grup. -Zwyk³y u¿ytkownik mo¿e zmieniæ wy³±cznie has³o w³asnego konta, superu¿ytkownik -mo¿e zmieniaæ has³a dowolnych kont. -Administrator grupy mo¿e zmieniæ has³o tej grupy. -\fBpasswd\fR zmienia tak¿e informacje o koncie, takie jak pe³na nazwa -u¿ytkownika, jego pow³oka zg³oszeniowa (logowania) czy daty i interwa³y dotycz±ce -wa¿no¶ci has³a. -.SS Zmiany has³a -Na pocz±tku u¿ytkownik pytany jest o stare, dotychczasowe has³o, je¶li takie -istnieje. Has³o to jest kodowane i porównywane z przechowywanym has³em. -U¿ytkownik ma tylko jedn± próbê na wprowadzenie poprawnego has³a. -Superu¿ytkownikowi zezwala siê na pominiêcie tego kroku, zatem mog± byæ -zmienione has³a, których zapomniano. -.PP -Po wprowadzeniu has³a, sprawdzana jest informacja o jego wieku, by stwierdziæ -czy u¿ytkownikowi wolno w danym czasie zmieniæ has³o. -Je¿eli nie, to \fBpasswd\fR odmawia zmiany has³a i koñczy pracê. -.PP -Nastêpnie u¿ytkownik proszony jest o nowe, zastêpuj±ce dotychczasowe, has³o -Has³o podlega sprawdzeniu jego zawi³o¶ci. Jako ogóln± wskazówk± mo¿na podaæ, -¿e has³a powinny sk³adaæ siê z 6 do 8 znaków, zawieraj±c po jednym lub wiêcej -znaków z ka¿dej z poni¿szych kategorii: -.IP "" .5i -ma³e litery alfabetu -.IP "" .5i -du¿e litery alfabetu -.IP "" .5i -cyfry od 0 do 9 -.IP "" .5i -znaki interpunkcyjne -.PP -Nale¿y uwa¿aæ, by nie u¿yæ domy¶lnych systemowych znaków akcji erase lub kill. -\fBpasswd\fR odrzuci ka¿de niedostatecznie skomplikowane has³o. -.PP -Je¶li has³o zostanie przyjête, to \fBpasswd\fR prosi o jego powtórzenie -i porównuje drugi wpis z pierwszym. -Oba wpisy musz± byæ takie same by has³o zosta³o zmienione. -.SS Has³a grup -Je¿eli pos³u¿ono siê opcj± \fB-g\fR, to zmieniane jest has³o podanej grupy. -U¿ytkownik powinien byæ albo superu¿ytkownikiem albo administratorem tej grupy. -Nie wystêpuje pytanie o bie¿±ce has³o grupy. -Do usuwania bie¿±cego has³a danej grupy s³u¿y opcja \fB-g\fR w po³±czeniu -z \fB-r\fR. Pozwala to na dostêp do grupy tylko jej cz³onkom. -Opcja \fB-R\fR w po³±czeniu z \fR-g\fR ogranicza dostêp do grupy wszystkim -u¿ytkownikom. -.SS Informacja o wa¿no¶ci konta -Superu¿ytkownik mo¿e zmieniaæ informacjê o wieku konta pos³uguj±c siê opcjami -\fB-x\fR, \fB-n\fR, \fB-w\fR oraz \fB-i\fR. -Opcja \fB-x\fR s³u¿y do ustawiania maksymalnej liczby dni, przez jakie has³o -pozostaje wa¿ne. -Po up³ywie \fImax\fR dni, has³o musi byæ zmienione. -Opcja \fB-n\fR ustawia minimaln± liczbê dni, jakie musz± up³yn±æ zanim has³o -bêdzie mog³o byæ zmienione. -U¿ytkownik nie otrzyma zezwolenia na zmianê has³a przed up³ywem \fImin\fR dni. -Opcja \fB-w\fR s³u¿y do ustawienia liczby dni przed up³ywem terminu wa¿no¶ci -has³a, przez które u¿ytkownik bêdzie otrzymywa³ ostrze¿enie mówi±ce mu, ile dni -pozosta³o do tej daty. Ostrze¿enia zaczn± pojawiaæ siê \fIostrze¿\fR dni przed -up³ywem wa¿no¶ci has³a. -Opcja \fB-i\fR (nieaktywno¶æ) s³u¿y do wy³±czania konta po up³ywie zadanej -liczby dni po wyga¶niêciu has³a. -Po up³ywie \fInieakt\fR dni od przeterminowania has³a u¿ytkownik nie mo¿e ju¿ -korzystaæ z konta. -.SS Utrzymywanie i konserwacja konta -Konta u¿ytkowników mog± byæ blokowane i odblokowywane przy pomocy flag \fB-l\fR -i \fB-u\fR. -Opcja \fB-l\fR wy³±cza konto zmieniaj±c jego has³o na warto¶æ nieodpowiadaj±c± -¿adnemu mo¿liwemu zakodowanemu has³u. -Opcja \fB-u\fR ponownie udostêpnia konto przywracaj±c uprzedni± warto¶æ has³a. -.PP -Stan konta mo¿na uzyskaæ przy pomocy opcji \fB-S\fR. -Informacja o stanie sk³ada siê z 6 czê¶ci. -Pierwsza wskazuje, czy konto u¿ytkownika jest zablokowane (L) (locked), -nie posiada has³a (NP) (no password) lub ma funkcjonalne has³o (P) (password). -Druga czê¶æ podaje datê ostatniej zmiany has³a. -nastêpne cztery to minimalny wiek, maksymalny wiek, okres ostrzegania i okres -nieaktywno¶ci has³a. -.SS Podpowiedzi dotycz±ce hase³ u¿ytkownika -Bezpieczeñstwo has³a zale¿y od si³y algorytmu koduj±cego oraz rozmiaru -klucza. -Metoda kodowania u¿ywana w Systemie \fB\s-2UNIX\s+2\fR oparta jest o algorytm -NBS DES i jest bardzo bezpieczna. -Rozmiar klucza zale¿y od losowo¶ci wybranego has³a. -.PP -Naruszenia bezpieczeñstwa hase³ wynikaj± zwykle z beztroski przy wyborze lub -przechowywaniu has³a. -Z tego powodu powiniene¶ wybraæ has³o nie wystêpuj±ce w s³owniku. Has³o nie -powinno te¿ byæ poprawn± nazw±, imieniem, nazwiskiem, numerem prawa jazdy, -dat± urodzenia czy elementem adresu. -Wszystkie z powy¿szych mog± byæ u¿yte do odgadniêcia has³a i naruszenia -bezpieczeñstwa systemu. -.PP -Has³o musi byæ ³atwe do zapamiêtania, tak by nie byæ zmuszonym do jego -zapisywania na kartce. Mo¿na to osi±gn±æ sklejaj±c ze sob± dwa krótkie s³owa, -ze wstawionym pomiêdzy nie znakiem specjalnym lub cyfr±. -Na przyk³ad, Pass%word, Lew7konia. -.PP -Inna metoda konstrukcji has³a polega na wyborze ³atwego do zapamiêtania zdania -(np. z literatury) i wyborze pierwszej b±d¼ ostatniej litery ka¿dego wyrazu. -Przyk³adem tego jest -.IP "" .5i -Ask not for whom the bell tolls. -.PP -co daje -.IP "" .5i -An4wtbt, -.PP -albo te¿ -.IP "" .5i -A czy znasz Ty, bracie m³ody -.PP -co daje -.IP "" .5i -A3zTbm. -.PP -W zasadzie mo¿esz byæ pewien, ¿e niewielu crackerów bêdzie mieæ takie has³o -w swoim s³owniku. Powiniene¶ jednak wybraæ w³asn± metodê konstrukcji hase³ -a nie polegaæ wy³±cznie na opisanych tutaj. -.SS Uwagi o has³ach grup -Has³a grup s± nieod³±cznym problemem bezpieczeñstwa, gdy¿ do ich znajomo¶ci -uprawniona jest wiêcej ni¿ jedna osoba. -Grupy s± jednak u¿ytecznym narzêdziem pozwalaj±cym na wspó³pracê miêdzy -ró¿nymi u¿ytkownikami. -.SH PRZESTROGI -Mog± nie byæ obs³ugiwane wszystkie opcje. -Sprawdzanie z³o¿ono¶ci has³a mo¿e ró¿niæ siê w ró¿nych instalacjach. Zachêca -siê u¿ytkownika do wyboru tak skomplikowanego has³a, z jakim bêdzie mu -wygodnie. -U¿ytkownicy mog± nie móc zmieniæ has³a w systemie przy w³±czonym NIS, je¶li -nie s± zalogowani do serwera NIS. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/shadow " - zakodowane has³a u¿ytkowników" -.SH ZOBACZ TAK¯E -.BR passwd (3), -.BR shadow (3), -.BR group (5), -.BR passwd (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij siê, ¿e korzystasz -z w³a¶ciwej dokumentacji. diff --git a/man/pl/passwd.5 b/man/pl/passwd.5 deleted file mode 100644 index e4bcad8e..00000000 --- a/man/pl/passwd.5 +++ /dev/null @@ -1,88 +0,0 @@ -.\" Copyright (c) 1993 Michael Haardt (u31b3hs@pool.informatik.rwth-aachen.de), Fri Apr 2 11:32:09 MET DST 1993 -.\" -.\" This is free documentation; you can redistribute it and/or -.\" modify it under the terms of the GNU General Public License as -.\" published by the Free Software Foundation; either version 2 of -.\" the License, or (at your option) any later version. -.\" -.\" The GNU General Public License's references to "object code" -.\" and "executables" are to be interpreted as the output of any -.\" document formatting or typesetting system, including -.\" intermediate and printed output. -.\" -.\" This manual is distributed in the hope that it will be useful, -.\" but WITHOUT ANY WARRANTY; without even the implied warranty of -.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -.\" GNU General Public License for more details. -.\" -.\" You should have received a copy of the GNU General Public -.\" License along with this manual; if not, write to the Free -.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, -.\" USA. -.\" -.\" Modified Sun Jul 25 10:46:28 1993 by Rik Faith (faith@cs.unc.edu) -.\" Modified Sun Aug 21 18:12:27 1994 by Rik Faith (faith@cs.unc.edu) -.\" Modified Sun Jun 18 01:53:57 1995 by Andries Brouwer (aeb@cwi.nl) -.\" -.\" Polish translation nov.1996 piotr.pogorzelski@ippt.gov.pl -.\" -.TH PASSWD 5 "24 Czerwiec 1993" "Linux" "Podrêcznik programisty linuxowego" -.SH NAZWA -passwd \- plik passwd definiuj±cy u¿ytkowników systemu -.SH OPIS -Plik -.B passwd -jest plikiem tekstowym ASCII, który zawiera listê u¿ytkowników systemu -oraz has³a jakich musz± u¿ywaæ aby otrzymaæ dostêp do systemu. -Ka¿dy powinien móc odczytaæ informacje z pliku passwd (poniewa¿ has³a -w tym pliku s± zakodowane jest to poprawne) lecz prawo do modyfikacji -pliku powinien mieæ tylko administrator. -Dodaj±c nowego u¿ytkownika nale¿y pole przeznaczone na has³o pozostawiæ puste -i u¿yæ programu \fBpasswd\fP(1). Gwiazdka lub inny pojedynczy znak w polu -has³a oznacza, ze u¿ytkownik nie mo¿e dostaæ siê do systemu przez \fBlogin\fP(1). -Je¶li g³ówny system plików jest na ram dysku (/dev/ram) nale¿y -plik passwd skopiowaæ na dyskietkê przechowuj±c± g³ówny system plików -przed zamkniêciem systemu. Trzeba równie¿ sprawdziæ prawa dostêpu do. -Je¶li trzeba utworzyæ grupê u¿ytkowników, ich identyfikatory grupy -GID musz± byæ równe oraz musi istnieæ odpowiednia pozycja w pliku -\fI/etc/group\fP, lub grupa nie bêdzie istnia³a. -.PP -Ka¿da pozycja zajmuje jeden wiersz w formacie: -.sp -login_name:has³o:UID:GID:imie_nazwisko:katalog:pow³oka -.RS -.RE -.sp -Krótki opis poszczególnych pól: -.sp -.RS -.TP 1.0in -.I login_name -nazwa u¿ytkownika w systemie (radzê u¿ywaæ ma³ych liter). -.TP -.I has³o -zakodowane has³o u¿ytkownika. -.TP -.I UID -identyfikator u¿ytkownika (liczbowo). -.TP -.I GID -identyfikator grupy (liczbowo). -.TP -.I imiê_nazwisko -Opisowa nazwa u¿ytkownika, zwykle imiê i nazwisko (wykorzystywane -przez programy pocztowe). -.TP -.I katalog -katalog macierzysty ($HOME) u¿ytkownika. -.TP -.I pow³oka -program jaki uruchomiæ po wej¶ciu u¿ytkownika do systemu. -(je¶li pusty u¿yj /bin/sh, je¶li istnieje /etc/shells i -dana pow³oka nie jest tam wymieniona, u¿ytkownik nie bêdzie móg³ -dostaæ siê do systemu wykorzystuj±c protokó³ ftp). -.RE -.SH PLIKI -.I /etc/passwd -.SH "ZOBACZ TAK¯E" -.BR passwd "(1), " login "(1), " group (5) diff --git a/man/pl/porttime.5 b/man/pl/porttime.5 deleted file mode 100644 index 83f0af6a..00000000 --- a/man/pl/porttime.5 +++ /dev/null @@ -1,81 +0,0 @@ -.\" {PTM/WK/1999-09-17} -.\" Copyright 1989 - 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH PORTTIME 5 -.SH NAZWA -porttime \- plik czasów dostêpu do portów -.SH OPIS -.I porttime -zawiera listê urz±dzeñ tty, nazw u¿ytkowników i dozwolonych czasów logowania. -.PP -Ka¿da pozycja sk³ada siê z trzech, rozdzielonych dwukropkiem, pól. -Pierwsze pole zawiera listê oddzielonych przecinkami urz±dzeñ tty lub -gwiazdkê, wskazuj±c±, ¿e pozycja ta pasuje do wszystkich urz±dzeñ tty. -Drugie pole zawiera listê oddzielonych przecinkami nazw u¿ytkowników lub -gwiazdkê, wskazuj±c±, ¿e pozycja dotyczy wszystkich u¿ytkowników. -Trzecie pole jest list± oddzielonych przecinkami dozwolonych czasów dostêpu. -.PP -Ka¿da pozycja czasu dostêpu sk³ada siê z zera lub wiêcej dni tygodnia, -skróconych do \fBSu\fR, \fBMo\fR, \fBTu\fR, \fBWe\fR, \fBTh\fR, \fBFr\fR -i \fBSa\fR, po których nastêpuje para rozdzielonych my¶lnikiem czasów. -Do okre¶lenia dni roboczych (od poniedzia³ku do pi±tku) mo¿e byæ u¿yty -skrót \fBWk\fR. Skrót \fBAl\fR oznacza ka¿dy dzieñ. Je¿eli nie podano dni -tygodnia przyjmowane jest \fBAl\fR. -.SH PRZYK£ADY -Poni¿szy wpis zezwala u¿ytkownikowi \fBjfh\fR na dostêp do ka¿dego portu -w dni robocze od godziny 9-tej do 17-tej. -.br -.sp 1 - *:jfh:Wk0900-1700 -.br -.sp 1 -Poni¿sze pozycje pozwalaj± na dostêp do konsoli (/dev/console) wy³±cznie -u¿ytkownikom \fBroot\fR i \fBoper\fR - w dowolnym czasie. -Przyk³ad ten pokazuje, ¿e plik \fI/etc/porttime\fR stanowi uporz±dkowan± -listê czasów dostêpu. Ka¿dy inny u¿ytkownik bêdzie pasowa³ do drugiej pozycji -listy, nie zezwalaj±cej na dostêp w ¿adnym czasie. -.br -.sp 1 - console:root,oper:Al0000-2400 -.br - console:*: -.br -.sp 1 -Poni¿szy wpis zezwala na dostêp do dowolnego portu u¿ytkownikowi \fBgames\fR -poza godzinami pracy. -.br -.sp 1 - *:games:Wk1700-0900,SaSu0000-2400 -.br -.sp 1 -.SH PLIKI -.IR /etc/porttime " - plik zawieraj±cy czasy dostêpu do portów" -.SH ZOBACZ TAK¯E -.BR login (1) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/pw_auth.3 b/man/pl/pw_auth.3 deleted file mode 100644 index ddebc0c1..00000000 --- a/man/pl/pw_auth.3 +++ /dev/null @@ -1,152 +0,0 @@ -.\" {PTM/WK/1999-09-15} -.\" Copyright 1992 - 1993, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: pw_auth.3,v 1.1 1999/09/16 07:11:23 wojtek2 Exp $ -.\" -.TH PWAUTH 3 -.SH NAZWA -pwauth \- procedury uwierzytelniania hase³ zdefiniowane przez administratora -.SH SK£ADNIA -.B #include -.PP -.B int pw_auth (char -.I *command, -.B char -.I *user, -.B int -.I reason, -.B char -.IB *input) ; -.SH OPIS -.B pw_auth -wywo³uje funkcje zdefiniowane przez administratora dla danego u¿ytkownika. -.PP -\fIcommand\fR jest nazw± programu uwierzytelniania (autentykacji). -Jest ona otrzymywana z informacji zawartej pliku hase³ u¿ytkowników. -Odpowiedni ³añcuch (z pola has³a) zawiera jedn± lub wiêcej, rozdzielonych -¶rednikami, nazw plików wykonywalnych. -Programy zostan± wykonane w zadanej kolejno¶ci. -Dla ka¿dej z przyczyn (reason) podanych ni¿ej podane s± argumenty wiersza -poleceñ. -.PP -\fIuser\fR jest nazw± sprawdzanego u¿ytkownika, w postaci podanej w pliku -\fI/etc/passwd\fR. -Pozycje opisuj±ce u¿ytkowników indeksowane s± nazw± u¿ytkownika. -Pozwala to na istnienie powtarzaj±cych siê identyfikatorów (UID). Ka¿da -z ró¿nych nazw u¿ytkownika o tym samym identyfikatorze mo¿e -posiadaæ inny program i informacjê autentykuj±c±. -.PP -Ka¿da z dopuszczalnych przyczyn autentykacji obs³ugiwana jest w potencjalnie -ró¿ny sposób. -Do komunikacji z u¿ytkownikiem dostêpne s± standardowe deskryptory plików -0, 1 i 2, chyba ¿e wspomniano inaczej. -Do ustalenia to¿samo¶ci u¿ytkownika wykonuj±cego ¿±danie uwierzytelnienia -mo¿e zostaæ u¿yty rzeczywisty identyfikator. -Przyczyna (\fIreason\fR) jest jedn± z -.IP \fBPW_SU\fR 1i -Wykonaj uwierzytelnienie dla bie¿±cego rzeczywistego identyfikatora u¿ytkownika -próbuj±c prze³±czyæ rzeczywisty ID na podanego u¿ytkownika. -Program uwierzytelniaj±cy zostanie wywo³any z opcj± \fB-s\fR poprzedzaj±c± -nazwê u¿ytkownika. -.IP \fBPW_LOGIN\fR 1i -Wykonaj uwierzytelnienie dla danego u¿ytkownika tworz±c now± sesjê pracy -(loginow±). Program uwierzytelniaj±cy zostanie wywo³any z opcj± \fB-l\fR, -po której wyst±pi nazwa u¿ytkownika. -.IP \fBPW_ADD\fR 1i -Utwórz nowy wpis dla danego u¿ytkownika. -Pozwala to programowi uwierzytelniania na zainicjowanie miejsca dla nowego -u¿ytkownika. -Program zostanie wywo³any z opcj± \fB-a\fR, po której wyst±pi nazwa u¿ytkownika. -.IP \fBPW_CHANGE\fR 1i -Zmieñ istniej±cy wpis dla danego u¿ytkownika. -Pozwala to na programowi uwierzytelniaj±cemu na zmianê informacji autentykuj±cej -dla istniej±cego u¿ytkownika. -Program zostanie wywo³any z opcj± \fB-c\fR poprzedzaj±c± nazwê u¿ytkownika. -.IP \fBPW_DELETE\fR 1i -Usuñ informacjê autentykuj±c± dla danego u¿ytkownika. -Pozwala programowi uwierzytelniania na odzyskanie miejsca po u¿ytkowniku, który -nie bêdzie ju¿ identyfikowany przy u¿yciu tego programu. -Program uwierzytelniania zostanie wywo³any z opcj± \fB-d\fR, -po której wyst±pi nazwa u¿ytkownika. -.IP \fBPW_TELNET\fR 1i -Wykonaj uwierzytelnianie u¿ytkownika pod³±czaj±cego siê do systemu przy pomocy -polecenia \fBtelnet\fR. -Program zostanie wywo³any z opcj± \fB-t\fR, po której wyst±pi nazwa u¿ytkownika. -.IP \fBPW_RLOGIN\fR 1i -Wykonaj uwierzytelnienie u¿ytkownika pod³±czaj±cego siê do systemu przy pomocy -polecenia \fBrlogin\fR. -Program zostanie wywo³any z opcj± \fB-r\fR, po której wyst±pi nazwa u¿ytkownika. -.IP \fBPW_FTP\fR 1i -Wykonaj uwierzytelnienie u¿ytkownika pod³±czaj±cego siê do systemu przy pomocy -polecenia \fBftp\fR. -Program uwierzytelniania zostanie wywo³any z opcj± \fB-f\fR, -po której wyst±pi nazwa u¿ytkownika. -Do komunikacji z u¿ytkownikiem NIE s± dostêpne standardowe deskryptory plików. -Deskryptor standardowego wej¶cia zostanie pod³±czony do procesu macierzystego, -za¶ pozosta³e dwa deskryptory plików dostan± pod³±czone do \fI/dev/null\fR. -Funkcja \fBpw_auth\fR bêdzie potokowaæ pojedynczy wiersz danych do programu -uwierzytelniania pos³uguj±c siê deskryptorem 0. -.IP \fBPW_REXEC\fR 1i -Wykonaj uwierzytelnienie u¿ytkownika pod³±czaj±cego siê do systemu przy pomocy -polecenia \fIrexec\fR. -Program zostanie wywo³any z opcj± \fB-x\fR, po której wyst±pi nazwa u¿ytkownika. -Do komunikacji ze zdalnym u¿ytkownikiem NIE s± dostêpne standardowe -deskryptory plików. -Deskryptor standardowego wej¶cia zostanie pod³±czony do procesu macierzystego, -za¶ pozosta³e dwa deskryptory plików dostan± pod³±czone do \fI/dev/null\fR. -Funkcja \fBpw_auth\fR bêdzie potokowaæ pojedynczy wiersz danych do programu -uwierzytelniania pos³uguj±c siê deskryptorem 0. -.PP -Ostatni argument stanowi dane autentykacji, u¿ywane przez -.B PW_FTP -oraz -.B PW_REXEC -Jest on traktowany jak pojedynczy wiersz tekstu potokowany do programu -uwierzytelniaj±cego. -Dla -.B PW_CHANGE -warto¶æ \fIinput\fR jest warto¶ci± poprzedniej nazwy u¿ytkownika, -je¶li zmieniana jest nazwa. -.SH PRZESTROGI -Funkcja ta nie tworzy faktycznej sesji. -Wskazuje jedynie, czy u¿ytkownik powinien otrzymaæ zezwolenie na jej -utworzenie. -.PP -Obecnie opcje sieciowe nie s± jeszcze przetestowane. -.SH DIAGNOSTYKA -Funkcja \fBpw_auth\fR zwraca 0 je¶li program uwierzytelniania zakoñczy³ -dzia³anie z zerowym kodem powrotu, w przeciwnym wypadku warto¶æ niezerow±. -.SH ZOBACZ TAK¯E -.BR login (1), -.BR passwd (1), -.BR su (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/pwauth.8 b/man/pl/pwauth.8 deleted file mode 100644 index e87926c5..00000000 --- a/man/pl/pwauth.8 +++ /dev/null @@ -1,65 +0,0 @@ -.\" {PTM/WK/1999-09-15} -.\" Copyright 1992, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: pwauth.8,v 1.2 1999/09/25 20:07:47 wojtek2 Exp $ -.\" -.TH PWAUTH 8 -.SH NAZWA -pwauth \- definiowane przez administratora uwierzytelnianie hase³ -.SH OPIS -Administrator systemu mo¿e zdefiniowaæ listê programów, jakie s± u¿ywane -do potwierdzenia to¿samo¶ci u¿ytkownika. -Programy te podawane s± zamiast informacji o zakodowanym ha¶le obecnej -w pliku \fI/etc/passwd\fR albo \fI/etc/shadow\fR. -Narzêdzia administruj±ce kontami u¿ytkowników sprawdzaj± pole zakodowanego -has³a i stwierdzaj± czy u¿ytkownik posiada zdefiniowany przez administratora -program uwierzytelniaj±cy (autentykuj±cy). -Funkcja \fBpw_auth\fR zostanie wywo³ana ka¿dorazowo, gdy jeden z tych -programów administracyjnych stwierdzi, ¿e zmieniany u¿ytkownik posiada -zdefiniowane programy uwierzytelniania. -.PP -Pocz±tkowy wpis tworzony jest przez polecenie \fBuseradd\fR. -Zmiany, takie jak zmiana informacji autentykuj±cej lub usuniêcie konta -u¿ytkownika, spowoduj± wywo³anie funkcji \fBpw_auth\fR. Pozwala to -na utrzymanie aktualno¶ci informacji dla ka¿dego konta. -.PP -Programy uwierzytelniaj±ce nie tworz± sesji pracy (loginowych) ani -sesji sieciowych. Kod zakoñczenia programu uwierzytelniaj±cego jest -wskazaniem czy akcja bêdzie dozwolona. -Proces wo³aj±cy musi posiadaæ odpowiednie uprawnienia do samodzielnego -utworzenia sesji pracy lub sesji sieciowej. -.SH ZOBACZ TAK¯E -.BR login (1), -.BR passwd (1), -.BR su (1), -.BR useradd (8), -.BR userdel (8), -.BR usermod (8), -.BR pw_auth (3) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/pwck.8 b/man/pl/pwck.8 deleted file mode 100644 index 2b71c610..00000000 --- a/man/pl/pwck.8 +++ /dev/null @@ -1,109 +0,0 @@ -.\" {PTM/WK/1999-09-14} -.\" Copyright 1992, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: pwck.8,v 1.3 1999/09/25 20:07:47 wojtek2 Exp $ -.\" -.TH PWCK 1 -.SH NAZWA -pwck - weryfikacja spójno¶ci plików hase³ -.SH OPIS -\fBpwck\fR [\fB-r\fR] [\fIpasswd\fR \fIshadow\fR] -.SH OPIS -\fBpwck\fR weryfikuje integralno¶æ informacji autentykacji systemowej. -W plikach \fI/etc/passwd\fR i \fI/etc/shadow\fR sprawdzane s± wszystkie -pozycje, by upewniæ siê, ¿e ka¿da z nich posiada w³a¶ciwy format -i poprawne dane w ka¿dym z pól. U¿ytkownik monitowany jest o usuniêcie -pozycji, które s± sformatowane niepoprawnie lub posiadaj± inne nie daj±ce -siê skorygowaæ b³êdy. -.P -Kontrolowane jest czy ka¿da pozycja posiada -.sp -.in +.5i -- w³a¶ciw± liczbê pól -.br -- unikaln± nazwê u¿ytkownika -.br -- poprawny identyfikator u¿ytkownika i grupy -.br -- poprawn± grupê g³ówn± -.br -- poprawny katalog domowy -.br -- poprawn± pow³okê zg³oszeniow± (startow±) -.in -.5i -.sp -.P -Kontrola w³a¶ciwej liczby pól i niepowtarzalnej nazwy u¿ytkownika jest -decyduj±ca. Je¿eli pozycja posiada b³êdn± liczbê pól, to u¿ytkownik jest -proszony o usuniêcie ca³ej pozycji (wiersza). -Je¿eli u¿ytkownik nie potwierdzi decyzji o usuniêciu, to pomijane s± wszelkie -dalsze sprawdzenia. -Pozycja z powtórzon± nazw± u¿ytkownika powoduje monit o usuniêcie, ale nadal -bêd± wykonywane pozosta³e sprawdzenia. -Wszystkie inne b³êdy daj± ostrze¿enia a u¿ytkownik jest zachêcany -do uruchomienia polecenia \fBusermod\fR, by je poprawiæ. -.P -Polecenia dzia³aj±ce na pliku \fI/etc/passwd\fR nie potrafi± zmieniaæ -uszkodzonych lub powielonych pozycji. W takich okoliczno¶ciach powinien byæ -u¿ywany \fBpwck\fR, by usun±æ nieprawid³ow± pozycjê. -.SH OPCJE -Domy¶lnie \fBpwck\fR dzia³a na plikach \fI/etc/passwd\fR oraz \fI/etc/shadow\fR. -Przy pomocy parametrów \fIpasswd\fR i \fIshadow\fR u¿ytkownik mo¿e wybraæ inne -pliki. -Dodatkowo, u¿ytkownik mo¿e wykonaæ polecenie w trybie tylko-do-odczytu, poprzez -podanie flagi \fB-r\fR. -Powoduje to, ¿e na wszystkie pytania dotycz±ce zmian zostanie, bez ingerencji -u¿ytkownika, u¿yta odpowied¼ \fBnie\fR. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/shadow " - zakodowana informacja o has³ach" -.br -.IR /etc/group " - informacja o grupach" -.SH ZOBACZ TAK¯E -.BR usermod (8), -.BR group (5), -.BR passwd (5), -.BR shadow (5) -.SH DIAGNOSTYKA -Polecenie \fBpwck\fR koñczy pracê z nastêpuj±cymi warto¶ciami kodów -zakoñczenia: -.IP 0 5 -Powodzenie -.IP 1 5 -B³±d sk³adni -.IP 2 5 -Jedna lub wiêcej z³ych pozycji pliku hase³ -.IP 3 5 -Niemo¿liwe otwarcie plików hase³ -.IP 4 5 -Niemo¿liwa blokada plików hase³ -.IP 5 5 -Niemo¿liwa aktualizacja plików hase³ -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/pwconv.8 b/man/pl/pwconv.8 deleted file mode 100644 index 0916ca28..00000000 --- a/man/pl/pwconv.8 +++ /dev/null @@ -1,66 +0,0 @@ -.\" {PTM/WK/1999-09-14} -.\" $Id: pwconv.8,v 1.1 1999/09/14 18:41:35 wojtek2 Exp $ -.TH PWCONV 8 "26 wrze¶nia 1997" -.SH NAZWA -pwconv, pwunconv, grpconv, grpunconv - konwersja dot. chronionych plików hase³ i grup -.SH SK£ADNIA -.B pwconv -.br -.B pwunconv -.br -.B grpconv -.br -.B grpunconv -.SH OPIS -Wszystkie te cztery programy dzia³aj± na zwyk³ych i dodatkowych (shadow) -plikach hase³ i grup: -.IR /etc/passwd ", " /etc/group ", " /etc/shadow " i " /etc/gshadow . - -.B pwconv -.RI "tworzy " shadow " z " passwd " i opcjonalnie istniej±cego " shadow . -.B pwunconv -.RI "tworzy " passwd " z " passwd " i " shadow " a nastêpnie usuwa " shadow . -.B grpconv -.RI "tworzy " gshadow " z " group " i opcjonalnie istniej±cego " gshadow . -.B grpunconv -.RI "tworzy " group " z " group " i " gshadow " a nastêpnie usuwa " gshadow . - -Ka¿dy z programów zdobywa niezbêdne blokady przed konwersj±. - -.BR pwconv " i " grpconv -s± podobne. Po pierwsze, z pliku dodatkowego usuwane s± pozycje, które -nie istniej± w pliku g³ównym. Nastêpnie, w pliku dodatkowym aktualizowane s± -pozycje nie posiadaj±ce 'x' jako has³a w pliku g³ównym. Dodawane s± pozycje -brakuj±ce w stosunku do pliku g³ównego. Na koniec, has³a w pliku g³ównym -zastêpowane s± przez 'x'. Programy te mog± s³u¿yæ zarówno do pocz±tkowej -konwersji jak i do aktualizacji dodatkowego pliku hase³ je¶li plik g³ówny -zmieniany by³ rêcznie. - -Przy dodawaniu nowych wpisów do -.IR /etc/shadow -.B pwconv -u¿yje warto¶ci -.BR PASS_MIN_DAYS ", " PASS_MAX_DAYS " i " PASS_WARN_AGE -z pliku -.IR /etc/login.defs . - -.RB "Podobnie, " pwunconv " oraz " grpunconv -s± zbli¿one. Has³a w pliku g³ównym aktualizowane s± na podstawie pliku -dodatkowego (shadow). Wpisy istniej±ce w pliku g³ównym, a nie posiadaj±ce -odpowiedników w dodatkowym s± pozostawiane bez zmian. Na koniec usuwany -jest plik dodatkowy. - -Czê¶æ informacji o wa¿no¶ci hase³ jest tracona przez -.BR pwunconv . -Przeprowadza on konwersjê tego, co potrafi. -.SH B£ÊDY -B³êdy w plikach hase³ czy grup (takie jak nieprawid³owe czy powtórzone -pozycje) mog± spowodowaæ zapêtlenie siê omawianych programów lub ró¿nego -rodzaju inne b³êdne zachowanie. Przed konwersj± na lub z dodatkowych plików -hase³ lub grup proszê uruchomiæ \fBpwck\fR i \fBgrpck\fR, by poprawiæ tego -rodzaju b³êdy. -.SH ZOBACZ TAK¯E -.BR login.defs (5), -.BR pwck (8), -.BR grpck (8), -.BR shadowconfig (8) diff --git a/man/pl/shadow.3 b/man/pl/shadow.3 deleted file mode 100644 index 5ad19a23..00000000 --- a/man/pl/shadow.3 +++ /dev/null @@ -1,148 +0,0 @@ -.\" {PTM/WK/1999-09-16} -.\" Copyright 1989 - 1993, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: shadow.3,v 1.2 1999/09/25 20:07:47 wojtek2 Exp $ -.\" -.TH SHADOW 3 -.SH NAZWA -shadow \- procedury zakodowanego pliku hase³ -.SH SK£ADNIA -.B #include -.PP -.B struct spwd *getspent(); -.PP -.B struct spwd *getspnam(char -.IB *name ); -.PP -.B void setspent(); -.PP -.B void endspent(); -.PP -.B struct spwd *fgetspent(FILE -.IB *fp ); -.PP -.B struct spwd *sgetspent(char -.IB *cp ); -.PP -.B int putspent(struct spwd -.I *p, -.B FILE -.IB *fp ); -.PP -.B int lckpwdf(); -.PP -.B int ulckpwdf(); -.SH OPIS -.I shadow -operuje na zawarto¶ci dodatkowego pliku hase³ (shadow) \fI/etc/shadow\fR. -Plik \fI#include\fR opisuje strukturê -.sp -struct spwd { -.in +.4i -.br -char *sp_namp; /* nazwa u¿ytkownika (login) */ -.br -char *sp_pwdp; /* zakodowane has³o */ -.br -long sp_lstchg; /* ostatnia zmiana has³a */ -.br -int sp_min; /* dni do dozwolonej zmiany */ -.br -int sp_max; /* dni przed wymagan± zmian± */ -.br -int sp_warn; /* dni ostrze¿enia o wyga¶niêciu */ -.br -int sp_inact; /* dni przed wy³±czeniem konta */ -.br -int sp_expire; /* data wa¿no¶ci konta */ -.br -int sp_flag; /* zarezerwowane do przysz³ego u¿ytku */ -.br -.in -.5i -} -.PP -Znaczenie poszczególnych pól: -.sp -sp_namp \- wska¼nik do zakoñczonej przez nul nazwy u¿ytkownika. -.br -sp_pwdp \- wska¼nik do zakoñczonego nul has³a. -.br -sp_lstchg \- dni od 1 stycznia 1970; data ostatniej zmiany has³a. -.br -sp_min \- dni, przed up³ywem których has³o nie mo¿e byæ zmienione. -.br -sp_max \- dni, po których has³o musi byæ zmienione. -.br -sp_warn \- dni przed dat± up³ywu wa¿no¶ci has³a, od których -u¿ytkownik jest ostrzegany od nadchodz±cym terminie wa¿no¶ci. -.br -sp_inact \- dni po up³yniêciu wa¿no¶ci konta, po których konto jest -uwa¿ane za nieaktywne i wy³±czane. -.br -sp_expire \- dni od 1 stycznia 1970, data gdy konto zostanie -wy³±czone. -.br -sp_flag \- zarezerwowane do przysz³ego u¿ytku. -.SH OPIS -\fBgetspent\fR, \fBgetspname\fR, \fBfgetspent\fR i \fBsgetspent\fR -zwracaj± wska¼nik do \fBstruct spwd\fR. -\fBgetspent\fR zwraca nastêpn± pozycjê w pliku, za¶ \fBfgetspent\fR -nastêpn± pozycjê z podanego strumienia. Zak³ada siê, ¿e strumieñ -ten jest plikiem o poprawnym formacie. -\fBsgetspent\fR zwraca wska¼nik do \fBstruct spwd\fR u¿ywaj±c jako -wej¶cia dostarczonego ³añcucha. -\fBgetspnam\fR wyszukuje od bie¿±cej pozycji w pliku pozycji pasuj±cej -do \fBname\fR. -.PP -\fBsetspent\fR i \fBendspent\fR mog± zostaæ u¿yte do odpowiednio, -rozpoczêcia i zakoñczenia dostêpu do chronionego pliku hase³ (shadow). -.PP -Do zapewnienia wy³±cznego dostêpu do pliku \fI/etc/shadow\fR powinny -byæ u¿ywane procedury \fBlckpwdf\fR i \fBulckpwdf\fR. -\fBlckpwdf\fR przez 15 sekund usi³uje uzyskaæ blokadê przy pomocy -\fBpw_lock\fR. -Kontynuuje próbê uzyskania drugiej blokady przy pomocy \fBspw_lock\fR -przez czas pozosta³y z pocz±tkowych 15 sekund. -Je¿eli po up³ywie 15 sekund którakolwiek z tych prób zawiedzie, -to \fBlckpwdf\fR zwraca -1. -Je¿eli uzyskano obie blokady, to zwracane jest 0. -.SH DIAGNOSTYKA -Je¿eli nie ma dalszych pozycji lub podczas przetwarzania pojawi siê b³±d, -to procedury zwracaj± NULL. -Procedury zwracaj±ce warto¶æ typu \fBint\fR zwracaj± 0 w przypadku powodzenia -a -1 dla pora¿ki. -.SH PRZESTROGI -Procedury te mog± byæ u¿ywane wy³±cznie przez superu¿ytkownika, gdy¿ dostêp -do dodatkowego, chronionego pliku hase³ jest ograniczony. -.SH PLIKI -.IR /etc/shadow " - zakodowane has³a u¿ytkowników" -.SH ZOBACZ TAK¯E -.BR getpwent (3), -.BR shadow (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pl/shadow.5 b/man/pl/shadow.5 deleted file mode 100644 index 8997bead..00000000 --- a/man/pl/shadow.5 +++ /dev/null @@ -1,92 +0,0 @@ -.\" 1999 PTM Przemek Borys -.\" Copyright 1989 - 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: shadow.5,v 1.3 1999/09/20 20:56:42 wojtek2 Exp $ -.\" -.TH SHADOW 5 -.SH NAZWA -shadow \- zakodowany plik z has³ami -.SH OPIS -.I shadow -zawiera zakodowane dane o has³ach dla kont u¿ytkowników oraz opcjonalne -informacje o wieku (aging) has³a. -Zawarte s± w nim -.IP "" .5i -Nazwa u¿ytkownika (nazwa logowania) -.IP "" .5i -Zakodowane has³o -.IP "" .5i -Dni, licz±c od 1 stycznia 1970, kiedy has³o by³o ostatni raz zmienione -.IP "" .5i -Dni przed których up³yniêciem niemo¿liwa jest zmiany has³a -.IP "" .5i -Dni, po których up³yniêciu konieczna jest zmiana has³a -.IP "" .5i -Ilo¶æ dni, jaka musi dzieliæ has³o od przedawnienia, by u¿ytkownik by³ -ostrzegany -.IP "" .5i -Ilo¶æ dni po przedawnieniu has³a, po których konto jest wy³±czane -.IP "" .5i -Dni od 1 stycznia 1970, okre¶laj±ce datê, kiedy konto jest wy³±czane -.IP "" .5i -Pole zarezerwowane -.PP -Pole has³a musi byæ wype³nione. Zakodowane has³o sk³ada siê z 13-24 znaków z -64 znakowego alfabetu a-z, A-Z, 0-9, \. i /. -Dla szczegó³ów interpretacji tego napisu, odsy³amy do \fIcrypt(3)\fR. -.PP -Data ostatniej zmiany has³a jest podawana jako liczba dni od 1 stycznia -1970. Has³a nie mog± byæ zmieniane przed up³ywem odpowiedniej ilo¶ci dni, a -musz± byæ zmieniane po up³ywie maksymalnej ilo¶ci dni. -Je¶li minimalna liczba dni jest wiêksza od maksymalnej, has³o nie mo¿e byæ -przez u¿ytkownika zmienione. -.PP -Je¶li has³o pozostaje niezmienione po up³ywie jego wa¿no¶ci, to konto jest -uwa¿ane za nieaktywne i zostanie wy³±czone po ustalonej liczbie dni -nieaktywno¶ci. Konto zostanie równie¿ wy³±czone w zadanym dniu wa¿no¶ci -konta bez wzglêdu na informacjê o terminie wa¿no¶ci has³a. -.PP -Informacja w pliku \fIshadow\fR zastêpuje wszelkie has³a lub dane o ich -wieku znajduj±ce siê w \fI/etc/passwd\fR. -.PP -Je¶li ma byæ utrzymywane bezpieczeñstwo hase³, to plik ten nie mo¿e byæ -odczytywalny dla zwyk³ych u¿ytkowników. -.SH Pliki -.IR /etc/passwd " - informacje o kontach u¿ytkowników" -.br -.IR /etc/shadow " - zakodowane has³a u¿ytkowników" -.SH ZOBACZ TAK¯E -chage(1), -login(1), -passwd(1), -su(1), -sulogin(1M), -shadow(3), -passwd(5), -pwconv(8), -pwunconv(8) diff --git a/man/pl/shadowconfig.8 b/man/pl/shadowconfig.8 deleted file mode 100644 index 2d37c1f2..00000000 --- a/man/pl/shadowconfig.8 +++ /dev/null @@ -1,27 +0,0 @@ -.\" {PTM/WK/1999-09-14} -.\" $Id: shadowconfig.8,v 1.1 1999/09/14 18:41:35 wojtek2 Exp $ -.TH SHADOWCONFIG 8 "19 kwietnia 1997" "Debian GNU/Linux" -.SH NAZWA -shadowconfig - prze³±cza ochronê hase³ i grup przez pliki shadow -.SH SK£ADNIA -.B "shadowconfig" -.IR on " | " off -.SH OPIS -.PP -.B shadowconfig on -w³±cza ochronê hase³ i grup przez dodatkowe, przes³aniane pliki (shadow); -.B shadowconfig off -wy³±cza dodatkowe pliki hase³ i grup. -.B shadowconfig -wy¶wietla komunikat o b³êdzie i koñczy pracê z niezerowym kodem je¶li -znajdzie co¶ nieprawid³owego. W takim wypadku powiniene¶ poprawiæ b³±d -.\" if it finds anything awry. -i uruchomiæ program ponownie. - -W³±czenie ochrony hase³, gdy jest ona ju¿ w³±czona lub jej wy³±czenie, -gdy jest wy³±czona jest nieszkodliwe. - -Przeczytaj -.IR /usr/doc/passwd/README.debian.gz , -gdzie znajdziesz krótkie wprowadzenie do ochrony hase³ z u¿yciem dodatkowych -plików hase³ przes³anianych (shadow passwords) i zwi±zanych tematów. diff --git a/man/pl/su.1 b/man/pl/su.1 deleted file mode 100644 index d561e67c..00000000 --- a/man/pl/su.1 +++ /dev/null @@ -1,87 +0,0 @@ -.\" {PTM/WK/1999-09-25} -.\" Copyright 1989 - 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.TH SU 1 -.SH NAZWA -su \- zmieñ ID u¿ytkownika lub stañ siê superu¿ytkownikiem -.SH SK£ADNIA -.BR su " [" - ] -.RI [ nazwa_u¿ytkownika " [" argumenty ]] -.SH OPIS -.B su -s³u¿y do stawania siê innym u¿ytkownikiem w trakcie w³asnej sesji pracy. -Wywo³anie bez parametru - nazwy u¿ytkownika, domy¶lnie oznacza dla \fBsu\fR -próbê stania siê superu¿ytkownikiem. -Opcjonalnym argumentem \fB\-\fR mo¿na pos³u¿yæ siê do zasymulowania -rzeczywistego rozpoczynania sesji pracy. Pozwala to na utworzenie ¶rodowiska -u¿ytkownika. podobnego do tego, jakie wystêpuje przy bezpo¶rednim zg³oszeniu -u¿ytkownika w systemie. -.PP -Po nazwie u¿ytkownika mog± wyst±piæ dodatkowe argumenty. Zostan± one -dostarczone pow³oce zg³oszeniowej u¿ytkownika. W szczególno¶ci, argument -\fB-c\fR spowoduje, ¿e nastêpny argument zostanie potraktowany jak polecenie -przez wiêkszo¶æ interpretatorów poleceñ. -.\" Polecenie zostanie wykonane przez pow³okê podan± w -.\" \fB$SHELL\fR, albo je¶li jej nie zdefiniowano, przez podan± w -.\" \fI/etc/passwd\fR. -.\" XXX - powy¿sze nie by³o ca³kiem poprawne. --marekm -Polecenie zostanie wykonane przez pow³okê wymienion± w \fI/etc/passwd\fR dla -docelowego u¿ytkownika. -.PP -U¿ytkownik pytany jest o odpowiednie has³o, je¶li takowe istnieje. -B³êdne has³a powoduj± komunikat o b³êdzie. Wszystkie próby, udane i nieudane, -s± rejestrowane do celów wykrywania nadu¿yæ systemu. -.PP -Do nowej pow³oki przekazywane jest bie¿±ce ¶rodowisko. -Warto¶æ \fB$PATH\fR dla zwyk³ych u¿ytkowników ustawiana jest jest na -\fB/bin:/usr/bin\fR, za¶ dla superu¿ytkownika -na \fB/sbin:/bin:/usr/sbin:/usr/bin\fR. -Mo¿na to zmieniæ przy pomocy definicji \fBENV_PATH\fR i \fBENV_SUPATH\fR -w \fI/etc/login.defs\fR. -.SH PRZESTROGI -.PP -Niniejsza wersja \fBsu\fR posiada wiele opcji kompilacji, z których tylko -czê¶æ bêdzie mieæ zastosowanie w danej instalacji. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/shadow " - zakodowane has³a i informacja o ich wa¿no¶ci" -.br -.IR $HOME/.profile " - plik startowy dla domy¶lnej pow³oki" -.SH ZOBACZ TAK¯E -.BR login (1), -.BR sh (1), -.BR suauth (5), -.BR login.defs (5) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) -.SH OD T£UMACZA -Niniejsza dokumentacja opisuje polecenie wchodz±ce w sk³ad pakietu -shadow-password. -Z uwagi na powtarzaj±ce siê nazwy poleceñ, upewnij siê, ¿e korzystasz -z w³a¶ciwej dokumentacji. diff --git a/man/pl/suauth.5 b/man/pl/suauth.5 deleted file mode 100644 index c3a54ac7..00000000 --- a/man/pl/suauth.5 +++ /dev/null @@ -1,115 +0,0 @@ -.\" {PTM/WK/1999-09-14} -.TH SUAUTH 5 "14 lutego 1996" -.UC 5 -.SH NAZWA -suauth - plik szczegó³owej kontroli su -.\" detailed su control file -.SH SK£ADNIA -.B /etc/suauth -.SH OPIS -Plik -.I /etc/suauth -przeszukiwany jest przy ka¿dym wywo³aniu polecenia su. Mo¿e on zmieniaæ -zachowanie siê polecenia su, w oparciu o -.PP -.RS -.nf -1) u¿ytkownika, na którego konto wykonywane jest su -.fi -2) u¿ytkownika wykonuj±cego polecenie su (lub dowoln± z grup, której mo¿e -on byæ cz³onkiem) -.RE -.PP -Plik sformatowany jest jak poni¿ej. Wiersze rozpoczynaj±ce siê od # s± -traktowane jak wiersze komentarza i ignorowane. -.PP -.RS -na-ID:z-ID:AKCJA -.RE -.PP -Gdzie na-ID jest albo s³owem -.B ALL -(wszyscy), albo list± nazw u¿ytkowników rozdzielonych "," albo te¿ s³owami -.B ALL EXCEPT -(wszyscy oprócz), po których nastêpuje lista nazw u¿ytkowników -rozdzielonych przecinkiem. -.PP -z-ID jest formatowane w taki sam sposób jak na-ID, z wyj±tkiem tego, ¿e -rozpoznawane jest dodatkowe s³owo -.BR GROUP. -Zapis -.B ALL EXCEPT GROUP -(wszyscy za wyj±tkiem grupy) jest równie¿ ca³kowicie poprawny. -Po s³owie -.B GROUP -powinna wyst±piæ jedna lub wiêcej rozdzielonych przecinkiem nazw grup. -Niewystarczaj±ce jest podanie g³ównego ID danej grupy - niezbêdny jest -wpis w -.BR /etc/group (5). -.PP -Akcja mo¿e byæ tylko jedn± z obecnie obs³ugiwanych opcji: -.TP 10 -.B DENY -(zakaz) Próba wykonania su jest zatrzymywana jeszcze przed pytaniem o has³o. -.TP 10 -.B NOPASS -(bez has³a) Próba wykonania su jest automatycznie pomy¶lna; brak pytania -o has³o. -.TP 10 -.B OWNPASS -(w³asne has³o) U¿ytkownik wywo³uj±cy su musi wprowadziæ w³asne has³o, by -polecenie zosta³o pomy¶lnie wykonane. Jest on powiadamiany o konieczno¶ci -podania w³asnego has³a. -.PP -Zauwa¿, ¿e istniej± trzy odrêbne pola rozdzielone dwukropkiem. Bia³e znaki -wokó³ dwukropka nie s± dozwolone. Zauwa¿ te¿, ¿e plik analizowany jest -sekwencyjnie, wiersz po wierszu, i stosowana jest pierwsza pasuj±ca regu³a -bez analizy reszty pliku. Umo¿liwia to administratorowi systemu precyzyjn± -kontrolê wed³ug w³asnych upodobañ. -.SH PRZYK£AD -.PP -.nf -# przyk³adowy plik /etc/suauth -# -# para uprzywilejowanych u¿ytkowników -# mo¿e wykonaæ su na konto root -# przy pomocy w³asnych hase³ -# -root:chris,birddog:OWNPASS -# -# Nikt inny nie mo¿e wykonaæ su na konto root, -# chyba ¿e jest cz³onkiem grupy wheel. -# Tak to robi BSD. -# -root:ALL EXCEPT GROUP wheel:DENY -# -# Byæ mo¿e terry i birddog s± kontami, -# których u¿ywa ta sama osoba. -# Mo¿na zrobiæ wzajemny dostêp -# pomiêdzy nimi bez hase³. -# -terry:birddog:NOPASS -birddog:terry:NOPASS -# -.fi -.SH PLIKI -.I /etc/suauth -.SH B£ÊDY -Mo¿e byæ sporo ukrytych. Analizator pliku jest szczególnie wra¿liwy -na b³êdy sk³adniowe. Zak³ada on, ¿e nie bêdzie zbêdnych bia³ych znaków -(za wyj±tkiem pocz±tków i koñców wierszy), a ró¿ne elementy bêd± separowane -konkretnym znakiem ogranicznika. -.SH DIAGNOSTYKA -B³±d analizy pliku zg³aszany jest przy u¿yciu -.BR syslogd (8) -jako zagro¿enie o poziomie ERR (b³±d) w podsystemie AUTH (identyfikacji -u¿ytkownika przy zg³oszeniu). -.\" as level ERR on facility AUTH. -.SH ZOBACZ TAK¯E -.BR su (1) -.SH AUTOR -.nf -Chris Evans (lady0110@sable.ox.ac.uk) -Lady Margaret Hall -Oxford University -England diff --git a/man/pl/sulogin.8 b/man/pl/sulogin.8 deleted file mode 100644 index e8aca99d..00000000 --- a/man/pl/sulogin.8 +++ /dev/null @@ -1,94 +0,0 @@ -.\" {PTM/WK/1999-09-14} -.\" Copyright 1989 - 1992, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: sulogin.8,v 1.3 1999/09/25 20:07:47 wojtek2 Exp $ -.\" -.TH SULOGIN 8 -.SH NAZWA -sulogin - login w trybie jednou¿ytkownikowym -.SH SK£ADNIA -\fBsulogin\fR [\fIurz±dzenie-tty\fR] -.SH OPIS -.B sulogin -wywo³ywane jest przez \fBinit\fR przed zezwoleniem u¿ytkownikowi -na dostêp do systemu w trybie jednou¿ytkownikowym (single user mode). -Funkcja ta mo¿e byæ dostêpna tylko w niektórych systemach, w których -odpowiednio zmieniono \fBinit\fR lub plik \fB/etc/inittab\fR posiada -pozycjê dla logowania siê w trybie jednou¿ytkownikowym. -.PP -Wy¶wietlany jest symbol zachêty -.IP "" .5i -Type control-d to proceed with normal startup, -.br -(or give root password for system maintenance): -.br -Naci¶nij control-d by kontynuowaæ zwyk³y start, -.br -(lub podaj has³o u¿ytkownika root do konserwacji systemu): -.PP -Wej¶cie i wyj¶cie bêd± obs³ugiwane przy u¿yciu standardowych deskryptorów -plików, chyba ¿e u¿yto opcjonalnego argumentu - nazwy urz±dzenia. -.PP -Je¶li u¿ytkownik wprowadzi poprawne has³o superu¿ytkownika root, -to rozpoczynana jest sesja pracy na koncie root. -Je¿eli natomiast naci¶niêto \fBEOF\fR, to system przechodzi -do wielou¿ytkownikowego trybu pracy. -.PP -Po opuszczeniu przez u¿ytkownika pow³oki przypisanej do -jednou¿ytkownikowego trybu pracy lub po naci¶niêciu \fBEOF\fR, system -wykonuje proces inicjacji wymagany do przej¶cia w tryb wielou¿ytkownikowy. -.SH OSTRZE¯ENIA -.PP -Polecenie to mo¿e byæ u¿ywane wy³±cznie wtedy, gdy \fBinit\fR zosta³ zmieniony -tak, by wywo³ywaæ \fBsulogin\fR zamiast \fB/bin/sh\fR, -albo gdy u¿ytkownik skonfigurowa³ plik \fIinittab\fR tak, by obs³ugiwa³ -logowanie w trybie jednou¿ytkownikowym. -Na przyk³ad, wiersz -.br -.sp 1 -co:s:respawn:/etc/sulogin /dev/console -.br -.sp 1 -powinien wykonaæ polecenie sulogin w trybie jednou¿ytkownikowym. -.PP -Na ile jest to mo¿liwe, tworzone jest pe³ne ¶rodowisko. -Jednak¿e w efekcie mog± nie byæ do³±czone czy zainicjowane ró¿ne -urz±dzenia, za¶ wiele poleceñ u¿ytkownika mo¿e byæ niedostêpnych lub -nie funkcjonowaæ. -.SH PLIKI -.IR /etc/passwd " - informacja o kontach u¿ytkowników" -.br -.IR /etc/shadow " - zakodowane has³a i informacja o ich wa¿no¶ci" -.br -.IR /.profile " - skrypt startowy dla pow³oki trybu jednou¿ytkownikowego" -.SH ZOBACZ TAK¯E -.BR login (1), -.BR init (8), -.BR sh (1) -.SH AUTOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/porttime.5 b/man/porttime.5 deleted file mode 100644 index 82f0ebfd..00000000 --- a/man/porttime.5 +++ /dev/null @@ -1,84 +0,0 @@ -.\" Copyright 1989 - 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: porttime.5,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH PORTTIME 5 -.SH NAME -porttime \- port access time file -.SH DESCRIPTION -.I porttime -contains a list of tty devices, user names, and permitted login times. -.PP -Each entry consists of three colon separated fields. -The first field is a comma separated list of tty devices, -or an asterisk to indicate that all tty devices are matched by this entry. -The second field is a comma separated list of user names, or an -asterisk to indicated that all user names are matched by this entry. -The third field is a comma separated list of permitted access times. -.PP -Each access time entry consists of zero or more days of the week, -abbreviated \fBSu\fR, \fBMo\fR, \fBTu\fR, \fBWe\fR, \fBTh\fR, -\fBFr\fR, and \fBSa\fR, followed by a pair of times separated by -a hyphen. -The abbreviation \fBWk\fR may be used to represent Monday thru Friday, -and \fBAl\fR may be used to indicate every day. -If no days are given, \fBAl\fR is assumed. -.SH EXAMPLES -The following entry allows access to user \fBjfh\fR on every port -during weekdays from 9am to 5pm. -.br -.sp 1 - *:jfh:Wk0900-1700 -.br -.sp 1 -The following entries allow access only to the users \fBroot\fR and -\fBoper\fR on /dev/console at any time. -This illustrates how the -\fI/etc/porttime\fR file is an ordered list of access times. -Any other user would match the second entry which does not permit -access at any time. -.br -.sp 1 - console:root,oper:Al0000-2400 -.br - console:*: -.br -.sp 1 -The following entry allows access for the user \fBgames\fR on any -port during non-working hours. -.br -.sp 1 - *:games:Wk1700-0900,SaSu0000-2400 -.br -.sp 1 -.SH FILES -/etc/porttime \- file containing port access times -.SH SEE ALSO -.BR login (1) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pwck.8 b/man/pwck.8 deleted file mode 100644 index 6e500fcb..00000000 --- a/man/pwck.8 +++ /dev/null @@ -1,107 +0,0 @@ -.\" Copyright 1992, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: pwck.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH PWCK 1 -.SH NAME -pwck \- verify integrity of password files -.SH SYNOPSIS -\fBpwck\fR [\fB-r\fR] [\fIpasswd\fR \fIshadow\fR] -.SH DESCRIPTION -\fBpwck\fR verifies the integrity of the system authentication information. -All entries in the \fI/etc/passwd\fR and \fI/etc/shadow\fR are checked to -see that the entry has the proper format and valid data in each field. -The user is prompted to delete entries that are improperly formatted or -which have other incorrectable errors. -.P -Checks are made to verify that each entry has -.sp -.in +.5i -- the correct number of fields -.br -- a unique user name -.br -- a valid user and group identifier -.br -- a valid primary group -.br -- a valid home directory -.br -- a valid login shell -.in -.5i -.sp -.P -The checks for correct number of fields and unique user name are fatal. -If the entry has the wrong number of fields, the user will be prompted to -delete the entire line. -If the user does not answer affirmatively, all further checks are bypassed. -An entry with a duplicated user name is prompted for deletion, but the -remaining checks will still be made. -All other errors are warning and the user is encouraged to run the -\fBusermod\fR command to correct the error. -.P -The commands which operate on the \fI/etc/passwd\fR file are not able to -alter corrupted or duplicated entries. -\fBpwck\fR should be used in those circumstances to remove the offending -entry. -.SH OPTIONS -By default, \fBpwck\fR operates on the files \fI/etc/passwd\fR and -\fI/etc/shadow\fR. -The user may select alternate files with the \fIpasswd\fR and \fIshadow\fR -parameters. -Additionally, the user may execute the command in read-only mode by -specifying the \fB-r\fR flag. -This causes all questions regarding changes to be answered \fBno\fR -without user intervention. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- encrypted password information -.br -/etc/group \- group information -.SH SEE ALSO -.BR usermod (8), -.BR group (5), -.BR passwd (5), -.BR shadow (5) -.SH DIAGNOSTICS -The \fBpwck\fR command exits with the following values: -.IP 0 5 -Success -.IP 1 5 -Syntax Error -.IP 2 5 -One or more bad password entries -.IP 3 5 -Cannot open password files -.IP 4 5 -Cannot lock password files -.IP 5 5 -Cannot update password files -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/pwconv.8 b/man/pwconv.8 deleted file mode 100644 index f7bafba5..00000000 --- a/man/pwconv.8 +++ /dev/null @@ -1,63 +0,0 @@ -.\" $Id: pwconv.8,v 1.8 1998/06/25 22:10:43 marekm Exp $ -.TH PWCONV 8 "26 Sep 1997" -.SH NAME -pwconv, pwunconv, grpconv, grpunconv \- convert to and from shadow passwords and groups. -.SH SYNOPSIS -.B pwconv -.br -.B pwunconv -.br -.B grpconv -.br -.B grpunconv -.SH DESCRIPTION -These four programs all operate on the normal and shadow password and -group files: -.IR /etc/passwd ", " /etc/group ", " /etc/shadow ", and " /etc/gshadow . - -.B pwconv -.RI "creates " shadow " from " passwd " and an optionally existing " shadow . -.B pwunconv -.RI "creates " passwd " from " passwd " and " shadow " and then removes " shadow . -.B grpconv -.RI "creates " gshadow " from " group " and an optionally existing " gshadow . -.B grpunconv -.RI "creates " group " from " group " and " gshadow " and then removes " gshadow . - -Each program acquires the necessary locks before conversion. - -.BR pwconv " and " grpconv -are similiar. First, entries in the shadowed file which don't exist -in the main file are removed. Then, shadowed entries which don't have -`x' as the password in the main file are updated. Any missing -shadowed entries are added. Finally, passwords in the main file are -replaced with `x'. These programs can be used for initial conversion -as well to update the shadowed file if the main file is edited by -hand. - -.B pwconv -will use the values of -.BR PASS_MIN_DAYS ", " PASS_MAX_DAYS ", and " PASS_WARN_AGE -from -.I /etc/login.defs -when adding new entries to -.IR /etc/shadow . - -.RB "Likewise, " pwunconv " and " grpunconv -are similiar. Passwords in the main file are updated from the -shadowed file. Entries which exist in the main file but not in the -shadowed file are left alone. Finally, the shadowed file is removed. - -Some password aging information is lost by -.BR pwunconv . -It will convert what it can. -.SH "BUGS" -Errors in the password or group files (such as invalid or duplicate -entries) may cause these programs to loop forever or fail in other -strange ways. Please run \fBpwck\fR and \fBgrpck\fR to correct any -such errors before converting to or from shadow passwords or groups. -.SH "SEE ALSO" -.BR login.defs (5), -.BR pwck (8), -.BR grpck (8), -.BR shadowconfig (8) diff --git a/man/shadow.3 b/man/shadow.3 deleted file mode 100644 index 0a3b74a9..00000000 --- a/man/shadow.3 +++ /dev/null @@ -1,148 +0,0 @@ -.\" Copyright 1989 - 1993, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: shadow.3,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH SHADOW 3 -.SH NAME -shadow \- encrypted password file routines -.SH SYNTAX -.B #include -.PP -.B struct spwd *getspent(); -.PP -.B struct spwd *getspnam(char -.IB *name ); -.PP -.B void setspent(); -.PP -.B void endspent(); -.PP -.B struct spwd *fgetspent(FILE -.IB *fp ); -.PP -.B struct spwd *sgetspent(char -.IB *cp ); -.PP -.B int putspent(struct spwd -.I *p, -.B FILE -.IB *fp ); -.PP -.B int lckpwdf(); -.PP -.B int ulckpwdf(); -.SH DESCRIPTION -.I shadow -manipulates the contents of the shadow password file, -\fI/etc/shadow\fR. -The structure in the \fI#include\fR file is -.sp -struct spwd { -.in +.5i -.br - char *sp_namp; /* user login name */ -.br - char *sp_pwdp; /* encrypted password */ -.br - long sp_lstchg; /* last password change */ -.br - int sp_min; /* days until change allowed. */ -.br - int sp_max; /* days before change required */ -.br - int sp_warn; /* days warning for expiration */ -.br - int sp_inact; /* days before account inactive */ -.br - int sp_expire; /* date when account expires */ -.br - int sp_flag; /* reserved for future use */ -.br -.in -.5i -} -.PP -The meanings of each field are -.sp -sp_namp \- pointer to null-terminated user name. -.br -sp_pwdp \- pointer to null-terminated password. -.br -sp_lstchg \- days since Jan 1, 1970 password was last changed. -.br -sp_min \- days before which password may not be changed. -.br -sp_max \- days after which password must be changed. -.br -sp_warn \- days before password is to expire that user is warned -of pending password expiration. -.br -sp_inact \- days after password expires that account is considered -inactive and disabled. -.br -sp_expire \- days since Jan 1, 1970 when account will be disabled. -.br -sp_flag \- reserved for future use. -.SH DESCRIPTION -\fBgetspent\fR, \fBgetspname\fR, \fBfgetspent\fR, and \fBsgetspent\fR -each return a pointer to a \fBstruct spwd\fR. -\fBgetspent\fR returns the -next entry from the file, and \fBfgetspent\fR returns the next -entry from the given stream, which is assumed to be a file of -the proper format. -\fBsgetspent\fR returns a pointer to a \fBstruct spwd\fR using the -provided string as input. -\fBgetspnam\fR searches from the current position in the file for -an entry matching \fBname\fR. -.PP -\fBsetspent\fR and \fBendspent\fR may be used to begin and end, -respectively, access to the shadow password file. -.PP -The \fBlckpwdf\fR and \fBulckpwdf\fR routines should be used to -insure exclusive access to the \fI/etc/shadow\fR file. -\fBlckpwdf\fR attempts to acquire a lock using \fBpw_lock\fR for -up to 15 seconds. -It continues by attempting to acquire a second lock using \fBspw_lock\fR -for the remainder of the initial 15 seconds. -Should either attempt fail after a total of 15 seconds, \fBlckpwdf\fR -returns -1. -When both locks are acquired 0 is returned. -.SH DIAGNOSTICS -Routines return NULL if no more entries are available or if an -error occurs during processing. -Routines which have \fBint\fR as the return value return 0 for -success and -1 for failure. -.SH CAVEATS -These routines may only be used by the super user as access to -the shadow password file is restricted. -.SH FILES -/etc/shadow \- encrypted user passwords -.SH SEE ALSO -.BR getpwent (3), -.BR shadow (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/shadow.5 b/man/shadow.5 deleted file mode 100644 index bd3b09a3..00000000 --- a/man/shadow.5 +++ /dev/null @@ -1,99 +0,0 @@ -.\" Copyright 1989 - 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: shadow.5,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH SHADOW 5 -.SH NAME -shadow \- encrypted password file -.SH DESCRIPTION -.I shadow -contains the encrypted password information for user's accounts -and optional the password aging information. -Included is -.IP "" .5i -Login name -.IP "" .5i -Encrypted password -.IP "" .5i -Days since Jan 1, 1970 that password was last changed -.IP "" .5i -Days before password may be changed -.IP "" .5i -Days after which password must be changed -.IP "" .5i -Days before password is to expire that user is warned -.IP "" .5i -Days after password expires that account is disabled -.IP "" .5i -Days since Jan 1, 1970 that account is disabled -.IP "" .5i -A reserved field -.PP -The password field must be filled. -The encryped password consists of 13 to 24 characters from the -64 character alphabet -a thru z, A thru Z, 0 thru 9, \. and /. -Refer to \fBcrypt\fR(3) for details on how this string is -interpreted. -.PP -The date of the last password change is given as the number -of days since Jan 1, 1970. -The password may not be changed again until the proper number -of days have passed, and must be changed after the maximum -number of days. -If the minimum number of days required is greater than the -maximum number of day allowed, this password may not be -changed by the user. -.PP -An account is considered to be inactive and is disabled if -the password is not changed within the specified number of -days after the password expires. -An account will also be disabled on the specified day -regardless of other password expiration information. -.PP -This information supercedes any password or password age -information present in \fI/etc/passwd\fR. -.PP -This file must not be readable by regular users if password -security is to be maintained. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- encrypted user passwords -.SH SEE ALSO -.BR chage (1), -.BR login (1), -.BR passwd (1), -.BR su (1), -.BR sulogin (8), -.BR shadow (3), -.BR passwd (5), -.BR pwconv (8), -.BR pwunconv (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/shadowconfig.8 b/man/shadowconfig.8 deleted file mode 100644 index ac6af945..00000000 --- a/man/shadowconfig.8 +++ /dev/null @@ -1,24 +0,0 @@ -.\" $Id: shadowconfig.8,v 1.2 1997/12/14 20:07:22 marekm Exp $ -.TH SHADOWCONFIG 8 "19 Apr 1997" "Debian GNU/Linux" -.SH NAME -shadowconfig \- toggle shadow passwords on and off -.SH SYNOPSIS -.B "shadowconfig" -.IR on " | " off -.SH DESCRIPTION -.PP -.B shadowconfig on -will turn shadow passwords on; -.B shadowconfig off -will turn shadow passwords off. -.B shadowconfig -will print an error message and exit with a nonzero code if it finds -anything awry. If that happens, you should correct the error and run -it again. - -Turning shadow passwords on when they are already on, or off when they -are already off, is harmless. - -Read -.I /usr/doc/passwd/README.debian.gz -for a brief introduction to shadow passwords and related features. diff --git a/man/su.1 b/man/su.1 deleted file mode 100644 index 69fe12c4..00000000 --- a/man/su.1 +++ /dev/null @@ -1,87 +0,0 @@ -.\" Copyright 1989 - 1990, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: su.1,v 1.6 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH SU 1 -.SH NAME -su \- Change user ID or become super-user -.SH SYNOPSIS -.BR su " [" - ] -.RI [ username " [" args ]] -.SH DESCRIPTION -.B su -is used to become another user during a login session. -Invoked without a username, \fBsu\fR defaults to becoming -the super user. -The optional argument \fB\-\fR may be used to provide an -environment similiar to what the user would expect had -the user logged in directly. -.PP -Additional arguments may be provided after the username, -in which case they are supplied to the user\'s login shell. -In particular, an argument of \fB-c\fR will cause the -next argument to be treated as a command by most command -interpreters. -.\" The command will be executed under the shell specified by -.\" \fB$SHELL\fR, or if undefined, by the one specified in -.\" \fI/etc/passwd\fR. -.\" XXX - the above was not quite correct. --marekm -The command will be executed by the shell specified in -\fI/etc/passwd\fR for the target user. -.PP -The user will be prompted for a password, if appropriate. -Invalid passwords will produce an error message. -All attempts, both valid and invalid, are logged to detect -abuses of the system. -.PP -The current environment is passed to the new shell. The value of -\fB$PATH\fR is reset to \fB/bin:/usr/bin\fR for normal users, or -\fB/sbin:/bin:/usr/sbin:/usr/bin\fR for the super user. This may be -changed with the \fBENV_PATH\fR and \fBENV_SUPATH\fR definitions in -\fI/etc/login.defs\fR. -.PP -A subsystem login is indicated by the presense of a "*" as the first -character of the login shell. The given home directory will be used as -the root of a new filesystem which the user is actually logged into. -.SH CAVEATS -.PP -This version of \fBsu\fR has many compilation options, only some of which -may be in use at any particular site. -.SH Files -/etc/passwd \- user account information -.br -/etc/shadow \- encrypted passwords and age information -.br -$HOME/.profile \- initialization script for default shell -.SH SEE ALSO -.BR login (1), -.BR sh (1), -.BR suauth (5), -.BR login.defs (5) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/suauth.5 b/man/suauth.5 deleted file mode 100644 index a3aa1581..00000000 --- a/man/suauth.5 +++ /dev/null @@ -1,112 +0,0 @@ -.TH SUAUTH 5 "Feb 14, 1996" -.UC 5 -.SH NAME -suauth \- Detailed su control file -.SH SYNOPSIS -.B /etc/suauth -.SH DESCRIPTION -The file -.I /etc/suauth -is referenced whenever the su command is called. It can change the -behaviour of the su command, based upon -.PP -.RS -.nf -1) the user su is targetting -.fi -2) the user executing the su command (or any groups he might be -a member of) -.RE -.PP -The file is formatted like this, with lines starting with a # -being treated as comment lines and ignored; -.PP -.RS -to-id:from-id:ACTION -.RE -.PP -Where to-id is either the word -.BR ALL , -a list of usernames -delimited by "," or the words -.B ALL EXCEPT -followed by a list -of usernames delimted by "," -.PP -from-id is formatted the same as to-id except the extra word -.B GROUP -is recognised. -.B ALL EXCEPT GROUP -is perfectly valid too. -Following -.B GROUP -appears one or more group names, delimited by -",". It is not sufficient to have primary group id of the -relevant group, an entry in -.BR /etc/group (5) -is neccessary. -.PP -Action can be one only of the following currently supported -options. -.TP 20 -.B DENY -The attempt to su is stopped before a password is even asked for. -.TP 20 -.B NOPASS -The attempt to su is automatically successful; no password is -asked for. -.TP 20 -.B OWNPASS -For the su command to be successful, the user must enter -his or her own password. They are told this. -.PP -Note there are three separate fields delimted by a colon. No -whitespace must surround this colon. Also note that the file -is examined sequentially line by line, and the first applicable -rule is used without examining the file further. This makes it -possible for a system administrator to exercise as fine control -as he or she wishes. -.SH EXAMPLE -.PP -.nf -# sample /etc/suauth file -# -# A couple of privileged usernames may -# su to root with their own password. -# -root:chris,birddog:OWNPASS -# -# Anyone else may not su to root unless in -# group wheel. This is how BSD does things. -# -root:ALL EXCEPT GROUP wheel:DENY -# -# Perhaps terry and birddog are accounts -# owned by the same person. -# Access can be arranged between them -# with no password. -# -terry:birddog:NOPASS -birddog:terry:NOPASS -# -.fi -.SH FILES -/etc/suauth -.SH BUGS -There could be plenty lurking. The file parser is particularly -unforgiving about syntax errors, expecting no spurious whitespace -(apart from beginning and end of lines), and a specific token -delimiting different things. -.SH DIAGNOSTICS -An error parsing the file is reported using -.BR syslogd (8) -as level ERR on -facility AUTH. -.SH SEE ALSO -.BR su (1) -.SH AUTHOR -.nf -Chris Evans (lady0110@sable.ox.ac.uk) -Lady Margaret Hall -Oxford University -England diff --git a/man/useradd.8 b/man/useradd.8 deleted file mode 100644 index aa84b755..00000000 --- a/man/useradd.8 +++ /dev/null @@ -1,197 +0,0 @@ -.\" Copyright 1991 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: useradd.8,v 1.7 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH USERADD 8 -.SH NAME -useradd \- Create a new user or update default new user information -.SH SYNOPSIS -.TP 8 -.B useradd -.\" .RB [ -A -.\" .RI { method | \fBDEFAULT\fR "},... ]" -.RB [ -c -.IR comment ] -.RB [ -d -.IR home_dir ] -.br -.RB [ -e -.IR expire_date ] -.RB [ -f -.IR inactive_time ] -.br -.RB [ -g -.IR initial_group ] -.RB [ -G -.IR group [,...]] -.br -.RB [ -m " [" -k -.IR skeleton_dir ]] -.RB [ -p -.IR passwd ] -.br -.RB [ -s -.IR shell ] -.RB [ -u -.IR uid " [" -.BR -o ]] -.I login -.TP 8 -.B useradd -\fB-D\fR -[\fB-g\fI default_group\fR] -[\fB-b\fI default_home\fR] -.br -[\fB-f\fI default_inactive\fR] -[\fB-e\fI default_expire_date\fR] -.br -[\fB-s\fI default_shell\fR] -.SH DESCRIPTION -.SS Creating New Users -When invoked without the \fB-D\fR option, the \fBuseradd\fR command -creates a new user account using the values specified on the -command line and the default values from the system. -The new user account will be entered into the system files as needed, -the home directory will be created, and initial files copied, depending -on the command line options. -The options which apply to the \fBuseradd\fR command are -.\" .IP "\fB-A {\fImethod\fR|\fBDEFAULT\fR},..." -.\" The value of the user's authentication method. -.\" The authentication method is the name of a program which is responsible -.\" for validating the user's identity. -.\" The string \fBDEFAULT\fR may be used to change the user's authentication -.\" method to the standard system password method. -.\" This is a comma-separated list of program names. -.\" It may include \fBDEFAULT\fR exactly once. -.IP "\fB-c \fIcomment\fR" -The new user's password file comment field. -.IP "\fB-d \fIhome_dir\fR" -The new user will be created using \fIhome_dir\fR as the value for -the user's login directory. -The default is to append the \fIlogin\fR name to \fIdefault_home\fR -and use that as the login directory name. -.IP "\fB-e \fIexpire_date\fR" -The date on which the user account will be disabled. -The date is specified in the format \fIYYYY-MM-DD\fR. -.IP "\fB-f \fIinactive_days\fR" -The number of days after a password expires until the account -is permanently disabled. -A value of 0 disables the account as soon as the password has -expired, and a value of -1 disables the feature. -The default value is -1. -.IP "\fB-g \fIinitial_group\fR" -The group name or number of the user's initial login group. -The group name must exist. A group number must refer to an -already existing group. -The default group number is 1. -.IP "\fB-G \fIgroup,[...]\fR" -A list of supplementary groups which the user is also a member -of. -Each group is separated from the next by a comma, with no -intervening whitespace. -The groups are subject to the same restrictions as the group -given with the \fB-g\fR option. -The default is for the user to belong only to the initial group. -.IP \fB-m\fR -The user's home directory will be created if it does not exist. -The files contained in \fIskeleton_dir\fR will be copied to the -home directory if the \fB-k\fR option is used, otherwise the -files contained in \fI/etc/skel\fR will be used instead. -Any directories contained in \fIskeleton_dir\fR or \fI/etc/skel\fR -will be created in the user's home directory as well. -The \fB-k\fR option is only valid in conjunction with the \fB-m\fR -option. -The default is to not create the directory and to not copy any -files. -.IP "\fB-p \fIpasswd\fR" -The encrypted password, as returned by \fBcrypt\fR(3). -The default is to disable the account. -.IP "\fB-s \fIshell\fR" -The name of the user's login shell. -The default is to leave this field blank, which causes the system -to select the default login shell. -.IP "\fB-u \fIuid\fR" -The numerical value of the user's ID. -This value must be unique, unless the \fI-o\fR option is used. -The value must be non-negative. -The default is to use the smallest ID value greater than 99 and -greater than every other user. -Values between 0 and 99 are typically reserved for system accounts. -.SS Changing the default values -When invoked with the \fB-D\fR option, \fBuseradd\fR will either -display the current default values, or update the default values -from the command line. -The valid options are -.IP "\fB-b \fIdefault_home\fR" -The initial path prefix for a new user's home directory. -The user's name will be affixed to the end of \fIdefault_home\fR -to create the new directory name if the \fB-d\fI option is not -used when creating a new account. -.IP "\fB-e \fIdefault_expire_date\fR" -The date on which the user account is disabled. -.IP "\fB-f \fIdefault_inactive\fR" -The number of days after a password has expired before the -account will be disabled. -.IP "\fB-g \fIdefault_group\fR" -The group name or ID for a new user's initial group. -The named group must exist, and a numerical group ID must have -an existing entry . -.IP "\fB-s \fIdefault_shell\fR" -The name of the new user's login shell. -The named program will be used for all future new user accounts. -.PP -If no options are specified, \fBuseradd\fR displays the current -default values. -.SH NOTES -The system administrator is responsible for placing the default -user files in the \fI/etc/skel\fR directory. -.SH CAVEATS -You may not add a user to an NIS group. -This must be performed on the NIS server. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- secure user account information -.br -/etc/group \- group information -.br -/etc/default/useradd \- default information -.br -/etc/skel \- directory containing default files -.SH SEE ALSO -.BR chfn (1), -.BR chsh (1), -.BR crypt (3), -.BR groupadd (8), -.BR groupdel (8), -.BR groupmod (8), -.BR passwd (1), -.BR userdel (8), -.BR usermod (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/userdel.8 b/man/userdel.8 deleted file mode 100644 index 9a26713f..00000000 --- a/man/userdel.8 +++ /dev/null @@ -1,69 +0,0 @@ -.\" Copyright 1991 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: userdel.8,v 1.5 2000/08/26 18:27:17 marekm Exp $ -.\" -.TH USERDEL 8 -.SH NAME -userdel \- Delete a user account and related files -.SH SYNOPSIS -.B userdel -[\fB-r\fR] -.I login -.SH DESCRIPTION -The \fBuserdel\fR command modifies the system account files, deleting -all entries that refer to \fIlogin\fR. -The named user must exist. -.IP \fB-r\fR -Files in the user's home directory will be removed along with the -home directory itself and the user's mail spool. -Files located in other file systems will have to be searched for -and deleted manually. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- secure user account information -.br -/etc/group \- group information -.SH CAVEATS -\fBuserdel\fR will not allow you to remove an account if the user -is currently logged in. -You must kill any running processes which belong to an account that -you are deleting. -You may not remove any NIS attributes on an NIS client. -This must be performed on the NIS server. -.SH SEE ALSO -.BR chfn (1), -.BR chsh (1), -.BR groupadd (8), -.BR groupdel (8), -.BR groupmod (8), -.BR passwd (1), -.BR useradd (8), -.BR usermod (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/usermod.8 b/man/usermod.8 deleted file mode 100644 index 152514fd..00000000 --- a/man/usermod.8 +++ /dev/null @@ -1,162 +0,0 @@ -.\" Copyright 1991 - 1994, Julianne Frances Haugh -.\" All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" 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. -.\" -.\" $Id: usermod.8,v 1.8 2000/09/02 18:40:43 marekm Exp $ -.\" -.TH USERMOD 8 -.SH NAME -usermod \- Modify a user account -.SH SYNOPSIS -.TP 8 -.B usermod -.\" .RB [ -A -.\" .RI { method | \fBDEFAULT\fR "},... ]" -.RB [ -c -.IR comment ] -.RB [ -d -.IR home_dir " [" -.BR -m ]] -.br -.RB [ -e -.IR expire_date ] -.RB [ -f -.IR inactive_time ] -.br -.RB [ -g -.IR initial_group ] -.RB [ -G -.IR group [,...]] -.br -.RB [ -l -.IR login_name ] -.RB [ -p -.IR passwd ] -.br -.RB [ -s -.IR shell ] -.RB [ -u -.IR uid " [" -.BR -o ]] -.RB [ -L | -U ] -.I login -.SH DESCRIPTION -The \fBusermod\fR command modifies the system account files to reflect -the changes that are specified on the command line. -The options which apply to the \fBusermod\fR command are -.\" .IP "\fB-A \fImethod\fR|\fBDEFAULT\fR" -.\" The new value of the user's authentication method. -.\" The authentication method is the name of a program which is responsible -.\" for validating the user's identity. -.\" The string \fBDEFAULT\fR may be used to change the user's authentication -.\" method to the standard system password method. -.IP "\fB-c \fIcomment\fR" -The new value of the user's password file comment field. -It is normally modified using the \fBchfn\fR(1) utility. -.IP "\fB-d \fIhome_dir\fR" -The user's new login directory. -If the \fB-m\fR option is given the contents of the current home directory -will be moved to the new home directory, which is created if it does not -already exist. -.IP "\fB-e \fIexpire_date\fR" -The date on which the user account will be disabled. -The date is specified in the format \fIYYYY-MM-DD\fR. -.IP "\fB-f \fIinactive_days\fR" -The number of days after a password expires until the account -is permanently disabled. -A value of 0 disables the account as soon as the password has -expired, and a value of -1 disables the feature. -The default value is -1. -.IP "\fB-g \fIinitial_group\fR" -The group name or number of the user's new initial login group. -The group name must exist. A group number must refer to an -already existing group. -The default group number is 1. -.IP "\fB-G \fIgroup,[...]\fR" -A list of supplementary groups which the user is also a member -of. -Each group is separated from the next by a comma, with no -intervening whitespace. -The groups are subject to the same restrictions as the group -given with the \fB-g\fR option. -If the user is currently a member of a group which is not listed, -the user will be removed from the group -.IP "\fB-l \fIlogin_name\fR" -The name of the user will be changed from \fIlogin\fR to -\fIlogin_name\fR. -Nothing else is changed. -In particular, the user's home directory name should probably -be changed to reflect the new login name. -.IP "\fB-p \fIpasswd\fR" -The encrypted password, as returned by \fBcrypt\fR(3). -.IP "\fB-s \fIshell\fR" -The name of the user's new login shell. -Setting this field to blank causes the system -to select the default login shell. -.IP "\fB-u \fIuid\fR" -The numerical value of the user's ID. -This value must be unique, unless the \fI-o\fR option is used. -The value must be non-negative. -Values between 0 and 99 are typically reserved for system accounts. -Any files which the user owns and which are located in the directory -tree rooted at the user's home directory will have the file user ID -changed automatically. -Files outside of the user's home directory must be altered manually. -.IP "\fB-L\fR" -Lock a user's password. -This puts a '!' in front of the encrypted password, effectively disabling -the password. You can't use this option with \fI-p\fR or \fI-U\fR. -.IP "\fB-U\fR" -Unlock a user's password. -This removes the '!' in front of the encrypted password. -You can't use this option with \fI-p\fR or \fI-L\fR. -.SH CAVEATS -\fBusermod\fR will not allow you to change the name of a user who is -logged in. -You must make certain that the named user is not executing any processes -when this command is being executed if the user's numerical user ID is -being changed. -You must change the owner of any crontab files manually. -You must change the owner of any at jobs manually. -You must make any changes involving NIS on the NIS server. -.SH FILES -/etc/passwd \- user account information -.br -/etc/shadow \- secure user account information -.br -/etc/group \- group information -.SH SEE ALSO -.BR chfn (1), -.BR chsh (1), -.BR crypt (3), -.BR groupadd (8), -.BR groupdel (8), -.BR groupmod (8), -.BR passwd (1), -.BR useradd (8), -.BR userdel (8) -.SH AUTHOR -Julianne Frances Haugh (jfh@austin.ibm.com) diff --git a/man/vipw.8 b/man/vipw.8 deleted file mode 100644 index c8d3b3d4..00000000 --- a/man/vipw.8 +++ /dev/null @@ -1,29 +0,0 @@ -.\" $Id: vipw.8,v 1.2 1997/12/14 20:07:22 marekm Exp $ -.TH VIPW 8 "26 Sep 1997" -.SH NAME -vipw, vigr \- edit the password, group, shadow-password, or shadow-group file. -.SH SYNOPSIS -.BR vipw " [-s]" -.br -.BR vigr " [-s]" -.SH DESCRIPTION -.BR vipw " and " vigr -will edit the files -.IR /etc/passwd " and " /etc/group ", respectively." -With the -.B -s -flag, they will edit the shadow versions of those files, -.IR /etc/shadow " and " /etc/gshadow ", respectively. -The programs will set the appropriate locks to prevent file corruption. - -When looking for an editor, the programs will first try the -environment variable -.BR VISUAL , -then the environment variable -.BR EDITOR , -and finally the default editor, -.BR vi . -.SH "SEE ALSO" -.BR passwd (5), -.BR group (5), -.BR shadow (5) diff --git a/po/Makefile.in.in b/po/Makefile.in.in index 111b40fc..40a481f2 100644 --- a/po/Makefile.in.in +++ b/po/Makefile.in.in @@ -111,9 +111,9 @@ install-data: install-data-@USE_NLS@ install-data-no: all install-data-yes: all if test -r "$(MKINSTALLDIRS)"; then \ - $(MKINSTALLDIRS) $(datadir); \ + $(MKINSTALLDIRS) $(DESTDIR)$(datadir); \ else \ - $(SHELL) $(top_srcdir)/mkinstalldirs $(datadir); \ + $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(datadir); \ fi @catalogs='$(CATALOGS)'; \ for cat in $$catalogs; do \ @@ -123,7 +123,7 @@ install-data-yes: all *) destdir=$(localedir);; \ esac; \ lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ - dir=$$destdir/$$lang/LC_MESSAGES; \ + dir=$(DESTDIR)$$destdir/$$lang/LC_MESSAGES; \ if test -r "$(MKINSTALLDIRS)"; then \ $(MKINSTALLDIRS) $$dir; \ else \ @@ -153,12 +153,12 @@ install-data-yes: all done if test "$(PACKAGE)" = "gettext"; then \ if test -r "$(MKINSTALLDIRS)"; then \ - $(MKINSTALLDIRS) $(gettextsrcdir); \ + $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \ else \ - $(SHELL) $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ + $(SHELL) $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \ fi; \ $(INSTALL_DATA) $(srcdir)/Makefile.in.in \ - $(gettextsrcdir)/Makefile.in.in; \ + $(DESTDIR)$(gettextsrcdir)/Makefile.in.in; \ else \ : ; \ fi diff --git a/po/cat-id-tbl.c b/po/cat-id-tbl.c index 314d8ca0..8be2090f 100644 --- a/po/cat-id-tbl.c +++ b/po/cat-id-tbl.c @@ -74,431 +74,435 @@ Enter the new value, or press return for the default\n\ {"Password Expires:\t", 61}, {"Password Inactive:\t", 62}, {"Account Expires:\t", 63}, - {"%s: do not include \"l\" with other flags\n", 64}, - {"%s: permission denied\n", 65}, - {"%s: can't lock password file\n", 66}, - {"%s: can't open password file\n", 67}, - {"%s: unknown user: %s\n", 68}, - {"%s: can't lock shadow password file\n", 69}, - {"%s: can't open shadow password file\n", 70}, - {"Changing the aging information for %s\n", 71}, - {"%s: error changing fields\n", 72}, - {"%s: can't update password file\n", 73}, - {"%s: can't update shadow password file\n", 74}, - {"Error updating the DBM password entry.\n", 75}, - {"%s: can't rewrite shadow password file\n", 76}, - {"%s: can't rewrite password file\n", 77}, - {"%s: no aging information present\n", 78}, + {"%s: PAM authentication failed\n", 64}, + {"%s: do not include \"l\" with other flags\n", 65}, + {"%s: permission denied\n", 66}, + {"%s: can't lock password file\n", 67}, + {"%s: can't open password file\n", 68}, + {"%s: unknown user: %s\n", 69}, + {"%s: can't lock shadow password file\n", 70}, + {"%s: can't open shadow password file\n", 71}, + {"Changing the aging information for %s\n", 72}, + {"%s: error changing fields\n", 73}, + {"%s: can't update password file\n", 74}, + {"%s: can't update shadow password file\n", 75}, + {"Error updating the DBM password entry.\n", 76}, + {"%s: can't rewrite shadow password file\n", 77}, + {"%s: can't rewrite password file\n", 78}, + {"%s: PAM chauthtok failed\n", 79}, + {"%s: no aging information present\n", 80}, {"\ Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ]\n\ -\t[ -h home_ph ] [ -o other ] [ user ]\n", 79}, +\t[ -h home_ph ] [ -o other ] [ user ]\n", 81}, {"\ -Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ] [ -h home_ph ]\n", 80}, - {"Enter the new value, or press return for the default\n", 81}, - {"Full Name", 82}, - {"\tFull Name: %s\n", 83}, - {"Room Number", 84}, - {"\tRoom Number: %s\n", 85}, - {"Work Phone", 86}, - {"\tWork Phone: %s\n", 87}, - {"Home Phone", 88}, - {"\tHome Phone: %s\n", 89}, - {"Other", 90}, - {"%s: Permission denied.\n", 91}, - {"%s: Unknown user %s\n", 92}, - {"%s: Cannot determine your user name.\n", 93}, - {"%s: cannot change user `%s' on NIS client.\n", 94}, - {"%s: `%s' is the NIS master for this client.\n", 95}, - {"Changing the user information for %s\n", 96}, - {"%s: invalid name: \"%s\"\n", 97}, - {"%s: invalid room number: \"%s\"\n", 98}, - {"%s: invalid work phone: \"%s\"\n", 99}, - {"%s: invalid home phone: \"%s\"\n", 100}, - {"%s: \"%s\" contains illegal characters\n", 101}, - {"%s: fields too long\n", 102}, - {"Cannot change ID to root.\n", 103}, - {"Cannot lock the password file; try again later.\n", 104}, - {"Cannot open the password file.\n", 105}, - {"%s: %s not found in /etc/passwd\n", 106}, - {"Error updating the password entry.\n", 107}, - {"Cannot commit password file changes.\n", 108}, - {"Cannot unlock the password file.\n", 109}, - {"usage: %s [-e]\n", 110}, - {"%s: can't lock shadow file\n", 111}, - {"%s: can't open shadow file\n", 112}, - {"%s: line %d: line too long\n", 113}, - {"%s: line %d: missing new password\n", 114}, - {"%s: line %d: unknown user %s\n", 115}, - {"%s: line %d: cannot update password entry\n", 116}, - {"%s: error detected, changes ignored\n", 117}, - {"%s: error updating shadow file\n", 118}, - {"%s: error updating password file\n", 119}, - {"Usage: %s [ -s shell ] [ name ]\n", 120}, - {"Login Shell", 121}, - {"You may not change the shell for %s.\n", 122}, - {"Changing the login shell for %s\n", 123}, - {"%s: Invalid entry: %s\n", 124}, - {"%s is an invalid shell.\n", 125}, - {"Usage: %s [ -(a|d) ] shell\n", 126}, - {"Shell password: ", 127}, - {"re-enter Shell password: ", 128}, - {"%s: Passwords do not match, try again.\n", 129}, - {"%s: can't create %s", 130}, - {"%s: can't open %s", 131}, - {"%s: Shell %s not found.\n", 132}, - {"Usage: expiry { -f | -c }\n", 133}, - {"%s: WARNING! Must be set-UID root!\n", 134}, - {"%s: unknown user\n", 135}, - {"usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n", 136}, - {"Unknown User: %s\n", 137}, - {"Username Failures Maximum Latest\n", 138}, - {" %s on %s", 139}, - {" [%lds left]", 140}, - {" [%lds lock]", 141}, - {"usage: %s [-r|-R] group\n", 142}, - {" %s [-a user] group\n", 143}, - {" %s [-d user] group\n", 144}, - {" %s [-A user,...] [-M user,...] group\n", 145}, - {" %s [-M user,...] group\n", 146}, - {"%s: unknown user %s\n", 147}, - {"Permission denied.\n", 148}, - {"%s: shadow group passwords required for -A\n", 149}, - {"Who are you?\n", 150}, - {"unknown group: %s\n", 151}, - {"Adding user %s to group %s\n", 152}, - {"Removing user %s from group %s\n", 153}, - {"%s: unknown member %s\n", 154}, - {"%s: Not a tty\n", 155}, - {"Changing the password for group %s\n", 156}, - {"New Password: ", 157}, - {"Re-enter new password: ", 158}, - {"They don't match; try again", 159}, - {"%s: Try again later\n", 160}, - {"%s: can't get lock\n", 161}, - {"%s: can't get shadow lock\n", 162}, - {"%s: can't open file\n", 163}, - {"%s: can't update entry\n", 164}, - {"%s: can't update shadow entry\n", 165}, - {"%s: can't re-write file\n", 166}, - {"%s: can't re-write shadow file\n", 167}, - {"%s: can't unlock file\n", 168}, - {"%s: can't update DBM files\n", 169}, - {"%s: can't update DBM shadow files\n", 170}, - {"usage: groupadd [-g gid [-o]] group\n", 171}, - {"%s: error adding new group entry\n", 172}, - {"%s: cannot add new dbm group entry\n", 173}, - {"%s: name %s is not unique\n", 174}, - {"%s: gid %ld is not unique\n", 175}, - {"%s: can't get unique gid\n", 176}, - {"%s: %s is a not a valid group name\n", 177}, - {"%s: invalid group %s\n", 178}, - {"%s: -O requires NAME=VALUE\n", 179}, - {"%s: cannot rewrite group file\n", 180}, - {"%s: cannot rewrite shadow group file\n", 181}, - {"%s: unable to lock group file\n", 182}, - {"%s: unable to open group file\n", 183}, - {"%s: unable to lock shadow group file\n", 184}, - {"%s: unable to open shadow group file\n", 185}, - {"%s: group %s exists\n", 186}, - {"usage: groupdel group\n", 187}, - {"%s: error removing group entry\n", 188}, - {"%s: error removing group dbm entry\n", 189}, - {"%s: error removing shadow group entry\n", 190}, - {"%s: error removing shadow group dbm entry\n", 191}, - {"%s: cannot remove user's primary group.\n", 192}, - {"%s: group %s does not exist\n", 193}, - {"%s: group %s is a NIS group\n", 194}, - {"%s: %s is the NIS master\n", 195}, - {"usage: groupmod [-g gid [-o]] [-n name] group\n", 196}, - {"%s: %s not found in /etc/group\n", 197}, - {"%s: cannot add new dbm shadow group entry\n", 198}, - {"%s: %ld is not a unique gid\n", 199}, - {"%s: %s is not a unique name\n", 200}, - {"unknown user %s\n", 201}, - {"Usage: %s [ -r ] [ group [ gshadow ] ]\n", 202}, - {"Usage: %s [ -r ] [ group ]\n", 203}, - {"No", 204}, - {"%s: cannot lock file %s\n", 205}, - {"%s: cannot open file %s\n", 206}, - {"invalid group file entry\n", 207}, - {"delete line `%s'? ", 208}, - {"duplicate group entry\n", 209}, - {"invalid group name `%s'\n", 210}, - {"group %s: bad GID (%d)\n", 211}, - {"group %s: no user %s\n", 212}, - {"delete member `%s'? ", 213}, - {"invalid shadow group file entry\n", 214}, - {"duplicate shadow group entry\n", 215}, - {"no matching group file entry\n", 216}, - {"shadow group %s: no administrative user %s\n", 217}, - {"delete administrative member `%s'? ", 218}, - {"shadow group %s: no user %s\n", 219}, - {"%s: cannot update file %s\n", 220}, - {"%s: the files have been updated; run mkpasswd\n", 221}, - {"%s: no changes\n", 222}, - {"%s: the files have been updated\n", 223}, - {"%s: can't lock group file\n", 224}, - {"%s: can't open group file\n", 225}, - {"%s: can't lock shadow group file\n", 226}, - {"%s: can't open shadow group file\n", 227}, - {"%s: can't remove shadow group %s\n", 228}, - {"%s: can't update shadow entry for %s\n", 229}, - {"%s: can't update entry for group %s\n", 230}, - {"%s: can't update shadow group file\n", 231}, - {"%s: can't update group file\n", 232}, - {"%s: not configured for shadow group support.\n", 233}, - {"%s: can't delete shadow group file\n", 234}, - {"usage: id [ -a ]\n", 235}, - {"usage: id\n", 236}, - {"uid=%d(%s)", 237}, - {"uid=%d", 238}, - {" gid=%d(%s)", 239}, - {" gid=%d", 240}, - {" euid=%d(%s)", 241}, - {" euid=%d", 242}, - {" egid=%d(%s)", 243}, - {" egid=%d", 244}, - {" groups=", 245}, - {"Username Port From Latest\n", 246}, - {"Username Port Latest\n", 247}, - {"**Never logged in**", 248}, - {"usage: %s [-p] [name]\n", 249}, - {" %s [-p] [-h host] [-f name]\n", 250}, - {" %s [-p] -r host\n", 251}, - {"Invalid login time\n", 252}, +Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ] [ -h home_ph ]\n", 82}, + {"Enter the new value, or press return for the default\n", 83}, + {"Full Name", 84}, + {"\tFull Name: %s\n", 85}, + {"Room Number", 86}, + {"\tRoom Number: %s\n", 87}, + {"Work Phone", 88}, + {"\tWork Phone: %s\n", 89}, + {"Home Phone", 90}, + {"\tHome Phone: %s\n", 91}, + {"Other", 92}, + {"%s: Permission denied.\n", 93}, + {"%s: Unknown user %s\n", 94}, + {"%s: Cannot determine your user name.\n", 95}, + {"%s: cannot change user `%s' on NIS client.\n", 96}, + {"%s: `%s' is the NIS master for this client.\n", 97}, + {"Changing the user information for %s\n", 98}, + {"%s: invalid name: \"%s\"\n", 99}, + {"%s: invalid room number: \"%s\"\n", 100}, + {"%s: invalid work phone: \"%s\"\n", 101}, + {"%s: invalid home phone: \"%s\"\n", 102}, + {"%s: \"%s\" contains illegal characters\n", 103}, + {"%s: fields too long\n", 104}, + {"Cannot change ID to root.\n", 105}, + {"Cannot lock the password file; try again later.\n", 106}, + {"Cannot open the password file.\n", 107}, + {"%s: %s not found in /etc/passwd\n", 108}, + {"Error updating the password entry.\n", 109}, + {"Cannot commit password file changes.\n", 110}, + {"Cannot unlock the password file.\n", 111}, + {"usage: %s [-e]\n", 112}, + {"%s: can't lock shadow file\n", 113}, + {"%s: can't open shadow file\n", 114}, + {"%s: line %d: line too long\n", 115}, + {"%s: line %d: missing new password\n", 116}, + {"%s: line %d: unknown user %s\n", 117}, + {"%s: line %d: cannot update password entry\n", 118}, + {"%s: error detected, changes ignored\n", 119}, + {"%s: error updating shadow file\n", 120}, + {"%s: error updating password file\n", 121}, + {"Usage: %s [ -s shell ] [ name ]\n", 122}, + {"Login Shell", 123}, + {"You may not change the shell for %s.\n", 124}, + {"Changing the login shell for %s\n", 125}, + {"%s: Invalid entry: %s\n", 126}, + {"%s is an invalid shell.\n", 127}, + {"Usage: %s [ -(a|d) ] shell\n", 128}, + {"Shell password: ", 129}, + {"re-enter Shell password: ", 130}, + {"%s: Passwords do not match, try again.\n", 131}, + {"%s: can't create %s", 132}, + {"%s: can't open %s", 133}, + {"%s: Shell %s not found.\n", 134}, + {"Usage: expiry { -f | -c }\n", 135}, + {"%s: WARNING! Must be set-UID root!\n", 136}, + {"%s: unknown user\n", 137}, + {"usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n", 138}, + {"Unknown User: %s\n", 139}, + {"Username Failures Maximum Latest\n", 140}, + {" %s on %s", 141}, + {" [%lds left]", 142}, + {" [%lds lock]", 143}, + {"usage: %s [-r|-R] group\n", 144}, + {" %s [-a user] group\n", 145}, + {" %s [-d user] group\n", 146}, + {" %s [-A user,...] [-M user,...] group\n", 147}, + {" %s [-M user,...] group\n", 148}, + {"%s: unknown user %s\n", 149}, + {"Permission denied.\n", 150}, + {"%s: shadow group passwords required for -A\n", 151}, + {"Who are you?\n", 152}, + {"unknown group: %s\n", 153}, + {"Adding user %s to group %s\n", 154}, + {"Removing user %s from group %s\n", 155}, + {"%s: unknown member %s\n", 156}, + {"%s: Not a tty\n", 157}, + {"Changing the password for group %s\n", 158}, + {"New Password: ", 159}, + {"Re-enter new password: ", 160}, + {"They don't match; try again", 161}, + {"%s: Try again later\n", 162}, + {"%s: can't get lock\n", 163}, + {"%s: can't get shadow lock\n", 164}, + {"%s: can't open file\n", 165}, + {"%s: can't update entry\n", 166}, + {"%s: can't update shadow entry\n", 167}, + {"%s: can't re-write file\n", 168}, + {"%s: can't re-write shadow file\n", 169}, + {"%s: can't unlock file\n", 170}, + {"%s: can't update DBM files\n", 171}, + {"%s: can't update DBM shadow files\n", 172}, + {"usage: groupadd [-g gid [-o]] group\n", 173}, + {"%s: error adding new group entry\n", 174}, + {"%s: cannot add new dbm group entry\n", 175}, + {"%s: name %s is not unique\n", 176}, + {"%s: gid %ld is not unique\n", 177}, + {"%s: can't get unique gid\n", 178}, + {"%s: %s is a not a valid group name\n", 179}, + {"%s: invalid group %s\n", 180}, + {"%s: -O requires NAME=VALUE\n", 181}, + {"%s: cannot rewrite group file\n", 182}, + {"%s: cannot rewrite shadow group file\n", 183}, + {"%s: unable to lock group file\n", 184}, + {"%s: unable to open group file\n", 185}, + {"%s: unable to lock shadow group file\n", 186}, + {"%s: unable to open shadow group file\n", 187}, + {"%s: group %s exists\n", 188}, + {"usage: groupdel group\n", 189}, + {"%s: error removing group entry\n", 190}, + {"%s: error removing group dbm entry\n", 191}, + {"%s: error removing shadow group entry\n", 192}, + {"%s: error removing shadow group dbm entry\n", 193}, + {"%s: cannot remove user's primary group.\n", 194}, + {"%s: group %s does not exist\n", 195}, + {"%s: group %s is a NIS group\n", 196}, + {"%s: %s is the NIS master\n", 197}, + {"usage: groupmod [-g gid [-o]] [-n name] group\n", 198}, + {"%s: %s not found in /etc/group\n", 199}, + {"%s: cannot add new dbm shadow group entry\n", 200}, + {"%s: %ld is not a unique gid\n", 201}, + {"%s: %s is not a unique name\n", 202}, + {"unknown user %s\n", 203}, + {"Usage: %s [ -r ] [ group [ gshadow ] ]\n", 204}, + {"Usage: %s [ -r ] [ group ]\n", 205}, + {"No", 206}, + {"%s: cannot lock file %s\n", 207}, + {"%s: cannot open file %s\n", 208}, + {"invalid group file entry\n", 209}, + {"delete line `%s'? ", 210}, + {"duplicate group entry\n", 211}, + {"invalid group name `%s'\n", 212}, + {"group %s: bad GID (%d)\n", 213}, + {"group %s: no user %s\n", 214}, + {"delete member `%s'? ", 215}, + {"invalid shadow group file entry\n", 216}, + {"duplicate shadow group entry\n", 217}, + {"no matching group file entry\n", 218}, + {"shadow group %s: no administrative user %s\n", 219}, + {"delete administrative member `%s'? ", 220}, + {"shadow group %s: no user %s\n", 221}, + {"%s: cannot update file %s\n", 222}, + {"%s: the files have been updated; run mkpasswd\n", 223}, + {"%s: no changes\n", 224}, + {"%s: the files have been updated\n", 225}, + {"%s: can't lock group file\n", 226}, + {"%s: can't open group file\n", 227}, + {"%s: can't lock shadow group file\n", 228}, + {"%s: can't open shadow group file\n", 229}, + {"%s: can't remove shadow group %s\n", 230}, + {"%s: can't update shadow entry for %s\n", 231}, + {"%s: can't update entry for group %s\n", 232}, + {"%s: can't update shadow group file\n", 233}, + {"%s: can't update group file\n", 234}, + {"%s: not configured for shadow group support.\n", 235}, + {"%s: can't delete shadow group file\n", 236}, + {"usage: id [ -a ]\n", 237}, + {"usage: id\n", 238}, + {"uid=%d(%s)", 239}, + {"uid=%d", 240}, + {" gid=%d(%s)", 241}, + {" gid=%d", 242}, + {" euid=%d(%s)", 243}, + {" euid=%d", 244}, + {" egid=%d(%s)", 245}, + {" egid=%d", 246}, + {" groups=", 247}, + {"Username Port From Latest\n", 248}, + {"Username Port Latest\n", 249}, + {"**Never logged in**", 250}, + {"usage: %s [-p] [name]\n", 251}, + {" %s [-p] [-h host] [-f name]\n", 252}, + {" %s [-p] -r host\n", 253}, + {"Invalid login time\n", 254}, {"\ \n\ -System closed for routine maintenance\n", 253}, +System closed for routine maintenance\n", 255}, {"\ \n\ -[Disconnect bypassed -- root login allowed.]\n", 254}, +[Disconnect bypassed -- root login allowed.]\n", 256}, {"\ \n\ -Login timed out after %d seconds.\n", 255}, - {" on `%.100s' from `%.200s'", 256}, - {" on `%.100s'", 257}, +Login timed out after %d seconds.\n", 257}, + {" on `%.100s' from `%.200s'", 258}, + {" on `%.100s'", 259}, {"\ \n\ -%s login: ", 258}, - {"login: ", 259}, - {"Login incorrect", 260}, - {"Warning: login re-enabled after temporary lockout.\n", 261}, - {"Last login: %s on %s", 262}, - {"Last login: %.19s on %s", 263}, - {" from %.*s", 264}, - {"Starting rad_login\n", 265}, - {"%s: no DBM database on system - no action performed\n", 266}, - {"%s: cannot overwrite file %s\n", 267}, - {"%s: cannot open DBM files for %s\n", 268}, - {"%s: the beginning with ", 269}, - {"%s: error parsing line \"%s\"\n", 270}, - {"adding record for name ", 271}, - {"%s: error adding record for ", 272}, - {"added %d entries, longest was %d\n", 273}, - {"Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n", 274}, - {"Usage: %s [ -vf ] [ -p|g|sp ] file\n", 275}, - {"Usage: %s [ -vf ] [ -p|g ] file\n", 276}, - {"usage: newgrp [ - ] [ group ]\n", 277}, - {"usage: sg group [[-c] command ]\n", 278}, - {"unknown uid: %d\n", 279}, - {"unknown gid: %ld\n", 280}, - {"unknown gid: %d\n", 281}, - {"Sorry.\n", 282}, - {"too many groups\n", 283}, - {"Usage: %s [ input ]\n", 284}, - {"%s: can't lock /etc/passwd.\n", 285}, - {"%s: can't lock files, try again later\n", 286}, - {"%s: can't open files\n", 287}, - {"%s: line %d: invalid line\n", 288}, - {"%s: line %d: can't create GID\n", 289}, - {"%s: line %d: can't create UID\n", 290}, - {"%s: line %d: cannot find user %s\n", 291}, - {"%s: line %d: can't update password\n", 292}, - {"%s: line %d: mkdir failed\n", 293}, - {"%s: line %d: chown failed\n", 294}, - {"%s: line %d: can't update entry\n", 295}, - {"%s: error updating files\n", 296}, - {"usage: %s [ -f | -s ] [ name ]\n", 297}, - {" %s [ -x max ] [ -n min ] [ -w warn ] [ -i inact ] name\n", 298}, - {" %s { -l | -u | -d | -S | -e } name\n", 299}, - {"User %s has a TCFS key, his old password is required.\n", 300}, - {"You can use -t option to force the change.\n", 301}, - {"Old password: ", 302}, - {"Incorrect password for `%s'\n", 303}, - {"Warning: user %s has a TCFS key.\n", 304}, +%s login: ", 260}, + {"login: ", 261}, + {"Login incorrect", 262}, + {"Warning: login re-enabled after temporary lockout.\n", 263}, + {"Last login: %s on %s", 264}, + {"Last login: %.19s on %s", 265}, + {" from %.*s", 266}, + {"Starting rad_login\n", 267}, + {"%s: no DBM database on system - no action performed\n", 268}, + {"%s: cannot overwrite file %s\n", 269}, + {"%s: cannot open DBM files for %s\n", 270}, + {"%s: the beginning with ", 271}, + {"%s: error parsing line \"%s\"\n", 272}, + {"adding record for name ", 273}, + {"%s: error adding record for ", 274}, + {"added %d entries, longest was %d\n", 275}, + {"Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n", 276}, + {"Usage: %s [ -vf ] [ -p|g|sp ] file\n", 277}, + {"Usage: %s [ -vf ] [ -p|g ] file\n", 278}, + {"usage: newgrp [ - ] [ group ]\n", 279}, + {"usage: sg group [[-c] command ]\n", 280}, + {"unknown uid: %d\n", 281}, + {"unknown gid: %ld\n", 282}, + {"unknown gid: %d\n", 283}, + {"Sorry.\n", 284}, + {"too many groups\n", 285}, + {"Usage: %s [ input ]\n", 286}, + {"%s: can't lock /etc/passwd.\n", 287}, + {"%s: can't lock files, try again later\n", 288}, + {"%s: can't open files\n", 289}, + {"%s: line %d: invalid line\n", 290}, + {"%s: line %d: can't create GID\n", 291}, + {"%s: line %d: can't create UID\n", 292}, + {"%s: line %d: cannot find user %s\n", 293}, + {"%s: line %d: can't update password\n", 294}, + {"%s: line %d: mkdir failed\n", 295}, + {"%s: line %d: chown failed\n", 296}, + {"%s: line %d: can't update entry\n", 297}, + {"%s: error updating files\n", 298}, + {"usage: %s [ -f | -s ] [ name ]\n", 299}, + {" %s [ -x max ] [ -n min ] [ -w warn ] [ -i inact ] name\n", 300}, + {" %s { -l | -u | -d | -S | -e } name\n", 301}, + {"User %s has a TCFS key, his old password is required.\n", 302}, + {"You can use -t option to force the change.\n", 303}, + {"Old password: ", 304}, + {"Incorrect password for `%s'\n", 305}, + {"Warning: user %s has a TCFS key.\n", 306}, {"\ Enter the new password (minimum of %d, maximum of %d characters)\n\ -Please use a combination of upper and lower case letters and numbers.\n", 305}, - {"New password: ", 306}, - {"Try again.\n", 307}, +Please use a combination of upper and lower case letters and numbers.\n", 307}, + {"New password: ", 308}, + {"Try again.\n", 309}, {"\ \n\ -Warning: weak password (enter it again to use it anyway).\n", 308}, - {"They don't match; try again.\n", 309}, - {"The password for %s cannot be changed.\n", 310}, - {"Sorry, the password for %s cannot be changed yet.\n", 311}, - {"%s: out of memory\n", 312}, - {"Cannot lock the TCFS key database; try again later\n", 313}, - {"Cannot open the TCFS key database.\n", 314}, - {"Error updating the TCFS key database.\n", 315}, - {"Cannot commit TCFS changes.\n", 316}, - {"%s: Cannot execute %s", 317}, - {"%s: repository %s not supported\n", 318}, - {"%s: Permission denied\n", 319}, - {"You may not change the password for %s.\n", 320}, - {"Changing password for %s\n", 321}, - {"The password for %s is unchanged.\n", 322}, - {"Password changed.\n", 323}, - {"Usage: %s [ -qr ] [ passwd [ shadow ] ]\n", 324}, - {"Usage: %s [ -qr ] [ passwd ]\n", 325}, - {"invalid password file entry\n", 326}, - {"duplicate password entry\n", 327}, - {"invalid user name `%s'\n", 328}, - {"user %s: bad UID (%d)\n", 329}, - {"user %s: no group %d\n", 330}, - {"user %s: directory %s does not exist\n", 331}, - {"user %s: program %s does not exist\n", 332}, - {"invalid shadow password file entry\n", 333}, - {"duplicate shadow password entry\n", 334}, - {"no matching password file entry\n", 335}, - {"user %s: last password change in the future\n", 336}, - {"%s: can't lock passwd file\n", 337}, - {"%s: can't open passwd file\n", 338}, - {"%s: can't remove shadow entry for %s\n", 339}, - {"%s: can't update passwd entry for %s\n", 340}, - {"%s: can't update shadow file\n", 341}, - {"%s: can't update passwd file\n", 342}, - {"%s: Shadow passwords are not configured.\n", 343}, - {"%s: can't update entry for user %s\n", 344}, - {"%s: can't delete shadow password file\n", 345}, - {"Sorry.", 346}, - {"%s: must be run from a terminal\n", 347}, - {"%s: pam_start: error %d\n", 348}, - {"Unknown id: %s\n", 349}, - {"You are not authorized to su %s\n", 350}, - {"(Enter your own password.)", 351}, - {"%s: permission denied (shell).\n", 352}, +Warning: weak password (enter it again to use it anyway).\n", 310}, + {"They don't match; try again.\n", 311}, + {"The password for %s cannot be changed.\n", 312}, + {"Sorry, the password for %s cannot be changed yet.\n", 313}, + {"%s: out of memory\n", 314}, + {"Cannot lock the TCFS key database; try again later\n", 315}, + {"Cannot open the TCFS key database.\n", 316}, + {"Error updating the TCFS key database.\n", 317}, + {"Cannot commit TCFS changes.\n", 318}, + {"%s: Cannot execute %s", 319}, + {"%s: repository %s not supported\n", 320}, + {"%s: Permission denied\n", 321}, + {"You may not change the password for %s.\n", 322}, + {"Changing password for %s\n", 323}, + {"The password for %s is unchanged.\n", 324}, + {"Password changed.\n", 325}, + {"Usage: %s [ -qr ] [ passwd [ shadow ] ]\n", 326}, + {"Usage: %s [ -qr ] [ passwd ]\n", 327}, + {"invalid password file entry\n", 328}, + {"duplicate password entry\n", 329}, + {"invalid user name `%s'\n", 330}, + {"user %s: bad UID (%d)\n", 331}, + {"user %s: no group %d\n", 332}, + {"user %s: directory %s does not exist\n", 333}, + {"user %s: program %s does not exist\n", 334}, + {"invalid shadow password file entry\n", 335}, + {"duplicate shadow password entry\n", 336}, + {"no matching password file entry\n", 337}, + {"user %s: last password change in the future\n", 338}, + {"%s: can't lock passwd file\n", 339}, + {"%s: can't open passwd file\n", 340}, + {"%s: can't remove shadow entry for %s\n", 341}, + {"%s: can't update passwd entry for %s\n", 342}, + {"%s: can't update shadow file\n", 343}, + {"%s: can't update passwd file\n", 344}, + {"%s: Shadow passwords are not configured.\n", 345}, + {"%s: can't update entry for user %s\n", 346}, + {"%s: can't delete shadow password file\n", 347}, + {"Sorry.", 348}, + {"%s: must be run from a terminal\n", 349}, + {"%s: pam_start: error %d\n", 350}, + {"Unknown id: %s\n", 351}, + {"You are not authorized to su %s\n", 352}, + {"(Enter your own password.)", 353}, + {"%s: permission denied (shell).\n", 354}, {"\ %s: %s\n\ -(Ignored)\n", 353}, - {"No shell\n", 354}, - {"No password file\n", 355}, - {"No password entry for 'root'\n", 356}, +(Ignored)\n", 355}, + {"No shell\n", 356}, + {"No password file\n", 357}, + {"No password entry for 'root'\n", 358}, {"\ \n\ Type control-d to proceed with normal startup,\n\ -(or give root password for system maintenance):", 357}, - {"Entering System Maintenance Mode\n", 358}, - {"%s: rebuild the group database\n", 359}, - {"%s: rebuild the shadow group database\n", 360}, - {"%s: invalid numeric argument `%s'\n", 361}, - {"%s: unknown gid %s\n", 362}, - {"%s: unknown group %s\n", 363}, - {"group=%s,%ld basedir=%s skel=%s\n", 364}, - {"shell=%s ", 365}, - {"inactive=%ld expire=%s", 366}, - {"GROUP=%ld\n", 367}, - {"HOME=%s\n", 368}, - {"INACTIVE=%ld\n", 369}, - {"EXPIRE=%s\n", 370}, - {"SHELL=%s\n", 371}, - {"SKEL=%s\n", 372}, - {"%s: cannot create new defaults file\n", 373}, - {"%s: rename: %s", 374}, - {"%s: group `%s' is a NIS group.\n", 375}, - {"%s: too many groups specified (max %d).\n", 376}, - {"usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n", 377}, - {"\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n", 378}, - {"[-f inactive] [-e expire ] ", 379}, - {"[-A program] ", 380}, - {"[-p passwd] name\n", 381}, - {" %s\t-D [-g group] [-b base] [-s shell]\n", 382}, - {"\t\t[-f inactive] [-e expire ]\n", 383}, - {"%s: error locking group file\n", 384}, - {"%s: error opening group file\n", 385}, - {"%s: error locking shadow group file\n", 386}, - {"%s: error opening shadow group file\n", 387}, - {"%s: uid %d is not unique\n", 388}, - {"%s: can't get unique uid\n", 389}, - {"%s: invalid field `%s'\n", 390}, - {"%s: invalid base directory `%s'\n", 391}, - {"%s: invalid comment `%s'\n", 392}, - {"%s: invalid home directory `%s'\n", 393}, - {"%s: invalid date `%s'\n", 394}, - {"%s: shadow passwords required for -e\n", 395}, - {"%s: shadow passwords required for -f\n", 396}, - {"%s: invalid shell `%s'\n", 397}, - {"%s: invalid user name `%s'\n", 398}, - {"%s: cannot rewrite password file\n", 399}, - {"%s: cannot rewrite shadow password file\n", 400}, - {"%s: unable to lock password file\n", 401}, - {"%s: unable to open password file\n", 402}, - {"%s: cannot lock shadow password file\n", 403}, - {"%s: cannot open shadow password file\n", 404}, - {"%s: error adding authentication method\n", 405}, - {"%s: error adding new password entry\n", 406}, - {"%s: error updating password dbm entry\n", 407}, - {"%s: error adding new shadow password entry\n", 408}, - {"%s: error updating shadow passwd dbm entry\n", 409}, - {"%s: cannot create directory %s\n", 410}, - {"%s: user %s exists\n", 411}, - {"%s: warning: CREATE_HOME not supported, please use -m instead.\n", 412}, - {"usage: %s [-r] name\n", 413}, - {"%s: error updating group entry\n", 414}, - {"%s: cannot update dbm group entry\n", 415}, - {"%s: cannot remove dbm group entry\n", 416}, - {"%s: cannot rewrite TCFS key file\n", 417}, - {"%s: cannot lock TCFS key file\n", 418}, - {"%s: cannot open TCFS key file\n", 419}, - {"%s: cannot open group file\n", 420}, - {"%s: cannot open shadow group file\n", 421}, - {"%s: error deleting authentication\n", 422}, - {"%s: error deleting password entry\n", 423}, - {"%s: error deleting shadow password entry\n", 424}, - {"%s: error deleting TCFS entry\n", 425}, - {"%s: error deleting password dbm entry\n", 426}, - {"%s: error deleting shadow passwd dbm entry\n", 427}, - {"%s: user %s is currently logged in\n", 428}, - {"%s: warning: %s not owned by %s, not removing\n", 429}, - {"%s: warning: can't remove ", 430}, - {"%s: user %s does not exist\n", 431}, - {"%s: user %s is a NIS user\n", 432}, - {"%s: %s not owned by %s, not removing\n", 433}, - {"%s: not removing directory %s (would remove home of user %s)\n", 434}, - {"%s: error removing directory %s\n", 435}, - {"\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n", 436}, - {"[-A {DEFAULT|program},... ] ", 437}, - {"[-p passwd] [-L|-U] name\n", 438}, - {"%s: out of memory in update_group\n", 439}, - {"%s: out of memory in update_gshadow\n", 440}, - {"%s: no flags given\n", 441}, - {"%s: shadow passwords required for -e and -f\n", 442}, - {"%s: uid %ld is not unique\n", 443}, - {"%s: error deleting authentication method\n", 444}, - {"%s: error changing authentication method\n", 445}, - {"%s: error changing password entry\n", 446}, - {"%s: error removing password entry\n", 447}, - {"%s: error adding password dbm entry\n", 448}, - {"%s: error removing passwd dbm entry\n", 449}, - {"%s: error removing shadow password entry\n", 450}, - {"%s: error removing shadow passwd dbm entry\n", 451}, - {"%s: directory %s exists\n", 452}, - {"%s: can't create %s\n", 453}, - {"%s: can't chown %s\n", 454}, - {"%s: cannot rename directory %s to %s\n", 455}, - {"%s: warning: %s not owned by %s\n", 456}, - {"failed to change mailbox owner", 457}, - {"failed to rename mailbox", 458}, +(or give root password for system maintenance):", 359}, + {"Entering System Maintenance Mode\n", 360}, + {"%s: rebuild the group database\n", 361}, + {"%s: rebuild the shadow group database\n", 362}, + {"%s: invalid numeric argument `%s'\n", 363}, + {"%s: unknown gid %s\n", 364}, + {"%s: unknown group %s\n", 365}, + {"group=%s,%ld basedir=%s skel=%s\n", 366}, + {"shell=%s ", 367}, + {"inactive=%ld expire=%s", 368}, + {"GROUP=%ld\n", 369}, + {"HOME=%s\n", 370}, + {"INACTIVE=%ld\n", 371}, + {"EXPIRE=%s\n", 372}, + {"SHELL=%s\n", 373}, + {"SKEL=%s\n", 374}, + {"%s: cannot create new defaults file\n", 375}, + {"%s: rename: %s", 376}, + {"%s: group `%s' is a NIS group.\n", 377}, + {"%s: too many groups specified (max %d).\n", 378}, + {"usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n", 379}, + {"\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n", 380}, + {"[-f inactive] [-e expire ] ", 381}, + {"[-A program] ", 382}, + {"[-p passwd] name\n", 383}, + {" %s\t-D [-g group] [-b base] [-s shell]\n", 384}, + {"\t\t[-f inactive] [-e expire ]\n", 385}, + {"%s: error locking group file\n", 386}, + {"%s: error opening group file\n", 387}, + {"%s: error locking shadow group file\n", 388}, + {"%s: error opening shadow group file\n", 389}, + {"%s: uid %d is not unique\n", 390}, + {"%s: can't get unique uid\n", 391}, + {"%s: invalid field `%s'\n", 392}, + {"%s: invalid base directory `%s'\n", 393}, + {"%s: invalid comment `%s'\n", 394}, + {"%s: invalid home directory `%s'\n", 395}, + {"%s: invalid date `%s'\n", 396}, + {"%s: shadow passwords required for -e\n", 397}, + {"%s: shadow passwords required for -f\n", 398}, + {"%s: invalid shell `%s'\n", 399}, + {"%s: invalid user name `%s'\n", 400}, + {"%s: cannot rewrite password file\n", 401}, + {"%s: cannot rewrite shadow password file\n", 402}, + {"%s: unable to lock password file\n", 403}, + {"%s: unable to open password file\n", 404}, + {"%s: cannot lock shadow password file\n", 405}, + {"%s: cannot open shadow password file\n", 406}, + {"%s: error adding authentication method\n", 407}, + {"%s: error adding new password entry\n", 408}, + {"%s: error updating password dbm entry\n", 409}, + {"%s: error adding new shadow password entry\n", 410}, + {"%s: error updating shadow passwd dbm entry\n", 411}, + {"%s: cannot create directory %s\n", 412}, + {"%s: user %s exists\n", 413}, + {"\ +%s: group %s exists - if you want to add this user to that group, use -g.\n", 414}, + {"%s: warning: CREATE_HOME not supported, please use -m instead.\n", 415}, + {"usage: %s [-r] name\n", 416}, + {"%s: error updating group entry\n", 417}, + {"%s: cannot update dbm group entry\n", 418}, + {"%s: cannot remove dbm group entry\n", 419}, + {"%s: cannot rewrite TCFS key file\n", 420}, + {"%s: cannot lock TCFS key file\n", 421}, + {"%s: cannot open TCFS key file\n", 422}, + {"%s: cannot open group file\n", 423}, + {"%s: cannot open shadow group file\n", 424}, + {"%s: error deleting authentication\n", 425}, + {"%s: error deleting password entry\n", 426}, + {"%s: error deleting shadow password entry\n", 427}, + {"%s: error deleting TCFS entry\n", 428}, + {"%s: error deleting password dbm entry\n", 429}, + {"%s: error deleting shadow passwd dbm entry\n", 430}, + {"%s: user %s is currently logged in\n", 431}, + {"%s: warning: %s not owned by %s, not removing\n", 432}, + {"%s: warning: can't remove ", 433}, + {"%s: user %s does not exist\n", 434}, + {"%s: user %s is a NIS user\n", 435}, + {"%s: %s not owned by %s, not removing\n", 436}, + {"%s: not removing directory %s (would remove home of user %s)\n", 437}, + {"%s: error removing directory %s\n", 438}, + {"\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n", 439}, + {"[-A {DEFAULT|program},... ] ", 440}, + {"[-p passwd] [-L|-U] name\n", 441}, + {"%s: out of memory in update_group\n", 442}, + {"%s: out of memory in update_gshadow\n", 443}, + {"%s: no flags given\n", 444}, + {"%s: shadow passwords required for -e and -f\n", 445}, + {"%s: uid %ld is not unique\n", 446}, + {"%s: error deleting authentication method\n", 447}, + {"%s: error changing authentication method\n", 448}, + {"%s: error changing password entry\n", 449}, + {"%s: error removing password entry\n", 450}, + {"%s: error adding password dbm entry\n", 451}, + {"%s: error removing passwd dbm entry\n", 452}, + {"%s: error removing shadow password entry\n", 453}, + {"%s: error removing shadow passwd dbm entry\n", 454}, + {"%s: directory %s exists\n", 455}, + {"%s: can't create %s\n", 456}, + {"%s: can't chown %s\n", 457}, + {"%s: cannot rename directory %s to %s\n", 458}, + {"%s: warning: %s not owned by %s\n", 459}, + {"failed to change mailbox owner", 460}, + {"failed to rename mailbox", 461}, {"\ \n\ -%s: %s is unchanged\n", 459}, - {"Couldn't lock file", 460}, - {"Couldn't make backup", 461}, - {"%s: can't restore %s: %s (your changes are in %s)\n", 462}, +%s: %s is unchanged\n", 462}, + {"Couldn't lock file", 463}, + {"Couldn't make backup", 464}, + {"%s: can't restore %s: %s (your changes are in %s)\n", 465}, {"\ Usage:\n\ `vipw' edits /etc/passwd `vipw -s' edits /etc/shadow\n\ -`vigr' edits /etc/group `vigr -s' edits /etc/gshadow\n", 463}, +`vigr' edits /etc/group `vigr -s' edits /etc/gshadow\n", 466}, }; -int _msg_tbl_length = 463; +int _msg_tbl_length = 466; diff --git a/po/cs.gmo b/po/cs.gmo new file mode 100644 index 0000000000000000000000000000000000000000..9310ff37206dc460dc4db96800ed520e70017da9 GIT binary patch literal 40991 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 RD2&M_H|?nX4pVcT`9F~ToTvZ* literal 0 HcmV?d00001 diff --git a/po/cs.po b/po/cs.po new file mode 100644 index 00000000..892b02c5 --- /dev/null +++ b/po/cs.po @@ -0,0 +1,2426 @@ +# Czech translation of shadow-utils. +# Jiøí Pavlovský , 1999-2000 +# +msgid "" +msgstr "" +"Project-Id-Version: shadow-utils-20000902\n" +"POT-Creation-Date: 2000-10-12 06:20+0200\n" +"PO-Revision-Date: 2000-09-23 19:58+0200\n" +"Last-Translator: Jiøí Pavlovský \n" +"Language-Team: Czech \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO-8859-2\n" +"Content-Transfer-Encoding: 8bit\n" + +#: libmisc/addgrps.c:60 +#, c-format +msgid "Warning: unknown group %s\n" +msgstr "Varování: skupina %s je neznámá\n" + +#: libmisc/addgrps.c:71 +msgid "Warning: too many groups\n" +msgstr "Varování: pøíli¹ mnoho skupin\n" + +#: libmisc/age.c:104 +msgid "Your password has expired." +msgstr "Platnost va¹eho hesla vypr¹ela." + +#: libmisc/age.c:107 +msgid "Your password is inactive." +msgstr "Va¹e heslo je vypnuto." + +#: libmisc/age.c:110 +msgid "Your login has expired." +msgstr "Platnost va¹eho úètu vypr¹ela." + +#: libmisc/age.c:127 +msgid " Contact the system administrator.\n" +msgstr " Kontaktujte správce systému.\n" + +#: libmisc/age.c:130 +msgid " Choose a new password.\n" +msgstr " Zvolte nové heslo.\n" + +#: libmisc/age.c:228 +#, c-format +msgid "Your password will expire in %ld days.\n" +msgstr "Platnost va¹eho heslo vypr¹í za %ld dnù.\n" + +#: libmisc/age.c:230 +msgid "Your password will expire tomorrow.\n" +msgstr "Platnost va¹eho heslo vypr¹í zítra.\n" + +#: libmisc/age.c:232 +msgid "Your password will expire today.\n" +msgstr "Platnost va¹eho heslo vypr¹í dnes.\n" + +#: libmisc/chowntty.c:110 +#, c-format +msgid "Unable to change tty %s" +msgstr "TTY %s nelze zmìnit." + +#: libmisc/env.c:160 +msgid "Environment overflow\n" +msgstr "Pøeteèení prostøedí\n" + +#: libmisc/env.c:200 +#, c-format +msgid "You may not change $%s\n" +msgstr "Nemù¾ete zmìnit $%s\n" + +#: libmisc/failure.c:238 +#, c-format +msgid "%d %s since last login. Last was %s on %s.\n" +msgstr "Poèet %2$s od posledního pøihlá¹ení: %1$d. Poslední: %3$s na %4$s\n" + +#: libmisc/failure.c:239 +msgid "failures" +msgstr "selhání" + +#: libmisc/failure.c:239 +msgid "failure" +msgstr "selhání" + +#: libmisc/limits.c:397 +msgid "Too many logins.\n" +msgstr "Pøíli¹ mnoho soubì¾ných pøihlá¹ení.\n" + +#: libmisc/login_desrpc.c:63 +#, c-format +msgid "Password does not decrypt secret key for %s.\n" +msgstr "Tímto heslem nelze de¹ifrovat tajný klíè pro %s.\n" + +#: libmisc/login_desrpc.c:69 +#, c-format +msgid "Could not set %s's secret key: is the keyserv daemon running?\n" +msgstr "Tajný klíè pro %s nelze nastavit. Je keyserv démon v provozu?\n" + +#: libmisc/mail.c:62 libmisc/mail.c:77 +msgid "You have new mail." +msgstr "Máte novou po¹tu." + +#: libmisc/mail.c:73 +msgid "No mail." +msgstr "Nemáte ¾ádnou po¹tu." + +#: libmisc/mail.c:75 +msgid "You have mail." +msgstr "Máte po¹tu." + +#: libmisc/obscure.c:281 src/passwd.c:309 +#, c-format +msgid "Bad password: %s. " +msgstr "Heslo %s je chybné. " + +#: libmisc/pam_pass.c:42 +#, c-format +msgid "passwd: pam_start() failed, error %d\n" +msgstr "passwd: volání pam_start() selhalo, chyba %d\n" + +#: libmisc/pam_pass.c:49 +#, c-format +msgid "passwd: %s\n" +msgstr "passwd: %s\n" + +#: libmisc/setupenv.c:205 +#, c-format +msgid "Unable to cd to \"%s\"\n" +msgstr "Nelze nastavit aktuální adresáø na \"%s\".\n" + +#: libmisc/setupenv.c:213 +msgid "No directory, logging in with HOME=/" +msgstr "®ádný adresáø, nastavuji HOME na /" + +#: libmisc/shell.c:78 +#, c-format +msgid "Executing shell %s\n" +msgstr "Spou¹tím shell %s.\n" + +#. +#. * Obviously something is really wrong - I can't figure out +#. * how to execute this stupid shell, so I might as well give +#. * up in disgust ... +#. +#: libmisc/shell.c:122 +#, c-format +msgid "Cannot execute %s" +msgstr "%s nelze spustit." + +#: libmisc/suauth.c:99 +msgid "Access to su to that account DENIED.\n" +msgstr "Z tohoto úètu je pøístup k su ZAKÁZÁN.\n" + +#: libmisc/suauth.c:106 +msgid "Password authentication bypassed.\n" +msgstr "Ovìøování heslem vynecháno.\n" + +#: libmisc/suauth.c:113 +msgid "Please enter your OWN password as authentication.\n" +msgstr "Pro ovìøení zadejte VA©E vlastní heslo.\n" + +#: libmisc/sub.c:61 +#, c-format +msgid "Invalid root directory \"%s\"\n" +msgstr "Chybný koøenový adresáø \"%s\"\n" + +#: libmisc/sub.c:73 +#, c-format +msgid "Can't change root directory to \"%s\"\n" +msgstr "Nelze nastavit koøenový adresáø na \"%s\".\n" + +#: libmisc/xmalloc.c:28 +#, c-format +msgid "malloc(%d) failed\n" +msgstr "volání malloc(%d) selhalo\n" + +#: lib/dialchk.c:71 +msgid "Dialup Password: " +msgstr "Heslo pro pøístup vytáèenou linkou:" + +#: lib/getdef.c:253 +msgid "Could not allocate space for config info.\n" +msgstr "Nemohu alokovat dostatek místa pro konfiguraèní údaje.\n" + +#. +#. * Item was never found. +#. +#: lib/getdef.c:307 +#, c-format +msgid "configuration error - unknown item '%s' (notify administrator)\n" +msgstr "" +"konfiguraèní chyba - neznámý pøedmìt '%s' (informujte správce systému)\n" + +#: lib/getdef.c:394 +#, c-format +msgid "error - lookup '%s' failed\n" +msgstr "chyba - hledání '%s' bylo neúspì¹né\n" + +#: lib/getdef.c:402 +#, c-format +msgid "%s not found\n" +msgstr "%s nenalezeno\n" + +#. +#. * get the password from her, and set the salt for +#. * the decryption from the group file. +#. +#: lib/pwauth.c:54 src/newgrp.c:305 +msgid "Password: " +msgstr "Heslo: " + +#: lib/pwauth.c:56 +#, c-format +msgid "%s's Password: " +msgstr "Heslo u¾ivatele %s:" + +#: lib/pwauth.c:270 +msgid "(Echo on) " +msgstr "(Echo zapnuto)" + +#: lib/strerror.c:20 +#, c-format +msgid "Unknown error %d" +msgstr "Neznámá chyba %d" + +#: src/chage.c:162 +#, c-format +msgid "" +"Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n" +" [ -I inactive ] [ -E expire ] [ -d last_day ] user\n" +msgstr "" +"Pou¾ití: %s [ -l ] [ -m min_dnù ] [ -M max_dnù ] [ -W varování ]\n" +" [ -I vypnutí ] [ -E vypr¹ení ] [ -d poslední den ] u¾ivatel\n" + +#: src/chage.c:164 +#, c-format +msgid "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n" +msgstr "" +"Pou¾ití: %s [ -l ] [ -m min_dnù ] [ -M max_dnù ] [ -d poslední den ] " +"u¾ivatel\n" + +#: src/chage.c:199 +msgid "" +"Enter the new value, or press return for the default\n" +"\n" +msgstr "" +"Zadejte novou hodnotu, nebo stisknìte return pro pou¾ití implicitní hodnoty\n" +"\n" + +#: src/chage.c:202 +msgid "Minimum Password Age" +msgstr "Minimální stáøí hesla" + +#: src/chage.c:207 +msgid "Maximum Password Age" +msgstr "maximální stáøí hesla" + +#: src/chage.c:213 +msgid "Last Password Change (YYYY-MM-DD)" +msgstr "Poslední zmìna hesla (YYYY-MM-DD)" + +#: src/chage.c:222 +msgid "Password Expiration Warning" +msgstr "Varování o vypr¹ení platnosti hesla" + +#: src/chage.c:227 +msgid "Password Inactive" +msgstr "Vypnuté heslo" + +#: src/chage.c:233 +msgid "Account Expiration Date (YYYY-MM-DD)" +msgstr "Vypr¹ení platnosti úètu (YYYY-MM-DD)" + +#. +#. * Start with the easy numbers - the number of days before the +#. * password can be changed, the number of days after which the +#. * password must be chaged, the number of days before the +#. * password expires that the user is told, and the number of +#. * days after the password expires that the account becomes +#. * unusable. +#. +#: src/chage.c:287 +#, c-format +msgid "Minimum:\t%ld\n" +msgstr "Minimum:\t%ld\n" + +#: src/chage.c:288 +#, c-format +msgid "Maximum:\t%ld\n" +msgstr "Maximum:\t%ld\n" + +#: src/chage.c:290 +#, c-format +msgid "Warning:\t%ld\n" +msgstr "Varování:\t%ld\n" + +#: src/chage.c:291 +#, c-format +msgid "Inactive:\t%ld\n" +msgstr "Vypnutí:\t%ld\n" + +#. +#. * The "last change" date is either "Never" or the date the +#. * password was last modified. The date is the number of +#. * days since 1/1/1970. +#. +#: src/chage.c:300 +msgid "Last Change:\t\t" +msgstr "Poslední zmìna:\t\t" + +#: src/chage.c:302 src/chage.c:316 src/chage.c:333 src/chage.c:346 +msgid "Never\n" +msgstr "Nikdy\n" + +#. +#. * The password expiration date is determined from the last +#. * change date plus the number of days the password is valid +#. * for. +#. +#: src/chage.c:314 +msgid "Password Expires:\t" +msgstr "Platnost hesla vypr¹í:\t" + +#. +#. * The account becomes inactive if the password is expired +#. * for more than "inactdays". The expiration date is calculated +#. * and the number of inactive days is added. The resulting date +#. * is when the active will be disabled. +#. +#: src/chage.c:330 +msgid "Password Inactive:\t" +msgstr "Vypnuté heslo:\t" + +#. +#. * The account will expire on the given date regardless of the +#. * password expiring or not. +#. +#: src/chage.c:344 +msgid "Account Expires:\t" +msgstr "Platnost hesla vypr¹í:\t" + +#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322 +#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738 +#: src/usermod.c:1684 +#, fuzzy, c-format +msgid "%s: PAM authentication failed\n" +msgstr "%s: chyba pøi vytváøení ovìøovací metody\n" + +#: src/chage.c:536 +#, c-format +msgid "%s: do not include \"l\" with other flags\n" +msgstr "%s: nepou¾ívejte \"l\" s ostatními pøíznaky\n" + +#: src/chage.c:548 src/chage.c:660 src/login.c:529 +#, c-format +msgid "%s: permission denied\n" +msgstr "%s: pøístup odmítnut\n" + +#: src/chage.c:560 src/chpasswd.c:170 +#, c-format +msgid "%s: can't lock password file\n" +msgstr "%s: soubor s hesly nelze zamknout\n" + +#: src/chage.c:566 src/chpasswd.c:174 +#, c-format +msgid "%s: can't open password file\n" +msgstr "%s: soubor s hesly nelze otevøít\n" + +#: src/chage.c:573 +#, c-format +msgid "%s: unknown user: %s\n" +msgstr "%s: u¾ivatel %s je neznámý\n" + +#: src/chage.c:592 +#, c-format +msgid "%s: can't lock shadow password file\n" +msgstr "%s: soubor se stínovými hesly nelze zamknout\n" + +#: src/chage.c:599 +#, c-format +msgid "%s: can't open shadow password file\n" +msgstr "%s: soubor se stínovými hesly nelze otevøít\n" + +#: src/chage.c:681 +#, c-format +msgid "Changing the aging information for %s\n" +msgstr "Mìním informace o u¾ivateli %s.\n" + +#: src/chage.c:683 +#, c-format +msgid "%s: error changing fields\n" +msgstr "%s: chyba pøi zmìnì polo¾ek\n" + +#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183 +#, c-format +msgid "%s: can't update password file\n" +msgstr "%s: soubor s hesly nelze aktualizovat\n" + +#: src/chage.c:740 src/pwunconv.c:178 +#, c-format +msgid "%s: can't update shadow password file\n" +msgstr "%s: soubor se stínovými hesly nelze aktualizovat\n" + +#: src/chage.c:789 src/chage.c:804 src/chfn.c:570 src/chsh.c:409 +#: src/passwd.c:825 src/passwd.c:926 +msgid "Error updating the DBM password entry.\n" +msgstr "Chyba pøi aktualizaci DBM databáze hesel.\n" + +#: src/chage.c:821 +#, c-format +msgid "%s: can't rewrite shadow password file\n" +msgstr "%s: soubor se stínovými hesly nelze pøepsat\n" + +#: src/chage.c:835 +#, c-format +msgid "%s: can't rewrite password file\n" +msgstr "%s: soubor s hesly nelze pøepsat\n" + +#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409 +#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903 +#: src/usermod.c:1762 +#, fuzzy, c-format +msgid "%s: PAM chauthtok failed\n" +msgstr "%s: nelze odemknout soubor\n" + +#: src/chage.c:905 +#, c-format +msgid "%s: no aging information present\n" +msgstr "%s: chybí informace\n" + +#: src/chfn.c:107 +#, c-format +msgid "" +"Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ]\n" +"\t[ -h home_ph ] [ -o other ] [ user ]\n" +msgstr "" +"Pou¾ití: %s [ -f jméno ] [ -r èíslo místnosti ] [ -w telefon do zamìstnání " +"]\n" +" [ -h telefon domù ] [ -o ostatní ] [ u¾ivatel ]\n" + +#: src/chfn.c:111 +#, c-format +msgid "" +"Usage: %s [ -f full_name ] [ -r room_no ] [ -w work_ph ] [ -h home_ph ]\n" +msgstr "" +"Pou¾ití: %s [ -f jméno ] [ -r èíslo místnosti ] [ -w telefon do zamìstnání " +"]\n" +" [ -h telefon domù ]\n" + +#: src/chfn.c:163 src/chsh.c:119 +msgid "Enter the new value, or press return for the default\n" +msgstr "" +"Zadejte novou hodnotu, nebo stisknìte return pro pou¾ití implicitní hodnoty\n" + +#: src/chfn.c:166 +msgid "Full Name" +msgstr "Celé jméno" + +#: src/chfn.c:168 +#, c-format +msgid "\tFull Name: %s\n" +msgstr "\tCelé jméno: %s\n" + +#: src/chfn.c:171 +msgid "Room Number" +msgstr "Èíslo místnosti" + +#: src/chfn.c:173 +#, c-format +msgid "\tRoom Number: %s\n" +msgstr "\tÈíslo místnosti: %s\n" + +#: src/chfn.c:176 +msgid "Work Phone" +msgstr "Telefon do zamìstnání" + +#: src/chfn.c:178 +#, c-format +msgid "\tWork Phone: %s\n" +msgstr "\tTelefon do zamìstnání: %s\n" + +#: src/chfn.c:181 +msgid "Home Phone" +msgstr "Telefon domù" + +#: src/chfn.c:183 +#, c-format +msgid "\tHome Phone: %s\n" +msgstr "\tTelefon domù: %s\n" + +#: src/chfn.c:186 +msgid "Other" +msgstr "Ostatní" + +#: src/chfn.c:298 src/chfn.c:306 src/chfn.c:314 src/chfn.c:322 src/chfn.c:330 +#: src/chfn.c:391 src/passwd.c:1226 +#, c-format +msgid "%s: Permission denied.\n" +msgstr "%s: pøístup odmítnut\n" + +#: src/chfn.c:351 src/chsh.c:224 src/passwd.c:1277 +#, c-format +msgid "%s: Unknown user %s\n" +msgstr "%s: u¾ivatel %s je neznámý\n" + +#: src/chfn.c:357 src/chsh.c:232 src/passwd.c:1207 +#, c-format +msgid "%s: Cannot determine your user name.\n" +msgstr "%s: va¹e u¾ivatelské jméno nelze zjistit\n" + +#: src/chfn.c:373 src/chsh.c:250 +#, c-format +msgid "%s: cannot change user `%s' on NIS client.\n" +msgstr "%s: u¾ivatele `%s' nelze na NIS klientu zmìnit\n" + +#: src/chfn.c:378 src/chsh.c:257 +#, c-format +msgid "%s: `%s' is the NIS master for this client.\n" +msgstr "%s: `%s' je hlavním NIS serverem pro tohoto klienta\n" + +#: src/chfn.c:453 +#, c-format +msgid "Changing the user information for %s\n" +msgstr "Mìním informace o u¾ivateli %s\n" + +#: src/chfn.c:462 +#, c-format +msgid "%s: invalid name: \"%s\"\n" +msgstr "%s: jméno (\"%s\") je chybné\n" + +#: src/chfn.c:467 +#, c-format +msgid "%s: invalid room number: \"%s\"\n" +msgstr "%s: èíslo místnosti (\"%s\") je chybné\n" + +#: src/chfn.c:472 +#, c-format +msgid "%s: invalid work phone: \"%s\"\n" +msgstr "%s: telefonní èíslo do zamìstnání (\"%s\") je chybné\n" + +#: src/chfn.c:477 +#, c-format +msgid "%s: invalid home phone: \"%s\"\n" +msgstr "%s: telefonní èíslo domù (\"%s\") je chybné\n" + +#: src/chfn.c:482 +#, c-format +msgid "%s: \"%s\" contains illegal characters\n" +msgstr "%s: \"%s\" obsahuje chybné znaky\n" + +#: src/chfn.c:494 +#, c-format +msgid "%s: fields too long\n" +msgstr "%s: polo¾ka je pøíli¹ dlouhá\n" + +#: src/chfn.c:509 src/chsh.c:347 src/gpasswd.c:582 src/passwd.c:1388 +msgid "Cannot change ID to root.\n" +msgstr "Nelze zmìnit ID na root.\n" + +#: src/chfn.c:522 src/chsh.c:361 src/passwd.c:735 src/passwd.c:880 +msgid "Cannot lock the password file; try again later.\n" +msgstr "Nelze zamknout soubor s hesly; zkuste to pozdìji.\n" + +#: src/chfn.c:528 src/chsh.c:367 src/passwd.c:740 src/passwd.c:885 +msgid "Cannot open the password file.\n" +msgstr "Soubor s hesly nelze otevøít.\n" + +#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319 +#, c-format +msgid "%s: %s not found in /etc/passwd\n" +msgstr "%s: %s se v /etc/passwd nenalézá\n" + +#: src/chfn.c:562 src/chsh.c:401 src/passwd.c:819 src/passwd.c:920 +#: src/passwd.c:960 +msgid "Error updating the password entry.\n" +msgstr "Chyba pøi aktualizaci polo¾ky v souboru s hesly.\n" + +#: src/chfn.c:585 src/chsh.c:424 src/passwd.c:832 src/passwd.c:933 +msgid "Cannot commit password file changes.\n" +msgstr "Nelze provést zmìny v souboru s hesly.\n" + +#: src/chfn.c:592 src/chsh.c:431 +msgid "Cannot unlock the password file.\n" +msgstr "Soubor s hesly nelze odemknout.\n" + +#: src/chpasswd.c:82 +#, c-format +msgid "usage: %s [-e]\n" +msgstr "Pou¾ití: %s [-e]\n" + +#: src/chpasswd.c:182 src/pwconv.c:104 +#, c-format +msgid "%s: can't lock shadow file\n" +msgstr "%s: soubor se stínovými hesly nelze zamknout\n" + +#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 +#: src/pwunconv.c:123 +#, c-format +msgid "%s: can't open shadow file\n" +msgstr "%s: soubor se stínovými hesly nelze otevøít\n" + +#: src/chpasswd.c:209 src/newusers.c:465 +#, c-format +msgid "%s: line %d: line too long\n" +msgstr "%s: øádek %d je pøíli¹ dlouhý\n" + +#: src/chpasswd.c:229 +#, c-format +msgid "%s: line %d: missing new password\n" +msgstr "%s: øádek %d: chybí nové heslo\n" + +#: src/chpasswd.c:245 +#, c-format +msgid "%s: line %d: unknown user %s\n" +msgstr "%s: øádek %d: u¾ivatel %s je neznámý\n" + +#: src/chpasswd.c:297 +#, c-format +msgid "%s: line %d: cannot update password entry\n" +msgstr "%s: øádek %d: polo¾ku v souboru s hesly nelze aktualizovat\n" + +#: src/chpasswd.c:313 src/newusers.c:585 +#, c-format +msgid "%s: error detected, changes ignored\n" +msgstr "%s: chyba, zmìny budou ignorovány\n" + +#: src/chpasswd.c:324 +#, c-format +msgid "%s: error updating shadow file\n" +msgstr "%s: chyba pøi aktualizaci souboru se stínovými hesly\n" + +#: src/chpasswd.c:332 +#, c-format +msgid "%s: error updating password file\n" +msgstr "%s: chyba pøi aktualizaci souboru s hesly\n" + +#: src/chsh.c:105 +#, c-format +msgid "Usage: %s [ -s shell ] [ name ]\n" +msgstr "Pou¾ití: %s [ -s shell ] [ jméno ]\n" + +#: src/chsh.c:120 +msgid "Login Shell" +msgstr "Implicitní shell" + +#: src/chsh.c:273 src/chsh.c:286 +#, c-format +msgid "You may not change the shell for %s.\n" +msgstr "Nemù¾ete zmìnit shell pro %s.\n" + +#: src/chsh.c:315 +#, c-format +msgid "Changing the login shell for %s\n" +msgstr "Mìním implicitní shell pro %s\n" + +#: src/chsh.c:327 +#, c-format +msgid "%s: Invalid entry: %s\n" +msgstr "%s: chybná polo¾ka %s\n" + +#: src/chsh.c:332 +#, c-format +msgid "%s is an invalid shell.\n" +msgstr "Shell %s je chybný.\n" + +#: src/dpasswd.c:69 +#, c-format +msgid "Usage: %s [ -(a|d) ] shell\n" +msgstr "Pou¾ití: %s [ -(ald) ] shell\n" + +#: src/dpasswd.c:134 +msgid "Shell password: " +msgstr "Heslo shellu: " + +#: src/dpasswd.c:140 +msgid "re-enter Shell password: " +msgstr "zadejte znovu heslo shellu: " + +#: src/dpasswd.c:147 +#, c-format +msgid "%s: Passwords do not match, try again.\n" +msgstr "%s: hesla se li¹í, zkuste to znovu\n" + +#: src/dpasswd.c:167 +#, c-format +msgid "%s: can't create %s" +msgstr "%s: %s nelze vytvoøit" + +#: src/dpasswd.c:172 +#, c-format +msgid "%s: can't open %s" +msgstr "%s: %s nelze otevøít" + +#: src/dpasswd.c:200 +#, c-format +msgid "%s: Shell %s not found.\n" +msgstr "%s: Shell %s nebyl nalezen.\n" + +#: src/expiry.c:84 +msgid "Usage: expiry { -f | -c }\n" +msgstr "Pou¾ití: expiry { -f | -c }\n" + +#: src/expiry.c:137 +#, c-format +msgid "%s: WARNING! Must be set-UID root!\n" +msgstr "%s: VAROVÁNÍ! Musí mít oprávnìní superu¾ivatele!\n" + +#: src/expiry.c:148 +#, c-format +msgid "%s: unknown user\n" +msgstr "%s: neznámý u¾ivatel\n" + +#: src/faillog.c:79 +#, c-format +msgid "usage: %s [-a|-u user] [-m max] [-r] [-t days] [-l locksecs]\n" +msgstr "Pou¾ití: %s [-a|-u u¾ivatel] [-m max] [-r] [-t dny] [-l zamkn sek]\n" + +#: src/faillog.c:134 src/lastlog.c:94 +#, c-format +msgid "Unknown User: %s\n" +msgstr "U¾ivatel %s je neznámý.\n" + +#: src/faillog.c:215 +msgid "Username Failures Maximum Latest\n" +msgstr "Jméno Chyb Maximum Poslední\n" + +#: src/faillog.c:232 +#, c-format +msgid " %s on %s" +msgstr " %s on %s" + +#: src/faillog.c:236 +#, c-format +msgid " [%lds left]" +msgstr " [%lds zbylo]" + +#: src/faillog.c:239 +#, c-format +msgid " [%lds lock]" +msgstr " [%lds zámek]" + +#: src/gpasswd.c:89 +#, c-format +msgid "usage: %s [-r|-R] group\n" +msgstr "Pou¾ití: %s [r|-R] skupina\n" + +#: src/gpasswd.c:90 +#, c-format +msgid " %s [-a user] group\n" +msgstr " %s [-a u¾ivatel] skupina\n" + +#: src/gpasswd.c:91 +#, c-format +msgid " %s [-d user] group\n" +msgstr " %s [-d u¾ivatel] skupina\n" + +#: src/gpasswd.c:93 +#, c-format +msgid " %s [-A user,...] [-M user,...] group\n" +msgstr " %s [-A u¾ivatel,...] [-M u¾ivatel,...] skupina\n" + +#: src/gpasswd.c:96 +#, c-format +msgid " %s [-M user,...] group\n" +msgstr " %s [-M u¾ivatel,...] skupina\n" + +#: src/gpasswd.c:160 src/gpasswd.c:245 +#, c-format +msgid "%s: unknown user %s\n" +msgstr "%s: u¾ivatel %s je neznámý\n" + +#: src/gpasswd.c:172 +msgid "Permission denied.\n" +msgstr "Pøístup odmítnut.\n" + +#: src/gpasswd.c:257 +#, c-format +msgid "%s: shadow group passwords required for -A\n" +msgstr "%s: pøepínaè -A funguje pouze se stínovými hesly skupin\n" + +#: src/gpasswd.c:308 +msgid "Who are you?\n" +msgstr "Kdo jste?\n" + +#: src/gpasswd.c:328 src/newgrp.c:251 +#, c-format +msgid "unknown group: %s\n" +msgstr "skupina %s je neznámá\n" + +#: src/gpasswd.c:436 +#, c-format +msgid "Adding user %s to group %s\n" +msgstr "Pøidávám u¾ivatele %s do skupiny %s.\n" + +#: src/gpasswd.c:453 +#, c-format +msgid "Removing user %s from group %s\n" +msgstr "Odstraòuji u¾ivatele %s ze skupiny %s\n" + +#: src/gpasswd.c:466 +#, c-format +msgid "%s: unknown member %s\n" +msgstr "%s: èlen %s je neznámý\n" + +#: src/gpasswd.c:513 +#, c-format +msgid "%s: Not a tty\n" +msgstr "%s: Nejedná se o tty\n" + +#. +#. * A new password is to be entered and it must be encrypted, +#. * etc. The password will be prompted for twice, and both +#. * entries must be identical. There is no need to validate +#. * the old password since the invoker is either the group +#. * owner, or root. +#. +#: src/gpasswd.c:535 +#, c-format +msgid "Changing the password for group %s\n" +msgstr "Mìním heslo skupiny %s\n" + +#: src/gpasswd.c:538 +msgid "New Password: " +msgstr "Nové heslo: " + +#: src/gpasswd.c:543 src/passwd.c:422 +msgid "Re-enter new password: " +msgstr "Zadejte opìt nové heslo: " + +#: src/gpasswd.c:555 +msgid "They don't match; try again" +msgstr "Neshodují se; zkuste to opìt" + +#: src/gpasswd.c:559 +#, c-format +msgid "%s: Try again later\n" +msgstr "%s: Zkuste to pozdìji\n" + +#: src/gpasswd.c:590 +#, c-format +msgid "%s: can't get lock\n" +msgstr "%s: nelze získat zámek\n" + +#: src/gpasswd.c:596 +#, c-format +msgid "%s: can't get shadow lock\n" +msgstr "%s: nelze získat zámek pro soubor se stínovými hesly\n" + +#: src/gpasswd.c:602 +#, c-format +msgid "%s: can't open file\n" +msgstr "%s: nelze otevøít soubor\n" + +#: src/gpasswd.c:614 +#, c-format +msgid "%s: can't update entry\n" +msgstr "%s: nelze aktualizovat polo¾ku\n" + +#: src/gpasswd.c:620 +#, c-format +msgid "%s: can't update shadow entry\n" +msgstr "%s: nelze aktualizovat polo¾ku souboru se stínovými hesly\n" + +#: src/gpasswd.c:626 +#, c-format +msgid "%s: can't re-write file\n" +msgstr "%s: nelze pøepsat soubor\n" + +#: src/gpasswd.c:632 +#, c-format +msgid "%s: can't re-write shadow file\n" +msgstr "%s: nelze pøepsat soubor se stínovými hesly\n" + +#: src/gpasswd.c:640 +#, c-format +msgid "%s: can't unlock file\n" +msgstr "%s: nelze odemknout soubor\n" + +#: src/gpasswd.c:645 +#, c-format +msgid "%s: can't update DBM files\n" +msgstr "%s: nelze aktualizovat soubory s DBM databázemi\n" + +#: src/gpasswd.c:652 +#, c-format +msgid "%s: can't update DBM shadow files\n" +msgstr "%s: nelze aktualizovat soubory s DBM databázemi stínových hesel\n" + +#: src/groupadd.c:111 +msgid "usage: groupadd [-g gid [-o]] group\n" +msgstr "Pou¾ití: groupadd [-g gid [-o]] skupina\n" + +#: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236 +#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681 +#, c-format +msgid "%s: error adding new group entry\n" +msgstr "%s: chyba pøi pøidávání polo¾ky souboru se skupinami\n" + +#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948 +#: src/usermod.c:557 src/usermod.c:693 +#, c-format +msgid "%s: cannot add new dbm group entry\n" +msgstr "%s: nelze pøidat polo¾ku do souboru s dbm databází skupin\n" + +#: src/groupadd.c:264 src/useradd.c:1002 +#, c-format +msgid "%s: name %s is not unique\n" +msgstr "%s: jméno %s není jedineèné\n" + +#: src/groupadd.c:279 +#, c-format +msgid "%s: gid %ld is not unique\n" +msgstr "%s: gid %ld není jedineèné\n" + +#: src/groupadd.c:303 +#, c-format +msgid "%s: can't get unique gid\n" +msgstr "%s: nelze vytvoøit jedineèné gid\n" + +#. +#. * All invalid group names land here. +#. +#: src/groupadd.c:327 src/groupmod.c:347 +#, c-format +msgid "%s: %s is a not a valid group name\n" +msgstr "%s: %s není platným jménem skupiny\n" + +#: src/groupadd.c:356 src/groupmod.c:373 +#, c-format +msgid "%s: invalid group %s\n" +msgstr "%s: chybná skupina %s\n" + +#: src/groupadd.c:373 src/useradd.c:1278 +#, c-format +msgid "%s: -O requires NAME=VALUE\n" +msgstr "%s: pøepínaè -O vy¾aduje argument typu JMÉNO=HODNOTA\n" + +#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387 +#: src/userdel.c:309 src/usermod.c:569 +#, c-format +msgid "%s: cannot rewrite group file\n" +msgstr "%s: soubor se skupinami nelze pøepsat\n" + +#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395 +#: src/userdel.c:315 src/usermod.c:706 +#, c-format +msgid "%s: cannot rewrite shadow group file\n" +msgstr "%s: soubor se stínovými skupinami nelze pøepsat\n" + +#: src/groupadd.c:443 src/groupdel.c:198 src/groupmod.c:434 src/userdel.c:395 +#, c-format +msgid "%s: unable to lock group file\n" +msgstr "%s: soubor se skupinami nelze zamknout\n" + +#: src/groupadd.c:447 src/groupdel.c:202 src/groupmod.c:438 +#, c-format +msgid "%s: unable to open group file\n" +msgstr "%s: soubor se skupinami nelze otevøít\n" + +#: src/groupadd.c:452 src/groupdel.c:207 src/groupmod.c:443 src/userdel.c:404 +#, c-format +msgid "%s: unable to lock shadow group file\n" +msgstr "%s: soubor se stínovými skupinami nelze zamknout\n" + +#: src/groupadd.c:457 src/groupdel.c:212 src/groupmod.c:448 +#, c-format +msgid "%s: unable to open shadow group file\n" +msgstr "%s: soubor se stínovými skupinami nelze otevøít\n" + +#: src/groupadd.c:568 +#, c-format +msgid "%s: group %s exists\n" +msgstr "%s: skupina %s ji¾ existuje\n" + +#: src/groupdel.c:92 +msgid "usage: groupdel group\n" +msgstr "Pou¾ití: groupdel skupina\n" + +#: src/groupdel.c:110 src/groupmod.c:193 src/groupmod.c:240 +#, c-format +msgid "%s: error removing group entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru se skupinami\n" + +#: src/groupdel.c:122 src/groupmod.c:212 +#, c-format +msgid "%s: error removing group dbm entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru s dbm databází skupin\n" + +#: src/groupdel.c:137 +#, c-format +msgid "%s: error removing shadow group entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru se stínovými skupinami\n" + +#: src/groupdel.c:150 src/groupmod.c:258 +#, c-format +msgid "%s: error removing shadow group dbm entry\n" +msgstr "" +"%s: chyba pøi odstraòování polo¾ky ze souboru s dbm databází stínových " +"skupin\n" + +#. +#. * Can't remove the group. +#. +#: src/groupdel.c:254 +#, c-format +msgid "%s: cannot remove user's primary group.\n" +msgstr "%s: primární skupinu u¾ivatele nelze odstranit\n" + +#: src/groupdel.c:355 src/groupmod.c:551 +#, c-format +msgid "%s: group %s does not exist\n" +msgstr "%s: skupina %s neexistuje\n" + +#: src/groupdel.c:369 src/groupmod.c:567 +#, c-format +msgid "%s: group %s is a NIS group\n" +msgstr "%s: skupina %s je NIS skupinou\n" + +#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022 +#, c-format +msgid "%s: %s is the NIS master\n" +msgstr "%s: %s je hlavním NIS serverem\n" + +#: src/groupmod.c:111 +msgid "usage: groupmod [-g gid [-o]] [-n name] group\n" +msgstr "Pou¾ití: groupmod [-g gid [-o]] [-n jméno] skupina\n" + +#: src/groupmod.c:171 +#, c-format +msgid "%s: %s not found in /etc/group\n" +msgstr "%s: %s se v /etc/group nenalézá\n" + +#: src/groupmod.c:252 +#, c-format +msgid "%s: cannot add new dbm shadow group entry\n" +msgstr "%s: nelze pøidat polo¾ku do souboru s dbm databází stínových skupin\n" + +#: src/groupmod.c:305 +#, c-format +msgid "%s: %ld is not a unique gid\n" +msgstr "%s: gid %ld není jedineèné\n" + +#: src/groupmod.c:336 +#, c-format +msgid "%s: %s is not a unique name\n" +msgstr "%s: jméno %s není jedineèné\n" + +#: src/groups.c:62 +#, c-format +msgid "unknown user %s\n" +msgstr "u¾ivatel %s je neznámý\n" + +#: src/grpck.c:98 +#, c-format +msgid "Usage: %s [ -r ] [ group [ gshadow ] ]\n" +msgstr "" +"Pou¾ití: %s [ -r ] [ soubor se skupinami [ soubor se stínovými skupinami ] " +"]\n" + +#: src/grpck.c:100 +#, c-format +msgid "Usage: %s [ -r ] [ group ]\n" +msgstr "Usage: %s [ -r ] [ soubor se skupinami ]\n" + +#: src/grpck.c:119 src/pwck.c:119 +msgid "No" +msgstr "Ne" + +#: src/grpck.c:234 src/grpck.c:242 src/pwck.c:216 src/pwck.c:225 +#, c-format +msgid "%s: cannot lock file %s\n" +msgstr "%s: soubor %s nelze zamknout\n" + +#: src/grpck.c:257 src/grpck.c:265 src/mkpasswd.c:216 src/pwck.c:241 +#: src/pwck.c:250 +#, c-format +msgid "%s: cannot open file %s\n" +msgstr "%s: soubor %s nelze otevøít\n" + +#. +#. * Tell the user this entire line is bogus and +#. * ask them to delete it. +#. +#: src/grpck.c:298 +msgid "invalid group file entry\n" +msgstr "chybná polo¾ka v souboru se skupinami\n" + +#: src/grpck.c:299 src/grpck.c:362 src/grpck.c:454 src/grpck.c:517 +#: src/grpck.c:534 src/pwck.c:286 src/pwck.c:348 src/pwck.c:455 src/pwck.c:517 +#: src/pwck.c:541 +#, c-format +msgid "delete line `%s'? " +msgstr "smazat øádek `%s'?" + +#. +#. * Tell the user this entry is a duplicate of +#. * another and ask them to delete it. +#. +#: src/grpck.c:361 +msgid "duplicate group entry\n" +msgstr "tato polo¾ka se v souboru se skupinami vyskytuje vícekrát\n" + +#: src/grpck.c:378 +#, c-format +msgid "invalid group name `%s'\n" +msgstr "jméno skupiny `%s' je chybné\n" + +#: src/grpck.c:388 +#, c-format +msgid "group %s: bad GID (%d)\n" +msgstr "skupina %s: chybné GID (%d)\n" + +#: src/grpck.c:414 +#, c-format +msgid "group %s: no user %s\n" +msgstr "skupina %s: u¾ivatel %s neexistuje\n" + +#: src/grpck.c:416 src/grpck.c:585 +#, c-format +msgid "delete member `%s'? " +msgstr "smazat èlena `%s'? " + +#. +#. * Tell the user this entire line is bogus and +#. * ask them to delete it. +#. +#: src/grpck.c:453 +msgid "invalid shadow group file entry\n" +msgstr "chybná polo¾ka v souboru se stínovými skupinami\n" + +#. +#. * Tell the user this entry is a duplicate of +#. * another and ask them to delete it. +#. +#: src/grpck.c:516 +msgid "duplicate shadow group entry\n" +msgstr "duplikovaná polo¾ka v souboru se stínovými skupinami\n" + +#: src/grpck.c:533 +msgid "no matching group file entry\n" +msgstr "v souboru se skupinami neexistuje odpovídající polo¾ka\n" + +#: src/grpck.c:553 +#, c-format +msgid "shadow group %s: no administrative user %s\n" +msgstr "stínová skupina %s: administrátor %s neexistuje\n" + +#: src/grpck.c:555 +#, c-format +msgid "delete administrative member `%s'? " +msgstr "smazat administrátora `%s'? " + +#: src/grpck.c:583 +#, c-format +msgid "shadow group %s: no user %s\n" +msgstr "stínová skupina %s: u¾ivatel %s neexistuje\n" + +#: src/grpck.c:610 src/grpck.c:616 src/pwck.c:572 src/pwck.c:580 +#, c-format +msgid "%s: cannot update file %s\n" +msgstr "%s: soubor %s nelze aktualizovat\n" + +#: src/grpck.c:640 src/pwck.c:606 +#, c-format +msgid "%s: the files have been updated; run mkpasswd\n" +msgstr "%s: soubory byly aktualizovány; spus»te mkpasswd\n" + +#: src/grpck.c:641 src/grpck.c:645 src/pwck.c:607 src/pwck.c:611 +#, c-format +msgid "%s: no changes\n" +msgstr "%s: ¾ádné zmìny nebyly provedeny\n" + +#: src/grpck.c:644 src/pwck.c:610 +#, c-format +msgid "%s: the files have been updated\n" +msgstr "%s: soubory byly aktualizovány\n" + +#: src/grpconv.c:62 src/grpunconv.c:63 +#, c-format +msgid "%s: can't lock group file\n" +msgstr "%s: soubor se skupinami nelze zamknout\n" + +#: src/grpconv.c:67 src/grpunconv.c:68 +#, c-format +msgid "%s: can't open group file\n" +msgstr "%s: soubor se skupinami nelze otevøít\n" + +#: src/grpconv.c:72 src/grpunconv.c:73 +#, c-format +msgid "%s: can't lock shadow group file\n" +msgstr "%s: soubor se stínovými skupinami nelze zamknout\n" + +#: src/grpconv.c:77 src/grpunconv.c:78 +#, c-format +msgid "%s: can't open shadow group file\n" +msgstr "%s: soubor se stínovými skupinami nelze otevøít\n" + +#. +#. * This shouldn't happen (the entry exists) but... +#. +#: src/grpconv.c:93 +#, c-format +msgid "%s: can't remove shadow group %s\n" +msgstr "%s: polo¾ku stínové skupiny %s nelze odstranit\n" + +#: src/grpconv.c:134 src/pwconv.c:160 +#, c-format +msgid "%s: can't update shadow entry for %s\n" +msgstr "%s: polo¾ku %s souboru se stínovými hesly nelze aktualizovat\n" + +#: src/grpconv.c:143 src/grpunconv.c:94 +#, c-format +msgid "%s: can't update entry for group %s\n" +msgstr "%s: polo¾ku skupiny %s nelze odstranit\n" + +#: src/grpconv.c:150 src/grpunconv.c:102 +#, c-format +msgid "%s: can't update shadow group file\n" +msgstr "%s: soubor se stínovými hesly nelze aktualizovat\n" + +#: src/grpconv.c:154 src/grpunconv.c:107 +#, c-format +msgid "%s: can't update group file\n" +msgstr "%s: soubor s hesly nelze aktualizovat\n" + +#: src/grpconv.c:169 src/grpunconv.c:128 +#, c-format +msgid "%s: not configured for shadow group support.\n" +msgstr "%s: podpora pro stínová hesla skupin není nakonfigurována\n" + +#: src/grpunconv.c:112 +#, c-format +msgid "%s: can't delete shadow group file\n" +msgstr "%s: soubor se stínovými hesly skupin nelze smazat\n" + +#: src/id.c:56 +msgid "usage: id [ -a ]\n" +msgstr "Pou¾ití: id [ -a ]\n" + +#: src/id.c:58 +msgid "usage: id\n" +msgstr "Pou¾ití: id\n" + +#: src/id.c:118 +#, c-format +msgid "uid=%d(%s)" +msgstr "uid=%d(%s)" + +#: src/id.c:120 +#, c-format +msgid "uid=%d" +msgstr "uid=%d" + +#: src/id.c:124 +#, c-format +msgid " gid=%d(%s)" +msgstr " gid=%d(%s)" + +#: src/id.c:126 +#, c-format +msgid " gid=%d" +msgstr " gid=%d" + +#: src/id.c:136 +#, c-format +msgid " euid=%d(%s)" +msgstr " euid=%d(%s)" + +#: src/id.c:138 +#, c-format +msgid " euid=%d" +msgstr " euid=%d" + +#: src/id.c:143 +#, c-format +msgid " egid=%d(%s)" +msgstr " egid=%d(%s)" + +#: src/id.c:145 +#, c-format +msgid " egid=%d" +msgstr " egid=%d" + +#. +#. * Start off the group message. It will be of the format +#. * +#. * groups=###(aaa),###(aaa),###(aaa) +#. * +#. * where "###" is a numerical value and "aaa" is the +#. * corresponding name for each respective numerical value. +#. +#: src/id.c:166 +msgid " groups=" +msgstr " skupiny=" + +#: src/lastlog.c:167 +msgid "Username Port From Latest\n" +msgstr "U¾ivatel Port Z Naposledy\n" + +#: src/lastlog.c:169 +msgid "Username Port Latest\n" +msgstr "U¾ivatel Port Naposledy\n" + +#: src/lastlog.c:183 +msgid "**Never logged in**" +msgstr "**Nikdy nebyl pøihlá¹en**" + +#: src/login.c:198 +#, c-format +msgid "usage: %s [-p] [name]\n" +msgstr "Pou¾ití: %s [-p] jméno\n" + +#: src/login.c:201 +#, c-format +msgid " %s [-p] [-h host] [-f name]\n" +msgstr " %s [-p] [-h poèítaè] [-f jméno]\n" + +#: src/login.c:203 +#, c-format +msgid " %s [-p] -r host\n" +msgstr " %s [-p] -r poèítaè\n" + +#: src/login.c:286 +msgid "Invalid login time\n" +msgstr "Chybný èas pøihlá¹ení\n" + +#: src/login.c:341 +msgid "" +"\n" +"System closed for routine maintenance\n" +msgstr "" +"\n" +"Systém byl uzavøen kvùli pravidelné údr¾bì.\n" + +#: src/login.c:351 +msgid "" +"\n" +"[Disconnect bypassed -- root login allowed.]\n" +msgstr "" +"\n" +"[Odpojení pøeskoèeno -- u¾ivatel root smí být pøihlá¹en.]\n" + +#: src/login.c:390 +#, c-format +msgid "" +"\n" +"Login timed out after %d seconds.\n" +msgstr "" +"\n" +"Vypr¹el èasový limit (%d vteøin) pro pøihlá¹ení.\n" + +#: src/login.c:692 +#, c-format +msgid " on `%.100s' from `%.200s'" +msgstr " na `%.100s' z `%.200s'" + +#: src/login.c:694 +#, c-format +msgid " on `%.100s'" +msgstr " na `%.100s'" + +#: src/login.c:834 +#, c-format +msgid "" +"\n" +"%s login: " +msgstr "" +"\n" +"Pøihla¹ovací jméno na %s: " + +#: src/login.c:836 +msgid "login: " +msgstr "Pøihla¹ovací jméno: " + +#: src/login.c:1026 src/sulogin.c:231 +msgid "Login incorrect" +msgstr "Chybné pøihlá¹ení" + +#: src/login.c:1213 +msgid "Warning: login re-enabled after temporary lockout.\n" +msgstr "Varování: po doèasném zákazu je pøihla¹ování opìt povoleno\n" + +#: src/login.c:1223 +#, c-format +msgid "Last login: %s on %s" +msgstr "Poslední pøihlá¹ení: %s na %s" + +#: src/login.c:1226 +#, c-format +msgid "Last login: %.19s on %s" +msgstr "Poslední pøihlá¹ení: %.19s na %s" + +#: src/login.c:1231 +#, c-format +msgid " from %.*s" +msgstr " z %.*s" + +#: src/login.c:1303 +msgid "Starting rad_login\n" +msgstr "Spou¹tím rad_login\n" + +#: src/mkpasswd.c:49 +#, c-format +msgid "%s: no DBM database on system - no action performed\n" +msgstr "%s: systém neobsahuje ¾ádnou DBM databázi - není co dìlat\n" + +#: src/mkpasswd.c:245 src/mkpasswd.c:249 +#, c-format +msgid "%s: cannot overwrite file %s\n" +msgstr "%s: soubor %s nelze pøepsat\n" + +#: src/mkpasswd.c:263 +#, c-format +msgid "%s: cannot open DBM files for %s\n" +msgstr "%s: soubory s DBM databázemi pro %s nelze otevøít\n" + +#: src/mkpasswd.c:296 +#, c-format +msgid "%s: the beginning with " +msgstr "%s: zaèátek s " + +#: src/mkpasswd.c:321 +#, c-format +msgid "%s: error parsing line \"%s\"\n" +msgstr "%s: chyba pøi zpracování øádku \"%s\"\n" + +#: src/mkpasswd.c:326 src/mkpasswd.c:328 src/mkpasswd.c:330 src/mkpasswd.c:332 +msgid "adding record for name " +msgstr "pøidávám záznam pro jméno" + +#: src/mkpasswd.c:336 src/mkpasswd.c:341 src/mkpasswd.c:345 src/mkpasswd.c:349 +#, c-format +msgid "%s: error adding record for " +msgstr "%s: chyba pøi zadávání záznamu pro jméno " + +#: src/mkpasswd.c:367 +#, c-format +msgid "added %d entries, longest was %d\n" +msgstr "poèet pøidaných polo¾ek: %d; délka nejvìt¹í: %d\n" + +#: src/mkpasswd.c:382 +#, c-format +msgid "Usage: %s [ -vf ] [ -p|g|sp|sg ] file\n" +msgstr "Pou¾ití: %s [ -vf ] [ -p|g|sp|sg ] soubor\n" + +#: src/mkpasswd.c:384 +#, c-format +msgid "Usage: %s [ -vf ] [ -p|g|sp ] file\n" +msgstr "Pou¾ití: %s [ -vf ] [ -p|g|sp ] soubor\n" + +#: src/mkpasswd.c:387 +#, c-format +msgid "Usage: %s [ -vf ] [ -p|g ] file\n" +msgstr "Pou¾ití: %s [ -vf ] [ -p|g ] soubor\n" + +#: src/newgrp.c:66 +msgid "usage: newgrp [ - ] [ group ]\n" +msgstr "Pou¾ití: newgrp [ - ] [ skupina ]\n" + +#: src/newgrp.c:68 +msgid "usage: sg group [[-c] command ]\n" +msgstr "Pou¾ití: sg skupina [[-c] pøíkaz ]\n" + +#: src/newgrp.c:125 +#, c-format +msgid "unknown uid: %d\n" +msgstr "uid %d je neznámé\n" + +#: src/newgrp.c:201 +#, c-format +msgid "unknown gid: %ld\n" +msgstr "gid %ld je neznámé\n" + +#: src/newgrp.c:245 +#, c-format +msgid "unknown gid: %d\n" +msgstr "gid %d je neznámé\n" + +#: src/newgrp.c:323 src/newgrp.c:332 +msgid "Sorry.\n" +msgstr "Lituji.\n" + +#: src/newgrp.c:364 +msgid "too many groups\n" +msgstr "pøíli¹ mnoho skupin\n" + +#: src/newusers.c:82 +#, c-format +msgid "Usage: %s [ input ]\n" +msgstr "Pou¾ití: %s [ vstup ]\n" + +#: src/newusers.c:414 +#, c-format +msgid "%s: can't lock /etc/passwd.\n" +msgstr "%s: soubor /etc/passwd nelze zamknout\n" + +#: src/newusers.c:425 +#, c-format +msgid "%s: can't lock files, try again later\n" +msgstr "%s: soubory nelze zamknout. Zkuste to opìt pozdìji.\n" + +#: src/newusers.c:440 +#, c-format +msgid "%s: can't open files\n" +msgstr "%s: soubory nelze otevøít\n" + +#: src/newusers.c:485 +#, c-format +msgid "%s: line %d: invalid line\n" +msgstr "%s: øádek %d: chybný øádek\n" + +#: src/newusers.c:503 +#, c-format +msgid "%s: line %d: can't create GID\n" +msgstr "%s: øádek %d: nelze vytvoøit GID\n" + +#: src/newusers.c:519 +#, c-format +msgid "%s: line %d: can't create UID\n" +msgstr "%s: øádek %d: nelze vytvoøit UID\n" + +#: src/newusers.c:531 +#, c-format +msgid "%s: line %d: cannot find user %s\n" +msgstr "%s: øádek %d: u¾ivatele %s nelze nalézt\n" + +#: src/newusers.c:539 +#, c-format +msgid "%s: line %d: can't update password\n" +msgstr "%s: øádek %d: heslo nelze aktualizovat\n" + +#: src/newusers.c:556 +#, c-format +msgid "%s: line %d: mkdir failed\n" +msgstr "%s: øádek %d: volání mkdir selhalo\n" + +#: src/newusers.c:560 +#, c-format +msgid "%s: line %d: chown failed\n" +msgstr "%s: øádek %d: volání chown selhalo\n" + +#: src/newusers.c:569 +#, c-format +msgid "%s: line %d: can't update entry\n" +msgstr "%s: øádek %d: polo¾ku nelze aktualizovat\n" + +#: src/newusers.c:600 +#, c-format +msgid "%s: error updating files\n" +msgstr "%s: chyba pøi aktualizaci souborù\n" + +#: src/passwd.c:239 +#, c-format +msgid "usage: %s [ -f | -s ] [ name ]\n" +msgstr "Pou¾ití: %s [ -f | -s ] [ jméno ]\n" + +#: src/passwd.c:242 +#, c-format +msgid " %s [ -x max ] [ -n min ] [ -w warn ] [ -i inact ] name\n" +msgstr " %s [ -x max ] [ -n min ] [ -w varování ] [ -i vypnutí ] jméno\n" + +#: src/passwd.c:245 +#, c-format +msgid " %s { -l | -u | -d | -S | -e } name\n" +msgstr " %s { -l | -u | -d | -S | -e } jméno\n" + +#: src/passwd.c:347 +#, c-format +msgid "User %s has a TCFS key, his old password is required.\n" +msgstr "U¾ivatel %s má TCFS klíè, je tøeba jeho staré heslo.\n" + +#: src/passwd.c:348 +msgid "You can use -t option to force the change.\n" +msgstr "Mù¾ete pou¾ít pøepínaè -t pro vynucení zmìny.\n" + +#: src/passwd.c:354 +msgid "Old password: " +msgstr "Staré heslo: " + +#: src/passwd.c:361 +#, c-format +msgid "Incorrect password for `%s'\n" +msgstr "Chybné heslo pro `%s'\n" + +#: src/passwd.c:374 +#, c-format +msgid "Warning: user %s has a TCFS key.\n" +msgstr "Varování: u¾ivatele %s má TCFS klíè.\n" + +#: src/passwd.c:392 +#, c-format +msgid "" +"Enter the new password (minimum of %d, maximum of %d characters)\n" +"Please use a combination of upper and lower case letters and numbers.\n" +msgstr "" +"Zadejte nové heslo (poèet znakù v intervalu %d a¾ %d).\n" +"Pou¾ijte kombinaci velkých a malých písmen s èíslicemi.\n" + +#: src/passwd.c:399 +msgid "New password: " +msgstr "Nové heslo: " + +#: src/passwd.c:409 +msgid "Try again.\n" +msgstr "Zkuste to znovu.\n" + +#: src/passwd.c:418 +msgid "" +"\n" +"Warning: weak password (enter it again to use it anyway).\n" +msgstr "" +"\n" +"Varování: slabé heslo (pokud jej opravdu chcete pou¾ít, zadejte jej znovu).\n" + +#: src/passwd.c:427 +msgid "They don't match; try again.\n" +msgstr "Neshodují se; zkuste to znovu.\n" + +#: src/passwd.c:512 src/passwd.c:528 +#, c-format +msgid "The password for %s cannot be changed.\n" +msgstr "Heslo pro %s nelze zmìnit.\n" + +#: src/passwd.c:556 +#, c-format +msgid "Sorry, the password for %s cannot be changed yet.\n" +msgstr "Lituji, ale heslo pro %s nelze je¹tì zmìnit.\n" + +#: src/passwd.c:693 +#, c-format +msgid "%s: out of memory\n" +msgstr "%s: do¹la pamì»\n" + +#: src/passwd.c:845 +msgid "Cannot lock the TCFS key database; try again later\n" +msgstr "Nelze zamknout databázi TCFS klíèù. Zkuste to pozdìji.\n" + +#: src/passwd.c:851 +msgid "Cannot open the TCFS key database.\n" +msgstr "Nelze otevøít databázi TCFS klíèù.\n" + +#: src/passwd.c:857 +msgid "Error updating the TCFS key database.\n" +msgstr "Chyba pøi aktualizaci databáze TCFS klíèù.\n" + +#: src/passwd.c:862 +msgid "Cannot commit TCFS changes.\n" +msgstr "Nelze zmìnit TCFS databázi.\n" + +#: src/passwd.c:1069 +#, c-format +msgid "%s: Cannot execute %s" +msgstr "%s: %s nelze spustit" + +#: src/passwd.c:1176 +#, c-format +msgid "%s: repository %s not supported\n" +msgstr "%s: úlo¾na %s není podporována\n" + +#: src/passwd.c:1263 +#, c-format +msgid "%s: Permission denied\n" +msgstr "%s: pøístup odmítnut\n" + +#: src/passwd.c:1287 +#, c-format +msgid "You may not change the password for %s.\n" +msgstr "Nesmíte zmìnit heslo pro %s.\n" + +#: src/passwd.c:1352 +#, c-format +msgid "Changing password for %s\n" +msgstr "Mìním heslo u¾ivatele %s\n" + +#: src/passwd.c:1356 +#, c-format +msgid "The password for %s is unchanged.\n" +msgstr "Heslo u¾ivatele %s nebylo zmìnìno.\n" + +#: src/passwd.c:1412 +msgid "Password changed.\n" +msgstr "Heslo bylo zmìnìno.\n" + +#: src/pwck.c:98 +#, c-format +msgid "Usage: %s [ -qr ] [ passwd [ shadow ] ]\n" +msgstr "Pou¾ití: %s [ -qr ] [ soubor s hesly[ soubor se stínovými hesly ] ]\n" + +#: src/pwck.c:100 +#, c-format +msgid "Usage: %s [ -qr ] [ passwd ]\n" +msgstr "Pou¾ití: %s [ -qr ] [ soubor s hesly ]\n" + +#. +#. * Tell the user this entire line is bogus and +#. * ask them to delete it. +#. +#: src/pwck.c:285 +msgid "invalid password file entry\n" +msgstr "chybná polo¾ka v souboru s hesly\n" + +#. +#. * Tell the user this entry is a duplicate of +#. * another and ask them to delete it. +#. +#: src/pwck.c:347 +msgid "duplicate password entry\n" +msgstr "duplikovaná polo¾ka v souboru s hesly\n" + +#: src/pwck.c:363 +#, c-format +msgid "invalid user name `%s'\n" +msgstr "chybné u¾ivatelské jméno `%s'\n" + +#: src/pwck.c:373 +#, c-format +msgid "user %s: bad UID (%d)\n" +msgstr "u¾ivatel %s: chybné UID (%d)\n" + +#. +#. * No primary group, just give a warning +#. +#: src/pwck.c:388 +#, c-format +msgid "user %s: no group %d\n" +msgstr "u¾ivatel %s: skupina %d neexistuje\n" + +#. +#. * Home directory doesn't exist, give a warning +#. +#: src/pwck.c:403 +#, c-format +msgid "user %s: directory %s does not exist\n" +msgstr "u¾ivatel %s: adresáø %s neexistuje\n" + +#. +#. * Login shell doesn't exist, give a warning +#. +#: src/pwck.c:418 +#, c-format +msgid "user %s: program %s does not exist\n" +msgstr "u¾ivatel %s: program %s neexistuje\n" + +#. +#. * Tell the user this entire line is bogus and +#. * ask them to delete it. +#. +#: src/pwck.c:454 +msgid "invalid shadow password file entry\n" +msgstr "chybná polo¾ka v souboru se stínovými hesly\n" + +#. +#. * Tell the user this entry is a duplicate of +#. * another and ask them to delete it. +#. +#: src/pwck.c:516 +msgid "duplicate shadow password entry\n" +msgstr "duplikovaná polo¾ka v souboru se stínovými hesly\n" + +#. +#. * Tell the user this entry has no matching +#. * /etc/passwd entry and ask them to delete it. +#. +#: src/pwck.c:540 +msgid "no matching password file entry\n" +msgstr "chybí polo¾ka v souboru s hesly\n" + +#: src/pwck.c:557 +#, c-format +msgid "user %s: last password change in the future\n" +msgstr "u¾ivatel %s: poslední zmìna hesla v budoucnosti\n" + +#: src/pwconv.c:94 src/pwunconv.c:108 +#, c-format +msgid "%s: can't lock passwd file\n" +msgstr "%s: soubor s hesly nelze zamknout\n" + +#: src/pwconv.c:99 src/pwunconv.c:113 +#, c-format +msgid "%s: can't open passwd file\n" +msgstr "%s: soubor s hesly nelze otevøít\n" + +#: src/pwconv.c:126 +#, c-format +msgid "%s: can't remove shadow entry for %s\n" +msgstr "%s: polo¾ku souboru s hesly pro u¾ivatele %s nelze odstranit\n" + +#: src/pwconv.c:169 +#, c-format +msgid "%s: can't update passwd entry for %s\n" +msgstr "%s: polo¾ku souboru s hesly pro u¾ivatele %s nelze aktualizovat\n" + +#: src/pwconv.c:176 +#, c-format +msgid "%s: can't update shadow file\n" +msgstr "%s: soubor se stínovými hesly nelze aktualizovat\n" + +#: src/pwconv.c:180 +#, c-format +msgid "%s: can't update passwd file\n" +msgstr "%s: soubor s hesly nelze aktualizovat\n" + +#: src/pwunconv.c:62 +#, c-format +msgid "%s: Shadow passwords are not configured.\n" +msgstr "%s: stínová hesla nejsou nakonfigurována\n" + +#: src/pwunconv.c:171 +#, c-format +msgid "%s: can't update entry for user %s\n" +msgstr "%s: polo¾ku pro u¾ivatele %s nelze aktualizovat\n" + +#: src/pwunconv.c:188 +#, c-format +msgid "%s: can't delete shadow password file\n" +msgstr "%s: nemù¾ete smazat soubor se stínovými hesly\n" + +#: src/su.c:140 +msgid "Sorry." +msgstr "Lituji." + +#: src/su.c:222 +#, c-format +msgid "%s: must be run from a terminal\n" +msgstr "%s: musí být spu¹tìno z terminálu\n" + +#: src/su.c:311 +#, c-format +msgid "%s: pam_start: error %d\n" +msgstr "%s: pam_start: chyba %d\n" + +#: src/su.c:337 +#, c-format +msgid "Unknown id: %s\n" +msgstr "Id %s je neznámé.\n" + +#. access denied (-1) or unexpected value +#: src/su.c:372 src/su.c:387 +#, c-format +msgid "You are not authorized to su %s\n" +msgstr "Nejste oprávnìn pou¾ívat su %s\n" + +#. require own password +#: src/su.c:383 +msgid "(Enter your own password.)" +msgstr "(Zadejte va¹e heslo.)" + +#: src/su.c:404 +#, c-format +msgid "%s: permission denied (shell).\n" +msgstr "%s: pøístup odmítnut (shell)\n" + +#: src/su.c:428 +#, c-format +msgid "" +"%s: %s\n" +"(Ignored)\n" +msgstr "" +"%s: %s\n" +"(Ignoruji)\n" + +#: src/su.c:628 +msgid "No shell\n" +msgstr "®ádný shell\n" + +#. must be a password file! +#: src/sulogin.c:136 +msgid "No password file\n" +msgstr "Soubor s hesly neexistuje\n" + +#. +#. * Fail secure +#. +#: src/sulogin.c:178 +msgid "No password entry for 'root'\n" +msgstr "V databázi není polo¾ka pro u¾ivatele 'root'\n" + +#. +#. * Here we prompt for the root password, or if no password is +#. * given we just exit. +#. +#. get a password for root +#: src/sulogin.c:192 +msgid "" +"\n" +"Type control-d to proceed with normal startup,\n" +"(or give root password for system maintenance):" +msgstr "" +"\n" +"Stisknìte control-d pro normální spu¹tìní systému,\n" +"(nebo zadejte heslo u¾ivatele root pro údr¾bu systému):" + +#. make new environment active +#: src/sulogin.c:241 +msgid "Entering System Maintenance Mode\n" +msgstr "Vstupuji do re¾imu údr¾by systému\n" + +#: src/useradd.c:249 +#, c-format +msgid "%s: rebuild the group database\n" +msgstr "%s: vytvoøte znovu databázi skupin\n" + +#: src/useradd.c:256 +#, c-format +msgid "%s: rebuild the shadow group database\n" +msgstr "%s: vytvoøte znovu databázi stínových skupin\n" + +#: src/useradd.c:293 src/usermod.c:973 +#, c-format +msgid "%s: invalid numeric argument `%s'\n" +msgstr "%s: chybný numerický argument `%s'\n" + +#: src/useradd.c:349 +#, c-format +msgid "%s: unknown gid %s\n" +msgstr "%s: gid %s je neznámé\n" + +#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260 +#: src/usermod.c:1104 +#, c-format +msgid "%s: unknown group %s\n" +msgstr "%s: skupina %s je neznámá\n" + +#: src/useradd.c:424 +#, c-format +msgid "group=%s,%ld basedir=%s skel=%s\n" +msgstr "skupina=%s,%ld základ. adr.=%s skel=%s\n" + +#: src/useradd.c:427 +#, c-format +msgid "shell=%s " +msgstr "shell=%s " + +#: src/useradd.c:429 +#, c-format +msgid "inactive=%ld expire=%s" +msgstr "vypnutí=%ld vypr¹ení=%s" + +#: src/useradd.c:433 +#, c-format +msgid "GROUP=%ld\n" +msgstr "SKUPINA=%ld\n" + +#: src/useradd.c:434 +#, c-format +msgid "HOME=%s\n" +msgstr "DOMÁCÍ ADRESÁØ=%s\n" + +#: src/useradd.c:436 +#, c-format +msgid "INACTIVE=%ld\n" +msgstr "VYPNUTÍ=%ld\n" + +#: src/useradd.c:437 +#, c-format +msgid "EXPIRE=%s\n" +msgstr "VYPR©ENÍ=%s\n" + +#: src/useradd.c:439 +#, c-format +msgid "SHELL=%s\n" +msgstr "INTERPRET PØÍKAZÙ=%s\n" + +#: src/useradd.c:440 +#, c-format +msgid "SKEL=%s\n" +msgstr "SKELETON=%s\n" + +#: src/useradd.c:476 +#, c-format +msgid "%s: cannot create new defaults file\n" +msgstr "%s: nemohu vytvoøit nový soubor s implicitními hodnotami\n" + +#: src/useradd.c:570 src/useradd.c:581 +#, c-format +msgid "%s: rename: %s" +msgstr "%s: pøejmenovat: %s" + +#: src/useradd.c:668 src/usermod.c:280 +#, c-format +msgid "%s: group `%s' is a NIS group.\n" +msgstr "%s: skupina `%s' je NIS skupinou\n" + +#: src/useradd.c:676 src/usermod.c:288 +#, c-format +msgid "%s: too many groups specified (max %d).\n" +msgstr "%s: zadáno pøíli¹ mnoho skupin (max %d).\n" + +#: src/useradd.c:708 src/usermod.c:320 +#, c-format +msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n" +msgstr "Pou¾ití: %s\t[-u uid [-o]] [-g skupina [-G skupina,...] \n" + +#: src/useradd.c:711 +msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n" +msgstr "\t\t[-d domácí adr.] [-s shell] [-c komentáø] [-m [-k ¹ablona]]\n" + +#: src/useradd.c:714 src/usermod.c:326 +msgid "[-f inactive] [-e expire ] " +msgstr "[-f vypnutí] [-e vypr¹ení ] " + +#: src/useradd.c:717 +msgid "[-A program] " +msgstr "[-A program] " + +#: src/useradd.c:719 +msgid "[-p passwd] name\n" +msgstr "[-p heslo] jméno\n" + +#: src/useradd.c:721 +#, c-format +msgid " %s\t-D [-g group] [-b base] [-s shell]\n" +msgstr " %s\t-D [-g skupina [-b základní adr.] [-s shell]\n" + +#: src/useradd.c:724 +msgid "\t\t[-f inactive] [-e expire ]\n" +msgstr "\t\t[-f vypnutí] [-e vypr¹ení ]\n" + +#: src/useradd.c:821 src/usermod.c:478 +#, c-format +msgid "%s: error locking group file\n" +msgstr "%s: chyba pøi zamykání souboru se skupinami\n" + +#: src/useradd.c:825 src/usermod.c:483 +#, c-format +msgid "%s: error opening group file\n" +msgstr "%s: chyba pøi otevírání souboru se skupinami\n" + +#: src/useradd.c:830 src/usermod.c:590 +#, c-format +msgid "%s: error locking shadow group file\n" +msgstr "%s: chyba pøi zamykání souboru se stínovými hesly\n" + +#: src/useradd.c:835 src/usermod.c:596 +#, c-format +msgid "%s: error opening shadow group file\n" +msgstr "%s: chyba pøi otevírání souboru se stínovými hesly\n" + +#: src/useradd.c:1007 +#, c-format +msgid "%s: uid %d is not unique\n" +msgstr "%s: uid %d není jedineèné\n" + +#: src/useradd.c:1037 +#, c-format +msgid "%s: can't get unique uid\n" +msgstr "%s: nemohu získat jedineèné uid\n" + +#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063 +#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163 +#, c-format +msgid "%s: invalid field `%s'\n" +msgstr "%s: chybná polo¾ka `%s'\n" + +#: src/useradd.c:1159 +#, c-format +msgid "%s: invalid base directory `%s'\n" +msgstr "%s: chybný základní adresáø `%s'\n" + +#: src/useradd.c:1169 +#, c-format +msgid "%s: invalid comment `%s'\n" +msgstr "%s: chybný komentáø `%s'\n" + +#: src/useradd.c:1179 +#, c-format +msgid "%s: invalid home directory `%s'\n" +msgstr "%s: chybný domácí adresáø `%s'\n" + +#: src/useradd.c:1197 src/usermod.c:1086 +#, c-format +msgid "%s: invalid date `%s'\n" +msgstr "%s: chybné datum `%s'\n" + +#: src/useradd.c:1209 +#, c-format +msgid "%s: shadow passwords required for -e\n" +msgstr "%s: pøepínaè -e vy¾aduje stínová hesla\n" + +#: src/useradd.c:1224 +#, c-format +msgid "%s: shadow passwords required for -f\n" +msgstr "%s: pøepínaè -f vy¾aduje stínová hesla\n" + +#: src/useradd.c:1298 +#, c-format +msgid "%s: invalid shell `%s'\n" +msgstr "%s: chybný shell `%s'\n" + +#: src/useradd.c:1339 +#, c-format +msgid "%s: invalid user name `%s'\n" +msgstr "%s: chybné u¾ivatelské jméno `%s'\n" + +#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231 +#, c-format +msgid "%s: cannot rewrite password file\n" +msgstr "%s: soubor s hesly nelze pøepsat\n" + +#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236 +#, c-format +msgid "%s: cannot rewrite shadow password file\n" +msgstr "%s: soubor se stínovými hesly nelze pøepsat\n" + +#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271 +#, c-format +msgid "%s: unable to lock password file\n" +msgstr "%s: soubor s hesly nelze zamknout\n" + +#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275 +#, c-format +msgid "%s: unable to open password file\n" +msgstr "%s: soubor s hesly nelze otevøít\n" + +#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280 +#, c-format +msgid "%s: cannot lock shadow password file\n" +msgstr "%s: soubor se stínovými hesly nelze zamknout\n" + +#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285 +#, c-format +msgid "%s: cannot open shadow password file\n" +msgstr "%s: soubor se stínovými hesly nelze otevøít\n" + +#: src/useradd.c:1535 src/usermod.c:1372 +#, c-format +msgid "%s: error adding authentication method\n" +msgstr "%s: chyba pøi vytváøení ovìøovací metody\n" + +#: src/useradd.c:1558 +#, c-format +msgid "%s: error adding new password entry\n" +msgstr "%s: chyba pøi vytváøení nové polo¾ky v souboru s hesly\n" + +#: src/useradd.c:1573 +#, c-format +msgid "%s: error updating password dbm entry\n" +msgstr "%s: chyba pøi aktualizaci polo¾ky dbm databáze hesel\n" + +#: src/useradd.c:1589 src/usermod.c:1431 +#, c-format +msgid "%s: error adding new shadow password entry\n" +msgstr "%s: chyba pøi vytváøení nové polo¾ky v souboru se stínovými hesly\n" + +#: src/useradd.c:1605 src/usermod.c:1446 +#, c-format +msgid "%s: error updating shadow passwd dbm entry\n" +msgstr "%s: chyba pøi aktualizaci polo¾ky dbm databáze stínových hesel\n" + +#: src/useradd.c:1637 +#, c-format +msgid "%s: cannot create directory %s\n" +msgstr "%s: adresáø %s nelze vytvoøit\n" + +#: src/useradd.c:1758 src/usermod.c:1209 +#, c-format +msgid "%s: user %s exists\n" +msgstr "%s: u¾ivatel %s ji¾ existuje\n" + +#: src/useradd.c:1770 +#, c-format +msgid "" +"%s: group %s exists - if you want to add this user to that group, use -g.\n" +msgstr "" + +#: src/useradd.c:1801 +#, c-format +msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n" +msgstr "%s: varování: CREATE_HOME není podporováno, pou¾ijte pøepínaè -m\n" + +#: src/userdel.c:133 +#, c-format +msgid "usage: %s [-r] name\n" +msgstr "Pou¾ití: %s [-r] jméno\n" + +#: src/userdel.c:184 src/userdel.c:266 +#, c-format +msgid "%s: error updating group entry\n" +msgstr "%s: polo¾ku souboru se skupinami nelze aktualizovat\n" + +#: src/userdel.c:194 src/userdel.c:275 +#, c-format +msgid "%s: cannot update dbm group entry\n" +msgstr "%s: polo¾ku dbm databáze skupin nelze aktualizovat\n" + +#: src/userdel.c:221 +#, c-format +msgid "%s: cannot remove dbm group entry\n" +msgstr "%s: polo¾ku dbm databáze skupin nelze odstranit\n" + +#: src/userdel.c:306 +#, c-format +msgid "%s: cannot rewrite TCFS key file\n" +msgstr "%s: soubor s TCFS klíèi nelze pøepsat\n" + +#: src/userdel.c:386 +#, c-format +msgid "%s: cannot lock TCFS key file\n" +msgstr "%s: soubor s TCFS klíèi nelze zamknout\n" + +#: src/userdel.c:390 +#, c-format +msgid "%s: cannot open TCFS key file\n" +msgstr "%s: soubor s TCFS klíèi nelze otevøít\n" + +#: src/userdel.c:399 +#, c-format +msgid "%s: cannot open group file\n" +msgstr "%s: soubor se skupinami nelze otevøít\n" + +#: src/userdel.c:409 +#, c-format +msgid "%s: cannot open shadow group file\n" +msgstr "%s: soubor se stínovými skupinami nelze otevøít\n" + +#: src/userdel.c:440 src/userdel.c:455 +#, c-format +msgid "%s: error deleting authentication\n" +msgstr "%s: chyba pøi odstraòování ovìøovací metody\n" + +#: src/userdel.c:464 +#, c-format +msgid "%s: error deleting password entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru s hesly\n" + +#: src/userdel.c:467 +#, c-format +msgid "%s: error deleting shadow password entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru se stínovými hesly\n" + +#: src/userdel.c:476 +#, c-format +msgid "%s: error deleting TCFS entry\n" +msgstr "%s: chyba pøi odstraòování TCFS polo¾ky\n" + +#: src/userdel.c:489 +#, c-format +msgid "%s: error deleting password dbm entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky z dbm databáze hesel\n" + +#: src/userdel.c:508 +#, c-format +msgid "%s: error deleting shadow passwd dbm entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky z dbm databáze stínových hesel\n" + +#: src/userdel.c:549 +#, c-format +msgid "%s: user %s is currently logged in\n" +msgstr "%s: u¾ivatel %s je právì pøihlá¹en\n" + +#: src/userdel.c:666 +#, c-format +msgid "%s: warning: %s not owned by %s, not removing\n" +msgstr "%s: varování: vlastníkem %s není %s, nema¾u jej\n" + +#: src/userdel.c:672 +#, c-format +msgid "%s: warning: can't remove " +msgstr "%s: varování: nemohu smazat " + +#: src/userdel.c:791 src/usermod.c:1000 +#, c-format +msgid "%s: user %s does not exist\n" +msgstr "%s: u¾ivatel %s neexistuje\n" + +#: src/userdel.c:805 src/usermod.c:1016 +#, c-format +msgid "%s: user %s is a NIS user\n" +msgstr "%s: u¾ivatel %s je NIS u¾ivatelem\n" + +#: src/userdel.c:842 +#, c-format +msgid "%s: %s not owned by %s, not removing\n" +msgstr "%s: vlastníkem %s není %s, nema¾u jej\n" + +#: src/userdel.c:865 +#, c-format +msgid "%s: not removing directory %s (would remove home of user %s)\n" +msgstr "%s: adresáø %s nebudu mazat (je to domácí adresáø u¾ivatele %s)\n" + +#: src/userdel.c:878 +#, c-format +msgid "%s: error removing directory %s\n" +msgstr "%s: chyba pøi mazání adresáøe %s\n" + +#: src/usermod.c:323 +msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n" +msgstr "\t\t[-d domácí adr. [-m]] [-s shell] [-c komentáø] [-l nové jméno]\n" + +#: src/usermod.c:329 +msgid "[-A {DEFAULT|program},... ] " +msgstr "[-A {DEFAULT|program},... ] " + +#: src/usermod.c:331 +msgid "[-p passwd] [-L|-U] name\n" +msgstr "[-p heslo] [-L|-U] jméno\n" + +#: src/usermod.c:510 +#, c-format +msgid "%s: out of memory in update_group\n" +msgstr "%s nedostatek pamìti v update_group\n" + +#: src/usermod.c:633 +#, c-format +msgid "%s: out of memory in update_gshadow\n" +msgstr "%s: nedostatek pamìti v update_gshadow\n" + +#: src/usermod.c:1186 +#, c-format +msgid "%s: no flags given\n" +msgstr "%s: ¾ádné pøepínaèe\n" + +#: src/usermod.c:1193 +#, c-format +msgid "%s: shadow passwords required for -e and -f\n" +msgstr "%s: pøepínaèe -e a -f vy¾adují stínová hesla\n" + +#: src/usermod.c:1214 +#, c-format +msgid "%s: uid %ld is not unique\n" +msgstr "%s uid %ld není jedineèné\n" + +#: src/usermod.c:1362 +#, c-format +msgid "%s: error deleting authentication method\n" +msgstr "%s: chyba pøi odstraòování ovìøovací metody\n" + +#: src/usermod.c:1382 +#, c-format +msgid "%s: error changing authentication method\n" +msgstr "%s: chyba pøi zmìnì ovìøovací metody\n" + +#: src/usermod.c:1399 +#, c-format +msgid "%s: error changing password entry\n" +msgstr "%s: chyba pøi zmìnì polo¾ky v souboru s hesly\n" + +#: src/usermod.c:1405 +#, c-format +msgid "%s: error removing password entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru s hesly\n" + +#: src/usermod.c:1413 +#, c-format +msgid "%s: error adding password dbm entry\n" +msgstr "%s: chyba pøi pøidávání polo¾ky do dbm databáze hesel\n" + +#: src/usermod.c:1420 +#, c-format +msgid "%s: error removing passwd dbm entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky z dbm databáze hesel\n" + +#: src/usermod.c:1437 +#, c-format +msgid "%s: error removing shadow password entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky ze souboru se stínovými hesly\n" + +#: src/usermod.c:1452 +#, c-format +msgid "%s: error removing shadow passwd dbm entry\n" +msgstr "%s: chyba pøi odstraòování polo¾ky z dbm databáze stínových hesel\n" + +#: src/usermod.c:1483 +#, c-format +msgid "%s: directory %s exists\n" +msgstr "%s: adresáø %s ji¾ existuje\n" + +#: src/usermod.c:1490 +#, c-format +msgid "%s: can't create %s\n" +msgstr "%s: %s nelze vytvoøit\n" + +#: src/usermod.c:1496 +#, c-format +msgid "%s: can't chown %s\n" +msgstr "%s: volání chown pro %s selhalo\n" + +#: src/usermod.c:1512 +#, c-format +msgid "%s: cannot rename directory %s to %s\n" +msgstr "%s: adresáø %s nelze na %s pøejmenovat\n" + +#. better leave it alone +#: src/usermod.c:1609 +#, c-format +msgid "%s: warning: %s not owned by %s\n" +msgstr "%s: varování: vlastníkem %s není %s\n" + +#: src/usermod.c:1615 +msgid "failed to change mailbox owner" +msgstr "chyba pøi zmìnì vlastníka schránky" + +#: src/usermod.c:1622 +msgid "failed to rename mailbox" +msgstr "chyba pøi pøejmenovávání schránky" + +#: src/vipw.c:102 +#, c-format +msgid "" +"\n" +"%s: %s is unchanged\n" +msgstr "" +"\n" +"%s: %s je beze zmìny\n" + +#: src/vipw.c:127 +msgid "Couldn't lock file" +msgstr "Soubor nelze zamknout" + +#: src/vipw.c:134 +msgid "Couldn't make backup" +msgstr "Zálohování nelze provést." + +#: src/vipw.c:187 +#, c-format +msgid "%s: can't restore %s: %s (your changes are in %s)\n" +msgstr "%s: %s nelze obnovit: %s (zmìny jsou v %s)\n" + +#: src/vipw.c:226 +msgid "" +"Usage:\n" +"`vipw' edits /etc/passwd `vipw -s' edits /etc/shadow\n" +"`vigr' edits /etc/group `vigr -s' edits /etc/gshadow\n" +msgstr "" +"Pou¾ití:\n" +"`vipw' edituje /etc/passwd `vipw -s' edituje /etc/shadow\n" +"`vigr' edituje /etc/group `vigr -s' edituje /etc/gshadow\n" diff --git a/po/el.po b/po/el.po index 16f129d5..bec45adb 100644 --- a/po/el.po +++ b/po/el.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Shadow 980726\n" -"POT-Creation-Date: 2000-09-02 20:40+0200\n" +"POT-Creation-Date: 2000-10-12 06:20+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Nikos Mavroyanopoulos \n" "Language-Team: Hellenic \n" @@ -227,7 +227,7 @@ msgstr "" msgid "Unknown error %d" msgstr "Áãíùóôï óöÜëìá %d" -#: src/chage.c:156 +#: src/chage.c:162 #, c-format msgid "" "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n" @@ -236,14 +236,14 @@ msgstr "" "×ñÞóç: %s [ -l ] [ -m åëá÷_ìÝñåò ] [ -M ìåã_ìÝñåò ] [ -W ðñïåéä. ]\n" "\t[ -I áíåíåñãü ] [ -E ëÞîç ] [ -d ôåëåõôáßá_ìÝñá ] ÷ñÞóôçò\n" -#: src/chage.c:158 +#: src/chage.c:164 #, c-format msgid "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n" msgstr "" "×ñÞóç: %s [ -l ] [ -m åëÜ÷_ìÝñåò ] [ -M ìåã_ìÝñåò ]\n" "[ -d ôåëåõôáßá_ìÝñá ] ÷ñÞóôçò\n" -#: src/chage.c:193 +#: src/chage.c:199 msgid "" "Enter the new value, or press return for the default\n" "\n" @@ -251,27 +251,27 @@ msgstr "" "ÅéóÜãåôå ôçí íÝá ôéìÞ, Þ ðéÝóôå `return' ãéá ôçí ðñïêáèïñéóìÝíç\n" "\n" -#: src/chage.c:196 +#: src/chage.c:202 msgid "Minimum Password Age" msgstr "Ìéêñüôåñç äéÜñêåéá óõíèçìáôéêïý" -#: src/chage.c:201 +#: src/chage.c:207 msgid "Maximum Password Age" msgstr "ÌÝãéóôç äéÜñêåéá óõíèçìáôéêïý" -#: src/chage.c:207 +#: src/chage.c:213 msgid "Last Password Change (YYYY-MM-DD)" msgstr "Ôåëåõôáßá áëëáãÞ óõíèçìáôéêïý (××××-ÌÌ-ÇÇ)" -#: src/chage.c:216 +#: src/chage.c:222 msgid "Password Expiration Warning" msgstr "Ðñïåéäïðïßçóç ëÞîçò óõíèçìáôéêïý" -#: src/chage.c:221 +#: src/chage.c:227 msgid "Password Inactive" msgstr "Áíåíåñãü óõíèçìáôéêü" -#: src/chage.c:227 +#: src/chage.c:233 msgid "Account Expiration Date (YYYY-MM-DD)" msgstr "Çìåñïìçíßá ËÞîçò Ëïãáñéáóìïý (××××-ÌÌ-ÇÇ)" @@ -283,22 +283,22 @@ msgstr " #. * days after the password expires that the account becomes #. * unusable. #. -#: src/chage.c:281 +#: src/chage.c:287 #, c-format msgid "Minimum:\t%ld\n" msgstr "ÅëÜ÷éóôï:\t%ld\n" -#: src/chage.c:282 +#: src/chage.c:288 #, c-format msgid "Maximum:\t%ld\n" msgstr "ÌÝãéóôï:\t%ld\n" -#: src/chage.c:284 +#: src/chage.c:290 #, c-format msgid "Warning:\t%ld\n" msgstr "Ðñïåéäïðïßçóç:\t%ld\n" -#: src/chage.c:285 +#: src/chage.c:291 #, c-format msgid "Inactive:\t%ld\n" msgstr "Áíåíåñãüò:\t%ld\n" @@ -308,11 +308,11 @@ msgstr " #. * password was last modified. The date is the number of #. * days since 1/1/1970. #. -#: src/chage.c:294 +#: src/chage.c:300 msgid "Last Change:\t\t" msgstr "Ôåëåõôáßá áëëáãÞ:\t\t" -#: src/chage.c:296 src/chage.c:310 src/chage.c:327 src/chage.c:340 +#: src/chage.c:302 src/chage.c:316 src/chage.c:333 src/chage.c:346 msgid "Never\n" msgstr "ÐïôÝ\n" @@ -321,7 +321,7 @@ msgstr " #. * change date plus the number of days the password is valid #. * for. #. -#: src/chage.c:308 +#: src/chage.c:314 msgid "Password Expires:\t" msgstr "Ôï óõíèçìáôéêü ëÞãåé:\t" @@ -331,7 +331,7 @@ msgstr " #. * and the number of inactive days is added. The resulting date #. * is when the active will be disabled. #. -#: src/chage.c:324 +#: src/chage.c:330 #, fuzzy msgid "Password Inactive:\t" msgstr "Áíåíåñãü óõíèçìáôéêü" @@ -340,83 +340,97 @@ msgstr " #. * The account will expire on the given date regardless of the #. * password expiring or not. #. -#: src/chage.c:338 +#: src/chage.c:344 #, fuzzy msgid "Account Expires:\t" msgstr "Ôï óõíèçìáôéêü ëÞãåé:\t" -#: src/chage.c:486 +#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322 +#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738 +#: src/usermod.c:1684 +#, fuzzy, c-format +msgid "%s: PAM authentication failed\n" +msgstr "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç ìåèüäïõ åîáêñßâùóçò\n" + +#: src/chage.c:536 #, c-format msgid "%s: do not include \"l\" with other flags\n" msgstr "%s: Íá ìçí óõìðåñéëáìâÜíåôå ôï \"l\" ìå ôéò Üëëåò åíäåßîåéò\n" -#: src/chage.c:498 src/chage.c:610 src/login.c:529 +#: src/chage.c:548 src/chage.c:660 src/login.c:529 #, c-format msgid "%s: permission denied\n" msgstr "%s: Üäåéá áðïññßöèçêå\n" -#: src/chage.c:510 src/chpasswd.c:120 +#: src/chage.c:560 src/chpasswd.c:170 #, c-format msgid "%s: can't lock password file\n" msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/chage.c:516 src/chpasswd.c:124 +#: src/chage.c:566 src/chpasswd.c:174 #, c-format msgid "%s: can't open password file\n" msgstr "%s: áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/chage.c:523 +#: src/chage.c:573 #, c-format msgid "%s: unknown user: %s\n" msgstr "%s: Üãíùóôïò ÷ñÞóôçò: %s\n" -#: src/chage.c:542 +#: src/chage.c:592 #, c-format msgid "%s: can't lock shadow password file\n" msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/chage.c:549 +#: src/chage.c:599 #, c-format msgid "%s: can't open shadow password file\n" msgstr "%s: áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/chage.c:631 +#: src/chage.c:681 #, c-format msgid "Changing the aging information for %s\n" msgstr "ÁëëáãÞ ðëçñïöïñéþí ÷ñüíïõ ãéá ôïí %s\n" -#: src/chage.c:633 +#: src/chage.c:683 #, c-format msgid "%s: error changing fields\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí áëëáãÞ ðåäßùí\n" -#: src/chage.c:660 src/chage.c:723 src/pwunconv.c:183 +#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183 #, c-format msgid "%s: can't update password file\n" msgstr "%s: áäõíáìßá áíáíÝùóçò áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/chage.c:690 src/pwunconv.c:178 +#: src/chage.c:740 src/pwunconv.c:178 #, c-format msgid "%s: can't update shadow password file\n" msgstr "%s: áäõíáìßá áíáíÝùóçò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/chage.c:739 src/chage.c:754 src/chfn.c:570 src/chsh.c:409 +#: src/chage.c:789 src/chage.c:804 src/chfn.c:570 src/chsh.c:409 #: src/passwd.c:825 src/passwd.c:926 msgid "Error updating the DBM password entry.\n" msgstr "" "ÓöÜëìá êáôÜ ôçí áíáíÝùóç ôçò êáôá÷þñçóçò óôï dbm áñ÷åßï óõíèçìáôéêþí.\n" -#: src/chage.c:771 +#: src/chage.c:821 #, c-format msgid "%s: can't rewrite shadow password file\n" msgstr "%s: áäõíáìßá åðáíåããñáöÞò áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/chage.c:785 +#: src/chage.c:835 #, c-format msgid "%s: can't rewrite password file\n" msgstr "%s: áäõíáìßá åðáíåããñáöÞò áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/chage.c:836 +#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409 +#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903 +#: src/usermod.c:1762 +#, fuzzy, c-format +msgid "%s: PAM chauthtok failed\n" +msgstr "%s: áäõíáìßá îåêëåéäþìáôïò áñ÷åßïõ\n" + +#: src/chage.c:905 #, c-format msgid "%s: no aging information present\n" msgstr "%s: Äåí õðÜñ÷ïõí ðëçñïöïñßåò ãÞñáíóçò\n" @@ -555,7 +569,7 @@ msgstr " msgid "Cannot open the password file.\n" msgstr "Áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí.\n" -#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1313 +#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319 #, c-format msgid "%s: %s not found in /etc/passwd\n" msgstr "%s: Ï %s äåí âñÝèçêå óôï /etc/passwd\n" @@ -573,54 +587,54 @@ msgstr " msgid "Cannot unlock the password file.\n" msgstr "Áäõíáìßá îåêëåéäþìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/chpasswd.c:76 +#: src/chpasswd.c:82 #, c-format msgid "usage: %s [-e]\n" msgstr "÷ñÞóç: %s [-e]\n" -#: src/chpasswd.c:132 src/pwconv.c:104 +#: src/chpasswd.c:182 src/pwconv.c:104 #, c-format msgid "%s: can't lock shadow file\n" msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/chpasswd.c:137 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 +#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 #: src/pwunconv.c:123 #, c-format msgid "%s: can't open shadow file\n" msgstr "%s: áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/chpasswd.c:159 src/newusers.c:415 +#: src/chpasswd.c:209 src/newusers.c:465 #, c-format msgid "%s: line %d: line too long\n" msgstr "%s: ãñáììÞ %d: ðïëý ìåãÜëç ãñáììÞ\n" -#: src/chpasswd.c:179 +#: src/chpasswd.c:229 #, c-format msgid "%s: line %d: missing new password\n" msgstr "%s: ãñáììÞ %d: Ýëëåéøç íÝïõ óõíèçìáôéêïý\n" -#: src/chpasswd.c:195 +#: src/chpasswd.c:245 #, c-format msgid "%s: line %d: unknown user %s\n" msgstr "%s: ãñáììÞ %d: Üãíùóôïò ÷ñÞóôçò %s\n" -#: src/chpasswd.c:247 +#: src/chpasswd.c:297 #, c-format msgid "%s: line %d: cannot update password entry\n" msgstr "%s: ãñáììÞ %d: áäõíáìßá áíáíÝùóçò êáôá÷þñçóçò óõíèçìáôéêïý\n" -#: src/chpasswd.c:263 src/newusers.c:535 +#: src/chpasswd.c:313 src/newusers.c:585 #, c-format msgid "%s: error detected, changes ignored\n" msgstr "%s: Áíé÷íÝõôçêå óöÜëìá, ïé áëëáãÝò áãíïÞèçêáí\n" -#: src/chpasswd.c:274 +#: src/chpasswd.c:324 #, c-format msgid "%s: error updating shadow file\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n" -#: src/chpasswd.c:282 +#: src/chpasswd.c:332 #, c-format msgid "%s: error updating password file\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï áñ÷åßï óõíèçìáôéêþí\n" @@ -880,33 +894,33 @@ msgstr "%s: msgid "%s: can't update DBM shadow files\n" msgstr "%s: áäõíáìßá áíáíÝùóçò ôùí DBM áñ÷åßùí óêéùäþí óõíèçìáôéêþí\n" -#: src/groupadd.c:105 +#: src/groupadd.c:111 msgid "usage: groupadd [-g gid [-o]] group\n" msgstr "÷ñÞóç: groupadd [-g gid [-o]] ïìÜäá\n" -#: src/groupadd.c:173 src/groupadd.c:196 src/groupmod.c:183 src/groupmod.c:230 -#: src/useradd.c:931 src/usermod.c:539 src/usermod.c:675 +#: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236 +#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681 #, c-format msgid "%s: error adding new group entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï áñ÷åßï ïìÜäùí\n" -#: src/groupadd.c:183 src/groupadd.c:206 src/groupmod.c:199 src/useradd.c:942 -#: src/usermod.c:551 src/usermod.c:687 +#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948 +#: src/usermod.c:557 src/usermod.c:693 #, c-format msgid "%s: cannot add new dbm group entry\n" msgstr "%s: áäõíáìßá ðñïóèÞêçò íÝáò dbm êáôá÷þñçóçò óôï áñ÷åßï ïìÜäùí\n" -#: src/groupadd.c:258 src/useradd.c:996 +#: src/groupadd.c:264 src/useradd.c:1002 #, c-format msgid "%s: name %s is not unique\n" msgstr "%s: Ôï üíïìá %s äåí åßíáé ìïíáäéêü\n" -#: src/groupadd.c:273 +#: src/groupadd.c:279 #, c-format msgid "%s: gid %ld is not unique\n" msgstr "%s: Ôï gid %ld äåí åßíáé ìïíáäéêü\n" -#: src/groupadd.c:297 +#: src/groupadd.c:303 #, c-format msgid "%s: can't get unique gid\n" msgstr "%s: áäõíáìßá åýñåóçò ìïíáäéêïý gid\n" @@ -914,80 +928,80 @@ msgstr "%s: #. #. * All invalid group names land here. #. -#: src/groupadd.c:321 src/groupmod.c:341 +#: src/groupadd.c:327 src/groupmod.c:347 #, c-format msgid "%s: %s is a not a valid group name\n" msgstr "%s: Ôï %s äåí åßíáé Ýãêõñï üíïìá ïìÜäáò\n" -#: src/groupadd.c:350 src/groupmod.c:367 +#: src/groupadd.c:356 src/groupmod.c:373 #, c-format msgid "%s: invalid group %s\n" msgstr "%s: Ìç Ýãêõñç ïìÜäá `%s'\n" -#: src/groupadd.c:367 src/useradd.c:1272 +#: src/groupadd.c:373 src/useradd.c:1278 #, c-format msgid "%s: -O requires NAME=VALUE\n" msgstr "%s: -O áðáéôåß ¼ÍÏÌÁ=ÔÉÌÇ\n" -#: src/groupadd.c:412 src/groupdel.c:167 src/groupmod.c:403 src/useradd.c:1381 -#: src/userdel.c:303 src/usermod.c:563 +#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387 +#: src/userdel.c:309 src/usermod.c:569 #, c-format msgid "%s: cannot rewrite group file\n" msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ ïìÜäùí\n" -#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1389 -#: src/userdel.c:309 src/usermod.c:700 +#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395 +#: src/userdel.c:315 src/usermod.c:706 #, c-format msgid "%s: cannot rewrite shadow group file\n" msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n" -#: src/groupadd.c:437 src/groupdel.c:192 src/groupmod.c:428 src/userdel.c:389 +#: src/groupadd.c:443 src/groupdel.c:198 src/groupmod.c:434 src/userdel.c:395 #, c-format msgid "%s: unable to lock group file\n" msgstr "%s: Áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ ïìÜäùí\n" -#: src/groupadd.c:441 src/groupdel.c:196 src/groupmod.c:432 +#: src/groupadd.c:447 src/groupdel.c:202 src/groupmod.c:438 #, c-format msgid "%s: unable to open group file\n" msgstr "%s: Áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ ïìÜäùí\n" -#: src/groupadd.c:446 src/groupdel.c:201 src/groupmod.c:437 src/userdel.c:398 +#: src/groupadd.c:452 src/groupdel.c:207 src/groupmod.c:443 src/userdel.c:404 #, c-format msgid "%s: unable to lock shadow group file\n" msgstr "%s: Áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n" -#: src/groupadd.c:451 src/groupdel.c:206 src/groupmod.c:442 +#: src/groupadd.c:457 src/groupdel.c:212 src/groupmod.c:448 #, c-format msgid "%s: unable to open shadow group file\n" msgstr "%s: Áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n" -#: src/groupadd.c:518 +#: src/groupadd.c:568 #, c-format msgid "%s: group %s exists\n" msgstr "%s: Ç ïìÜäá %s õðÜñ÷åé\n" -#: src/groupdel.c:86 +#: src/groupdel.c:92 msgid "usage: groupdel group\n" msgstr "÷ñÞóç: groupdel ïìÜäá\n" -#: src/groupdel.c:104 src/groupmod.c:187 src/groupmod.c:234 +#: src/groupdel.c:110 src/groupmod.c:193 src/groupmod.c:240 #, c-format msgid "%s: error removing group entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ êáôá÷þñçóçò ïìÜäáò\n" -#: src/groupdel.c:116 src/groupmod.c:206 +#: src/groupdel.c:122 src/groupmod.c:212 #, c-format msgid "%s: error removing group dbm entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ êáôá÷þñçóçò óôï dbm áñ÷åßï ïìÜäùí\n" -#: src/groupdel.c:131 +#: src/groupdel.c:137 #, c-format msgid "%s: error removing shadow group entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí " "ïìÜäùí\n" -#: src/groupdel.c:144 src/groupmod.c:252 +#: src/groupdel.c:150 src/groupmod.c:258 #, c-format msgid "%s: error removing shadow group dbm entry\n" msgstr "" @@ -996,48 +1010,48 @@ msgstr "" #. #. * Can't remove the group. #. -#: src/groupdel.c:248 +#: src/groupdel.c:254 #, c-format msgid "%s: cannot remove user's primary group.\n" msgstr "%s: áäõíáìßá áöáßñåóçò ôçò ðñùôáñ÷éêÞò ïìÜäáò ôïõ ÷ñÞóôç.\n" -#: src/groupdel.c:305 src/groupmod.c:501 +#: src/groupdel.c:355 src/groupmod.c:551 #, c-format msgid "%s: group %s does not exist\n" msgstr "%s: Ç ïìÜäá %s äåí õðÜñ÷åé\n" -#: src/groupdel.c:319 src/groupmod.c:517 +#: src/groupdel.c:369 src/groupmod.c:567 #, c-format msgid "%s: group %s is a NIS group\n" msgstr "%s: Ç ïìÜäá %s åßíáé NIS ïìÜäá\n" -#: src/groupdel.c:325 src/groupmod.c:523 src/userdel.c:761 src/usermod.c:1016 +#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022 #, c-format msgid "%s: %s is the NIS master\n" msgstr "%s: Ï %s åßíáé ï êýñéïò äéáêïìéóôÞò NIS\n" -#: src/groupmod.c:105 +#: src/groupmod.c:111 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n" msgstr "÷ñÞóç: groupmod [-g gid [-o]] [-n üíïìá] ïìÜäá\n" -#: src/groupmod.c:165 +#: src/groupmod.c:171 #, fuzzy, c-format msgid "%s: %s not found in /etc/group\n" msgstr "%s: Ï %s äåí âñÝèçêå óôï /etc/passwd\n" -#: src/groupmod.c:246 +#: src/groupmod.c:252 #, c-format msgid "%s: cannot add new dbm shadow group entry\n" msgstr "" "%s: áäõíáìßá ðñïóèÞêçò íÝáò dbm êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí " "ïìÜäùí\n" -#: src/groupmod.c:299 +#: src/groupmod.c:305 #, c-format msgid "%s: %ld is not a unique gid\n" msgstr "%s: Ôï %ld äåí åßíáé ìïíáäéêü gid\n" -#: src/groupmod.c:330 +#: src/groupmod.c:336 #, c-format msgid "%s: %s is not a unique name\n" msgstr "%s: Ôï %s äåí åßíáé ìïíáäéêü üíïìá\n" @@ -1488,67 +1502,67 @@ msgstr " msgid "too many groups\n" msgstr "ðÜñá ðïëëÝò ïìÜäåò\n" -#: src/newusers.c:76 +#: src/newusers.c:82 #, c-format msgid "Usage: %s [ input ]\n" msgstr "×ñÞóç: %s [ åßóïäïò ]\n" -#: src/newusers.c:364 +#: src/newusers.c:414 #, c-format msgid "%s: can't lock /etc/passwd.\n" msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ /etc/passwd.\n" -#: src/newusers.c:375 +#: src/newusers.c:425 #, c-format msgid "%s: can't lock files, try again later\n" msgstr "%s: áäõíáìßá êëåéäþìáôïò áñ÷åßùí, îáíáäïêéìÜóôå áñãüôåñá\n" -#: src/newusers.c:390 +#: src/newusers.c:440 #, c-format msgid "%s: can't open files\n" msgstr "%s: áäõíáìßá áíïßãìáôïò ôùí áñ÷åßùí\n" -#: src/newusers.c:435 +#: src/newusers.c:485 #, c-format msgid "%s: line %d: invalid line\n" msgstr "%s: ãñáììÞ %d: ìç Ýãêõñç ãñáììÞ\n" -#: src/newusers.c:453 +#: src/newusers.c:503 #, c-format msgid "%s: line %d: can't create GID\n" msgstr "%s: ãñáììÞ %d: áäõíáìßá äçìéïõñãßáò GID\n" -#: src/newusers.c:469 +#: src/newusers.c:519 #, c-format msgid "%s: line %d: can't create UID\n" msgstr "%s: ãñáììÞ %d: áäõíáìßá äçìéïõñãßáò UID\n" -#: src/newusers.c:481 +#: src/newusers.c:531 #, c-format msgid "%s: line %d: cannot find user %s\n" msgstr "%s: ãñáììÞ %d: áäõíáìßá åýñåóçò ÷ñÞóôç %s\n" -#: src/newusers.c:489 +#: src/newusers.c:539 #, c-format msgid "%s: line %d: can't update password\n" msgstr "%s: ãñáììÞ %d: áäõíáìßá áíáíÝùóç óõíèçìáôéêïý\n" -#: src/newusers.c:506 +#: src/newusers.c:556 #, c-format msgid "%s: line %d: mkdir failed\n" msgstr "%s: ãñáììÞ %d: áðïôõ÷ßá äçìéïõñãßáò êáôáëüãïõ(mkdir)\n" -#: src/newusers.c:510 +#: src/newusers.c:560 #, c-format msgid "%s: line %d: chown failed\n" msgstr "%s: ãñáììÞ %d: áðïôõ÷ßá áëëáãÞò éäéïêôÞôç(chown)\n" -#: src/newusers.c:519 +#: src/newusers.c:569 #, c-format msgid "%s: line %d: can't update entry\n" msgstr "%s: ãñáììÞ %d: áäõíáìßá áíáíÝùóçò êáôá÷þñçóçò\n" -#: src/newusers.c:550 +#: src/newusers.c:600 #, c-format msgid "%s: error updating files\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí åíçìÝñùóç áñ÷åßùí\n" @@ -1905,517 +1919,523 @@ msgstr "" msgid "Entering System Maintenance Mode\n" msgstr "¸íáñîç ÊáôÜóôáóçò ÓõíôÞñçóçò ÓõóôÞìáôïò\n" -#: src/useradd.c:243 +#: src/useradd.c:249 #, c-format msgid "%s: rebuild the group database\n" msgstr "%s: åðáíáêôßóôå ôçí âÜóç äåäïìÝíùí ïìÜäùí\n" -#: src/useradd.c:250 +#: src/useradd.c:256 #, c-format msgid "%s: rebuild the shadow group database\n" msgstr "%s: åðáíáêôßóôå ôçí âÜóç äåäïìÝíùí ôùí óêéùäþí óõíèçìáôéêþí ïìÜäùí\n" -#: src/useradd.c:287 src/usermod.c:967 +#: src/useradd.c:293 src/usermod.c:973 #, c-format msgid "%s: invalid numeric argument `%s'\n" msgstr "%s: Ìç Ýãêõñç áñéèìçôéêÞ ðáñÜìåôñïò `%s'\n" -#: src/useradd.c:343 +#: src/useradd.c:349 #, c-format msgid "%s: unknown gid %s\n" msgstr "%s: Üãíùóôï gid %s\n" -#: src/useradd.c:350 src/useradd.c:642 src/useradd.c:1228 src/usermod.c:254 -#: src/usermod.c:1098 +#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260 +#: src/usermod.c:1104 #, c-format msgid "%s: unknown group %s\n" msgstr "%s: Üãíùóôç ïìÜäá %s\n" -#: src/useradd.c:418 +#: src/useradd.c:424 #, c-format msgid "group=%s,%ld basedir=%s skel=%s\n" msgstr "ïìÜäá=%s,%ld âáóéêüò_êáôáë=%s óêåë=%s\n" -#: src/useradd.c:421 +#: src/useradd.c:427 #, c-format msgid "shell=%s " msgstr "öëïéüò=%s " -#: src/useradd.c:423 +#: src/useradd.c:429 #, c-format msgid "inactive=%ld expire=%s" msgstr "áíåíåñãü=%ld ëÞîç=%s" -#: src/useradd.c:427 +#: src/useradd.c:433 #, c-format msgid "GROUP=%ld\n" msgstr "ÏÌÁÄÁ=%ld\n" -#: src/useradd.c:428 +#: src/useradd.c:434 #, c-format msgid "HOME=%s\n" msgstr "ÌÇÔÑÉÊÏÓ_ÊÁÔÁËÏÃÏÓ=%s\n" -#: src/useradd.c:430 +#: src/useradd.c:436 #, c-format msgid "INACTIVE=%ld\n" msgstr "ÁÍÅÍÅÑÃÏÓ=%ld\n" -#: src/useradd.c:431 +#: src/useradd.c:437 #, c-format msgid "EXPIRE=%s\n" msgstr "ËÇÎÇ=%s\n" -#: src/useradd.c:433 +#: src/useradd.c:439 #, c-format msgid "SHELL=%s\n" msgstr "ÊÅËÕÖÏÓ=%s\n" -#: src/useradd.c:434 +#: src/useradd.c:440 #, c-format msgid "SKEL=%s\n" msgstr "ÓÊÅË=%s\n" -#: src/useradd.c:470 +#: src/useradd.c:476 #, c-format msgid "%s: cannot create new defaults file\n" msgstr "%s: áäõíáìßá äçìéïõñãßáò íÝïõ áñ÷åßïõ ðñïêáèïñéóìÝíùí ñõèìßóåùí\n" -#: src/useradd.c:564 src/useradd.c:575 +#: src/useradd.c:570 src/useradd.c:581 #, c-format msgid "%s: rename: %s" msgstr "%s: ìåôïíïìáóßá: %s" -#: src/useradd.c:662 src/usermod.c:274 +#: src/useradd.c:668 src/usermod.c:280 #, c-format msgid "%s: group `%s' is a NIS group.\n" msgstr "%s: Ç ïìÜäá `%s' åßíáé NIS ïìÜäá.\n" -#: src/useradd.c:670 src/usermod.c:282 +#: src/useradd.c:676 src/usermod.c:288 #, c-format msgid "%s: too many groups specified (max %d).\n" msgstr "%s: Ðñïóäéïñßóôçêáí õðåñâïëéêÝò ïìÜäåò (ìåã. %d).\n" -#: src/useradd.c:702 src/usermod.c:314 +#: src/useradd.c:708 src/usermod.c:320 #, c-format msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n" msgstr "÷ñÞóç: %s\t[-u uid [-o]] [-g ïìÜäá] [-G ïìÜäá,...] \n" -#: src/useradd.c:705 +#: src/useradd.c:711 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n" msgstr "" "\t\t[-d ìçôñéêüò_êáôÜëïãïò] [-s öëïéüò] [-c ó÷üëéï]\n" "\t\t[-m [-k êáíüíáò]]\n" -#: src/useradd.c:708 src/usermod.c:320 +#: src/useradd.c:714 src/usermod.c:326 msgid "[-f inactive] [-e expire ] " msgstr "[-f áíåíåñãü] [-e ëÞîç ] " -#: src/useradd.c:711 +#: src/useradd.c:717 msgid "[-A program] " msgstr "[-A ðñüãñáììá] " -#: src/useradd.c:713 +#: src/useradd.c:719 msgid "[-p passwd] name\n" msgstr "[-p óõíèçìáôéêü] üíïìá\n" -#: src/useradd.c:715 +#: src/useradd.c:721 #, c-format msgid " %s\t-D [-g group] [-b base] [-s shell]\n" msgstr " %s\t-D [-g ïìÜäá] [-b âÜóç] [-s öëïéüò]\n" -#: src/useradd.c:718 +#: src/useradd.c:724 msgid "\t\t[-f inactive] [-e expire ]\n" msgstr "\t\t[-f áíåíåñãü] [-e ëÞîç ]\n" -#: src/useradd.c:815 src/usermod.c:472 +#: src/useradd.c:821 src/usermod.c:478 #, c-format msgid "%s: error locking group file\n" msgstr "%s: ÓöÜëìá êáôÜ ôï êëåßäùìá ôïõ áñ÷åßïõ ïìÜäùí\n" -#: src/useradd.c:819 src/usermod.c:477 +#: src/useradd.c:825 src/usermod.c:483 #, c-format msgid "%s: error opening group file\n" msgstr "%s: ÓöÜëìá êáôÜ ôï Üíïéãìá ôïõ áñ÷åßïõ ïìÜäùí\n" -#: src/useradd.c:824 src/usermod.c:584 +#: src/useradd.c:830 src/usermod.c:590 #, c-format msgid "%s: error locking shadow group file\n" msgstr "%s: ÓöÜëìá êáôÜ ôï êëåßäùìá ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n" -#: src/useradd.c:829 src/usermod.c:590 +#: src/useradd.c:835 src/usermod.c:596 #, c-format msgid "%s: error opening shadow group file\n" msgstr "%s: ÓöÜëìá êáôÜ ôï Üíïéãìá ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n" -#: src/useradd.c:1001 +#: src/useradd.c:1007 #, c-format msgid "%s: uid %d is not unique\n" msgstr "%s: Ôï uid %d äåí åßíáé ìïíáäéêü\n" -#: src/useradd.c:1031 +#: src/useradd.c:1037 #, c-format msgid "%s: can't get unique uid\n" msgstr "%s: áäõíáìßá åõñåóçò ìïíáäéêïý uid\n" -#: src/useradd.c:1139 src/useradd.c:1283 src/usermod.c:1046 src/usermod.c:1057 -#: src/usermod.c:1067 src/usermod.c:1113 src/usermod.c:1157 +#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063 +#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163 #, c-format msgid "%s: invalid field `%s'\n" msgstr "%s: Ìç Ýãêõñï ðåäßï `%s'\n" -#: src/useradd.c:1153 +#: src/useradd.c:1159 #, c-format msgid "%s: invalid base directory `%s'\n" msgstr "%s: Ìç Ýãêõñïò êáôÜëïãïò âÜóçò `%s'\n" -#: src/useradd.c:1163 +#: src/useradd.c:1169 #, c-format msgid "%s: invalid comment `%s'\n" msgstr "%s: Ìç Ýãêõñï ó÷üëéï `%s'\n" -#: src/useradd.c:1173 +#: src/useradd.c:1179 #, c-format msgid "%s: invalid home directory `%s'\n" msgstr "%s: Ìç Ýãêõñïò ìçôñéêüò êáôÜëïãïò ÷ñÞóôç `%s'\n" -#: src/useradd.c:1191 src/usermod.c:1080 +#: src/useradd.c:1197 src/usermod.c:1086 #, c-format msgid "%s: invalid date `%s'\n" msgstr "%s: Ìç Ýãêõñç çìåñïìçíßá `%s'\n" -#: src/useradd.c:1203 +#: src/useradd.c:1209 #, c-format msgid "%s: shadow passwords required for -e\n" msgstr "%s: óêéþäç óõíèçìáôéêÜ áðáéôïýíôáé ãéá ôï -e\n" -#: src/useradd.c:1218 +#: src/useradd.c:1224 #, c-format msgid "%s: shadow passwords required for -f\n" msgstr "%s: óêéþäç óõíèçìáôéêÜ áðáéôïýíôáé ãéá -f\n" -#: src/useradd.c:1292 +#: src/useradd.c:1298 #, c-format msgid "%s: invalid shell `%s'\n" msgstr "%s: Ìç Ýãêõñïò öëïéüò `%s'\n" -#: src/useradd.c:1333 +#: src/useradd.c:1339 #, c-format msgid "%s: invalid user name `%s'\n" msgstr "%s: Ìç Ýãêõñï üíïìá ÷ñÞóôç `%s'\n" -#: src/useradd.c:1369 src/userdel.c:292 src/usermod.c:1225 +#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231 #, c-format msgid "%s: cannot rewrite password file\n" msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/useradd.c:1374 src/userdel.c:295 src/usermod.c:1230 +#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236 #, c-format msgid "%s: cannot rewrite shadow password file\n" msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/useradd.c:1414 src/userdel.c:359 src/usermod.c:1265 +#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271 #, c-format msgid "%s: unable to lock password file\n" msgstr "%s: Áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/useradd.c:1418 src/userdel.c:363 src/usermod.c:1269 +#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275 #, c-format msgid "%s: unable to open password file\n" msgstr "%s: Áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ óõíèçìáôéêþí\n" -#: src/useradd.c:1424 src/userdel.c:368 src/usermod.c:1274 +#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280 #, c-format msgid "%s: cannot lock shadow password file\n" msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/useradd.c:1430 src/userdel.c:373 src/usermod.c:1279 +#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285 #, c-format msgid "%s: cannot open shadow password file\n" msgstr "%s: áäõíáìßá áíïßãìáôïò áñ÷åßïõ óêéùäþí óõíèçìáôéêþí\n" -#: src/useradd.c:1529 src/usermod.c:1366 +#: src/useradd.c:1535 src/usermod.c:1372 #, c-format msgid "%s: error adding authentication method\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç ìåèüäïõ åîáêñßâùóçò\n" -#: src/useradd.c:1552 +#: src/useradd.c:1558 #, c-format msgid "%s: error adding new password entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï áñ÷åßï óõíèçìáôéêþí\n" -#: src/useradd.c:1567 +#: src/useradd.c:1573 #, c-format msgid "%s: error updating password dbm entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï dbm áñ÷åßï óõíèçìáôéêþí\n" -#: src/useradd.c:1583 src/usermod.c:1425 +#: src/useradd.c:1589 src/usermod.c:1431 #, c-format msgid "%s: error adding new shadow password entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí " "óõíèçìáôéêþí\n" -#: src/useradd.c:1599 src/usermod.c:1440 +#: src/useradd.c:1605 src/usermod.c:1446 #, c-format msgid "%s: error updating shadow passwd dbm entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóåùí óôï dbm áñ÷åßï óêéùäþí " "óõíèçìáôéêþí\n" -#: src/useradd.c:1631 +#: src/useradd.c:1637 #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: áäõíáìßá äçìéïõñãßáò êáôáëüãïõ %s\n" -#: src/useradd.c:1708 src/usermod.c:1203 +#: src/useradd.c:1758 src/usermod.c:1209 #, c-format msgid "%s: user %s exists\n" msgstr "%s: Ï ÷ñÞóôçò %s õðÜñ÷åé\n" -#: src/useradd.c:1738 +#: src/useradd.c:1770 +#, c-format +msgid "" +"%s: group %s exists - if you want to add this user to that group, use -g.\n" +msgstr "" + +#: src/useradd.c:1801 #, c-format msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n" msgstr "" -#: src/userdel.c:127 +#: src/userdel.c:133 #, c-format msgid "usage: %s [-r] name\n" msgstr "÷ñÞóç: %s [-r] üíïìá\n" -#: src/userdel.c:178 src/userdel.c:260 +#: src/userdel.c:184 src/userdel.c:266 #, c-format msgid "%s: error updating group entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí áíáíÝùóç êáôá÷ùñÞóçò ïìÜäáò\n" -#: src/userdel.c:188 src/userdel.c:269 +#: src/userdel.c:194 src/userdel.c:275 #, c-format msgid "%s: cannot update dbm group entry\n" msgstr "%s: áäõíáìßá áíáíÝùóçò ôçò dbm êáôá÷þñçóçò óôï áñ÷åßï ïìÜäùí\n" -#: src/userdel.c:215 +#: src/userdel.c:221 #, fuzzy, c-format msgid "%s: cannot remove dbm group entry\n" msgstr "%s: áäõíáìßá áíáíÝùóçò ôçò dbm êáôá÷þñçóçò óôï áñ÷åßï ïìÜäùí\n" -#: src/userdel.c:300 +#: src/userdel.c:306 #, c-format msgid "%s: cannot rewrite TCFS key file\n" msgstr "%s: áäõíáìßá åðáíåããñáöÞò ôïõ áñ÷åßïõ êëåéäéþí ôïõ TCFS\n" -#: src/userdel.c:380 +#: src/userdel.c:386 #, c-format msgid "%s: cannot lock TCFS key file\n" msgstr "%s: áäõíáìßá êëåéäþìáôïò ôïõ áñ÷åßïõ êëåéäéþí ôïõ TCFS\n" -#: src/userdel.c:384 +#: src/userdel.c:390 #, c-format msgid "%s: cannot open TCFS key file\n" msgstr "%s: áäõíáìßá áíïßãìáôïò ôïõ áñ÷åßïõ êëåéäéþí ôïõ TCFS\n" -#: src/userdel.c:393 +#: src/userdel.c:399 #, c-format msgid "%s: cannot open group file\n" msgstr "%s: áäõíáìßá áíïßãìáôïò áñ÷åßïõ ïìÜäùí\n" -#: src/userdel.c:403 +#: src/userdel.c:409 #, c-format msgid "%s: cannot open shadow group file\n" msgstr "%s: áäõíáìßá áíïßãìáôïò áñ÷åßïõ óêéùäþí óõíèçìáôéêþí ïìÜäùí\n" -#: src/userdel.c:434 src/userdel.c:449 +#: src/userdel.c:440 src/userdel.c:455 #, c-format msgid "%s: error deleting authentication\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ åîáêñßâùóçò\n" -#: src/userdel.c:458 +#: src/userdel.c:464 #, c-format msgid "%s: error deleting password entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ êáôá÷þñçóçò óôï áñ÷åßï óõíèçìáôéêþí\n" -#: src/userdel.c:461 +#: src/userdel.c:467 #, c-format msgid "%s: error deleting shadow password entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n" -#: src/userdel.c:470 +#: src/userdel.c:476 #, c-format msgid "%s: error deleting TCFS entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ êáôá÷þñçóçò ôïõ TCFS\n" -#: src/userdel.c:483 +#: src/userdel.c:489 #, c-format msgid "%s: error deleting password dbm entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ êáôá÷þñçóçò óôï dbm áñ÷åßï óõíèçìáôéêþí\n" -#: src/userdel.c:502 +#: src/userdel.c:508 #, c-format msgid "%s: error deleting shadow passwd dbm entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ êáôá÷þñçóçò óôï dbm áñ÷åßï óêéùäþí " "óõíèçìáôéêþí\n" -#: src/userdel.c:543 +#: src/userdel.c:549 #, c-format msgid "%s: user %s is currently logged in\n" msgstr "%s: Ï ÷ñÞóôçò %s âñßóêåôáé óôï óýóôçìá\n" -#: src/userdel.c:660 +#: src/userdel.c:666 #, c-format msgid "%s: warning: %s not owned by %s, not removing\n" msgstr "%s: ðñïåéäïðïßçóç: Ôï %s äåí áíÞêåé óôïí %s, äåí äéáãñÜöåôáé\n" -#: src/userdel.c:666 +#: src/userdel.c:672 #, c-format msgid "%s: warning: can't remove " msgstr "%s: ðñïåéäïðïßçóç: áäõíáìßá äéáãñáöÞò " -#: src/userdel.c:741 src/usermod.c:994 +#: src/userdel.c:791 src/usermod.c:1000 #, c-format msgid "%s: user %s does not exist\n" msgstr "%s: Ï ÷ñÞóôçò %s äåí õðÜñ÷åé\n" -#: src/userdel.c:755 src/usermod.c:1010 +#: src/userdel.c:805 src/usermod.c:1016 #, c-format msgid "%s: user %s is a NIS user\n" msgstr "%s: Ï ÷ñÞóôçò %s åßíáé NIS ÷ñÞóôçò\n" -#: src/userdel.c:792 +#: src/userdel.c:842 #, c-format msgid "%s: %s not owned by %s, not removing\n" msgstr "%s: Ôï %s äåí áíÞêåé óôïí %s, äåí áöáéñåßôáé\n" -#: src/userdel.c:815 +#: src/userdel.c:865 #, c-format msgid "%s: not removing directory %s (would remove home of user %s)\n" msgstr "" "%s: Äåí äéáãñÜöåôáé ï êáôÜëïãïò %s (èá áöáéñïýóå ôïí ìçôñéêü êáôÜëïãï ôïõ " "÷ñÞóôç %s)\n" -#: src/userdel.c:828 +#: src/userdel.c:878 #, c-format msgid "%s: error removing directory %s\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ ôïõ êáôáëüãïõ %s\n" -#: src/usermod.c:317 +#: src/usermod.c:323 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n" msgstr "" "\t\t[-d ìçôñéêüò_êáôÜëïãïò [-m]] [-s öëïéüò] [-c ó÷üëéï]\n" "\t\t[-l íÝï_üíïìá]\n" -#: src/usermod.c:323 +#: src/usermod.c:329 msgid "[-A {DEFAULT|program},... ] " msgstr "[-A {DEFAULT|ðñüãñáììá},... ] " -#: src/usermod.c:325 +#: src/usermod.c:331 #, fuzzy msgid "[-p passwd] [-L|-U] name\n" msgstr "[-p óõíèçìáôéêü] üíïìá\n" -#: src/usermod.c:504 +#: src/usermod.c:510 #, c-format msgid "%s: out of memory in update_group\n" msgstr "%s: äåí õðÜñ÷åé åëåýèåñç ìíÞìç óôï update_group\n" -#: src/usermod.c:627 +#: src/usermod.c:633 #, c-format msgid "%s: out of memory in update_gshadow\n" msgstr "%s: óôï update_gshadow\n" -#: src/usermod.c:1180 +#: src/usermod.c:1186 #, c-format msgid "%s: no flags given\n" msgstr "%s: Äåí äüèçêáí åíäåßîåéò\n" -#: src/usermod.c:1187 +#: src/usermod.c:1193 #, c-format msgid "%s: shadow passwords required for -e and -f\n" msgstr "%s: óêéþäç óõíèçìáôéêÜ áðáéôïýíôáé ãéá ôï -e êáé -f\n" -#: src/usermod.c:1208 +#: src/usermod.c:1214 #, c-format msgid "%s: uid %ld is not unique\n" msgstr "%s: Ôï uid %ld äåí åßíáé ìïíáäéêü\n" -#: src/usermod.c:1356 +#: src/usermod.c:1362 #, c-format msgid "%s: error deleting authentication method\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí äéáãñáöÞ ìåèüäïõ åîáêñßâùóçò\n" -#: src/usermod.c:1376 +#: src/usermod.c:1382 #, c-format msgid "%s: error changing authentication method\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí áëëáãÞ ìåèüäïõ åîáêñßâùóçò\n" -#: src/usermod.c:1393 +#: src/usermod.c:1399 #, c-format msgid "%s: error changing password entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí áëëáãÞ êáôá÷þñçóçò óõíèçìáôéêïý\n" -#: src/usermod.c:1399 +#: src/usermod.c:1405 #, c-format msgid "%s: error removing password entry\n" msgstr "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò óôï áñ÷åßï óõíèçìáôéêþí\n" -#: src/usermod.c:1407 +#: src/usermod.c:1413 #, c-format msgid "%s: error adding password dbm entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí ðñïóèÞêç íÝáò êáôá÷þñçóçò óôï dbm áñ÷åßï óõíèçìáôéêþí\n" -#: src/usermod.c:1414 +#: src/usermod.c:1420 #, c-format msgid "%s: error removing passwd dbm entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò áðü ôï dbm áñ÷åßï óõíèçìáôéêþí\n" -#: src/usermod.c:1431 +#: src/usermod.c:1437 #, c-format msgid "%s: error removing shadow password entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò óôï áñ÷åßï óêéùäþí óõíèçìáôéêþí\n" -#: src/usermod.c:1446 +#: src/usermod.c:1452 #, c-format msgid "%s: error removing shadow passwd dbm entry\n" msgstr "" "%s: ÓöÜëìá êáôÜ ôçí áöáßñåóç êáôá÷þñçóçò óôï dbm áñ÷åßï óêéùäþí " "óõíèçìáôéêþí\n" -#: src/usermod.c:1477 +#: src/usermod.c:1483 #, c-format msgid "%s: directory %s exists\n" msgstr "%s: ï êáôÜëïãïò %s õðÜñ÷åé\n" -#: src/usermod.c:1484 +#: src/usermod.c:1490 #, c-format msgid "%s: can't create %s\n" msgstr "%s: áäõíáìßá äçìéïõñãßáò ôïõ %s\n" -#: src/usermod.c:1490 +#: src/usermod.c:1496 #, c-format msgid "%s: can't chown %s\n" msgstr "%s: Áäõíáìßá áëëáãÞò éäéïêôÞôç(chown) ôïõ %s\n" -#: src/usermod.c:1506 +#: src/usermod.c:1512 #, c-format msgid "%s: cannot rename directory %s to %s\n" msgstr "%s: áäõíáìßá ìåôïíïìáóßáò ôïõ êáôáëüãïõ %s óå %s\n" #. better leave it alone -#: src/usermod.c:1603 +#: src/usermod.c:1609 #, c-format msgid "%s: warning: %s not owned by %s\n" msgstr "%s: ðñïåéäïðïßçóç: Ôï %s äåí áíÞêåé óôïí %s\n" -#: src/usermod.c:1609 +#: src/usermod.c:1615 msgid "failed to change mailbox owner" msgstr "áðïôõ÷ßá áëëáãÞò ôïõ éäéïêôÞôç ôïõ ãñáììáôïêéâùôßïõ" -#: src/usermod.c:1616 +#: src/usermod.c:1622 msgid "failed to rename mailbox" msgstr "áðïôõ÷ßá ìåôïíïìáóßáò ãñáììáôïêéâùôßïõ" diff --git a/po/fr.gmo b/po/fr.gmo index 93f5fb5347b7498bc8f95aeac433e156012a3633..e62bca38fa45ddf2862331d833d32e570dd171f8 100644 GIT binary patch delta 25 gcmZqP$<(})X#;Zvm!W~Kp^<`tnU&FI-iR_60A@x9M*si- delta 25 gcmZqP$<(})X#;Zvmw~0OfsuldftAT--iR_60A`m5OaK4? diff --git a/po/fr.po b/po/fr.po index 0af05aee..492be13e 100644 --- a/po/fr.po +++ b/po/fr.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 19990709\n" -"POT-Creation-Date: 2000-09-02 20:40+0200\n" +"POT-Creation-Date: 2000-10-12 06:20+0200\n" "PO-Revision-Date: 1999-07-09 20:02+0200\n" "Last-Translator: Vincent Renardias \n" "Language-Team: Vincent Renardias \n" @@ -227,7 +227,7 @@ msgstr "" msgid "Unknown error %d" msgstr "Erreur %d inconnue" -#: src/chage.c:156 +#: src/chage.c:162 #, c-format msgid "" "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n" @@ -237,14 +237,14 @@ msgstr "" " [ -W avertissement ] [ -I inactif ] [ -E expire ] [ -d dernier_jour ]\n" " utilisateur\n" -#: src/chage.c:158 +#: src/chage.c:164 #, c-format msgid "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n" msgstr "" "Usage: %s [ -l ] [ -m min_jours ] [ -M max_jours ] [ -d dernier_jour ] " "utilisateur\n" -#: src/chage.c:193 +#: src/chage.c:199 msgid "" "Enter the new value, or press return for the default\n" "\n" @@ -252,27 +252,27 @@ msgstr "" "Entrez la nouvelle valeur ou tapes Entrée pour la valeur par défaut\n" "\n" -#: src/chage.c:196 +#: src/chage.c:202 msgid "Minimum Password Age" msgstr "Age minimum du mot de passe" -#: src/chage.c:201 +#: src/chage.c:207 msgid "Maximum Password Age" msgstr "Age maximum du mot de passe" -#: src/chage.c:207 +#: src/chage.c:213 msgid "Last Password Change (YYYY-MM-DD)" msgstr "Dernier changement de mot de passe (YYYY-MM-DD)" -#: src/chage.c:216 +#: src/chage.c:222 msgid "Password Expiration Warning" msgstr "Avertissement d'expiration de mot de passe" -#: src/chage.c:221 +#: src/chage.c:227 msgid "Password Inactive" msgstr "Mot de passe désactivé" -#: src/chage.c:227 +#: src/chage.c:233 msgid "Account Expiration Date (YYYY-MM-DD)" msgstr "Date d'expiration du compte (YYYY-MM-DD)" @@ -284,22 +284,22 @@ msgstr "Date d'expiration du compte (YYYY-MM-DD)" #. * days after the password expires that the account becomes #. * unusable. #. -#: src/chage.c:281 +#: src/chage.c:287 #, c-format msgid "Minimum:\t%ld\n" msgstr "Minimum :\t%ld\n" -#: src/chage.c:282 +#: src/chage.c:288 #, c-format msgid "Maximum:\t%ld\n" msgstr "Maximum :\t%ld\n" -#: src/chage.c:284 +#: src/chage.c:290 #, c-format msgid "Warning:\t%ld\n" msgstr "Avertissement :\t%ld\n" -#: src/chage.c:285 +#: src/chage.c:291 #, c-format msgid "Inactive:\t%ld\n" msgstr "Désactivé :\t%ld\n" @@ -309,11 +309,11 @@ msgstr "D #. * password was last modified. The date is the number of #. * days since 1/1/1970. #. -#: src/chage.c:294 +#: src/chage.c:300 msgid "Last Change:\t\t" msgstr "Dernier changement :\t\t" -#: src/chage.c:296 src/chage.c:310 src/chage.c:327 src/chage.c:340 +#: src/chage.c:302 src/chage.c:316 src/chage.c:333 src/chage.c:346 msgid "Never\n" msgstr "Jamais\n" @@ -322,7 +322,7 @@ msgstr "Jamais\n" #. * change date plus the number of days the password is valid #. * for. #. -#: src/chage.c:308 +#: src/chage.c:314 msgid "Password Expires:\t" msgstr "Expiration du mot de passe :\t" @@ -332,7 +332,7 @@ msgstr "Expiration du mot de passe :\t" #. * and the number of inactive days is added. The resulting date #. * is when the active will be disabled. #. -#: src/chage.c:324 +#: src/chage.c:330 #, fuzzy msgid "Password Inactive:\t" msgstr "Mot de passe désactivé" @@ -341,82 +341,96 @@ msgstr "Mot de passe d #. * The account will expire on the given date regardless of the #. * password expiring or not. #. -#: src/chage.c:338 +#: src/chage.c:344 #, fuzzy msgid "Account Expires:\t" msgstr "Expiration du mot de passe :\t" -#: src/chage.c:486 +#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322 +#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738 +#: src/usermod.c:1684 +#, fuzzy, c-format +msgid "%s: PAM authentication failed\n" +msgstr "%s : erreur lors de l'ajout de la méthode d'authentification\n" + +#: src/chage.c:536 #, c-format msgid "%s: do not include \"l\" with other flags\n" msgstr "%s : ne pas include \"l\" avec les autres drapeaux\n" -#: src/chage.c:498 src/chage.c:610 src/login.c:529 +#: src/chage.c:548 src/chage.c:660 src/login.c:529 #, c-format msgid "%s: permission denied\n" msgstr "%s : permission refusée\n" -#: src/chage.c:510 src/chpasswd.c:120 +#: src/chage.c:560 src/chpasswd.c:170 #, c-format msgid "%s: can't lock password file\n" msgstr "%s: impossible de vérouiller de fichier de mots de passe\n" -#: src/chage.c:516 src/chpasswd.c:124 +#: src/chage.c:566 src/chpasswd.c:174 #, c-format msgid "%s: can't open password file\n" msgstr "%s: impossible d'ouvrir le fichier de mots de passe\n" -#: src/chage.c:523 +#: src/chage.c:573 #, c-format msgid "%s: unknown user: %s\n" msgstr "%s: utilisateur inconnu: %s\n" -#: src/chage.c:542 +#: src/chage.c:592 #, c-format msgid "%s: can't lock shadow password file\n" msgstr "%s : impossible de vérouiller le fichier shadow password\n" -#: src/chage.c:549 +#: src/chage.c:599 #, c-format msgid "%s: can't open shadow password file\n" msgstr "%s : impossible d'ouvrir le fichier shadow password\n" -#: src/chage.c:631 +#: src/chage.c:681 #, c-format msgid "Changing the aging information for %s\n" msgstr "Changement des informations sur l'age pour %s\n" -#: src/chage.c:633 +#: src/chage.c:683 #, c-format msgid "%s: error changing fields\n" msgstr "%s : erreur lors du changement des champs\n" -#: src/chage.c:660 src/chage.c:723 src/pwunconv.c:183 +#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183 #, c-format msgid "%s: can't update password file\n" msgstr "%s : impossible de mettre à jour le fichier passwd\n" -#: src/chage.c:690 src/pwunconv.c:178 +#: src/chage.c:740 src/pwunconv.c:178 #, c-format msgid "%s: can't update shadow password file\n" msgstr "%s : impossible de mettre à jour le fichier shadow password\n" -#: src/chage.c:739 src/chage.c:754 src/chfn.c:570 src/chsh.c:409 +#: src/chage.c:789 src/chage.c:804 src/chfn.c:570 src/chsh.c:409 #: src/passwd.c:825 src/passwd.c:926 msgid "Error updating the DBM password entry.\n" msgstr "Erreur durant la mise à jour de l'entrée du mot de passe DBM.\n" -#: src/chage.c:771 +#: src/chage.c:821 #, c-format msgid "%s: can't rewrite shadow password file\n" msgstr "%s : impossible de re-écrire le fichier shadow password\n" -#: src/chage.c:785 +#: src/chage.c:835 #, c-format msgid "%s: can't rewrite password file\n" msgstr "%s : impossible de re-écrire le fichier password\n" -#: src/chage.c:836 +#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409 +#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903 +#: src/usermod.c:1762 +#, fuzzy, c-format +msgid "%s: PAM chauthtok failed\n" +msgstr "%s : impossible de dévérouiller le fichier\n" + +#: src/chage.c:905 #, c-format msgid "%s: no aging information present\n" msgstr "%s : aucune information sur l'age\n" @@ -554,7 +568,7 @@ msgstr "" msgid "Cannot open the password file.\n" msgstr "Impossible d'ouvrir le fichier de mots de passe.\n" -#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1313 +#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319 #, c-format msgid "%s: %s not found in /etc/passwd\n" msgstr "%s: %s non trouvé dans /etc/passwd\n" @@ -572,53 +586,53 @@ msgstr "Impossible de valider le changement de mot de passe.\n" msgid "Cannot unlock the password file.\n" msgstr "Impossible de dévérouiller le fichier de mots de passe.\n" -#: src/chpasswd.c:76 +#: src/chpasswd.c:82 #, c-format msgid "usage: %s [-e]\n" msgstr "usage: %s [-e]\n" -#: src/chpasswd.c:132 src/pwconv.c:104 +#: src/chpasswd.c:182 src/pwconv.c:104 #, c-format msgid "%s: can't lock shadow file\n" msgstr "%s: impossible de vérouiller le fichier shadow\n" -#: src/chpasswd.c:137 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 +#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 #: src/pwunconv.c:123 #, c-format msgid "%s: can't open shadow file\n" msgstr "%s: impossible d'ouvrir le fichier shadow\n" -#: src/chpasswd.c:159 src/newusers.c:415 +#: src/chpasswd.c:209 src/newusers.c:465 #, c-format msgid "%s: line %d: line too long\n" msgstr "%s: ligne %d: ligne trop longue\n" -#: src/chpasswd.c:179 +#: src/chpasswd.c:229 #, c-format msgid "%s: line %d: missing new password\n" msgstr "%s: ligne %d: nouveau mot de passe manquant\n" -#: src/chpasswd.c:195 +#: src/chpasswd.c:245 #, c-format msgid "%s: line %d: unknown user %s\n" msgstr "%s: ligne %d: utilisateur %s inconnu\n" -#: src/chpasswd.c:247 +#: src/chpasswd.c:297 #, c-format msgid "%s: line %d: cannot update password entry\n" msgstr "%s: ligne %d: impossible de mettre le mot de passe à jour\n" -#: src/chpasswd.c:263 src/newusers.c:535 +#: src/chpasswd.c:313 src/newusers.c:585 #, c-format msgid "%s: error detected, changes ignored\n" msgstr "%s: erreur détectée; changements ignorés\n" -#: src/chpasswd.c:274 +#: src/chpasswd.c:324 #, c-format msgid "%s: error updating shadow file\n" msgstr "%s: erreur lors de la mise à jour du fichier shadow\n" -#: src/chpasswd.c:282 +#: src/chpasswd.c:332 #, c-format msgid "%s: error updating password file\n" msgstr "%s: erreur lors de la mise à jour du fichier de mots de passe\n" @@ -875,33 +889,33 @@ msgstr "%s : impossible de mettre msgid "%s: can't update DBM shadow files\n" msgstr "%s : impossible de mettre à jours les fichiers DBM shadow\n" -#: src/groupadd.c:105 +#: src/groupadd.c:111 msgid "usage: groupadd [-g gid [-o]] group\n" msgstr "usage: groupadd [-g gid [-o]] groupe\n" -#: src/groupadd.c:173 src/groupadd.c:196 src/groupmod.c:183 src/groupmod.c:230 -#: src/useradd.c:931 src/usermod.c:539 src/usermod.c:675 +#: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236 +#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681 #, c-format msgid "%s: error adding new group entry\n" msgstr "%s : erreur durant l'addition du nouveau groupe\n" -#: src/groupadd.c:183 src/groupadd.c:206 src/groupmod.c:199 src/useradd.c:942 -#: src/usermod.c:551 src/usermod.c:687 +#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948 +#: src/usermod.c:557 src/usermod.c:693 #, c-format msgid "%s: cannot add new dbm group entry\n" msgstr "%s : impossible d'ajouter une nouvelle entrée pour le groupe dbm\n" -#: src/groupadd.c:258 src/useradd.c:996 +#: src/groupadd.c:264 src/useradd.c:1002 #, c-format msgid "%s: name %s is not unique\n" msgstr "%s : le nom %s n'est pas unique\n" -#: src/groupadd.c:273 +#: src/groupadd.c:279 #, c-format msgid "%s: gid %ld is not unique\n" msgstr "%s : le gid %ld n'est pas unique\n" -#: src/groupadd.c:297 +#: src/groupadd.c:303 #, c-format msgid "%s: can't get unique gid\n" msgstr "%s : impossible d'obtenir un gid unique\n" @@ -909,78 +923,78 @@ msgstr "%s : impossible d'obtenir un gid unique\n" #. #. * All invalid group names land here. #. -#: src/groupadd.c:321 src/groupmod.c:341 +#: src/groupadd.c:327 src/groupmod.c:347 #, c-format msgid "%s: %s is a not a valid group name\n" msgstr "%s : %s n'est pas un nom de groupe valide\n" -#: src/groupadd.c:350 src/groupmod.c:367 +#: src/groupadd.c:356 src/groupmod.c:373 #, c-format msgid "%s: invalid group %s\n" msgstr "%s : groupe %s non valide\n" -#: src/groupadd.c:367 src/useradd.c:1272 +#: src/groupadd.c:373 src/useradd.c:1278 #, c-format msgid "%s: -O requires NAME=VALUE\n" msgstr "%s : -O requiert NAME=VALEUR\n" -#: src/groupadd.c:412 src/groupdel.c:167 src/groupmod.c:403 src/useradd.c:1381 -#: src/userdel.c:303 src/usermod.c:563 +#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387 +#: src/userdel.c:309 src/usermod.c:569 #, c-format msgid "%s: cannot rewrite group file\n" msgstr "%s : impossible de re-écrire le fichier group\n" -#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1389 -#: src/userdel.c:309 src/usermod.c:700 +#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395 +#: src/userdel.c:315 src/usermod.c:706 #, c-format msgid "%s: cannot rewrite shadow group file\n" msgstr "%s : impossible de re-écrire le fichier shadow group\n" -#: src/groupadd.c:437 src/groupdel.c:192 src/groupmod.c:428 src/userdel.c:389 +#: src/groupadd.c:443 src/groupdel.c:198 src/groupmod.c:434 src/userdel.c:395 #, c-format msgid "%s: unable to lock group file\n" msgstr "%s : impossible de vérouiller le fichier group\n" -#: src/groupadd.c:441 src/groupdel.c:196 src/groupmod.c:432 +#: src/groupadd.c:447 src/groupdel.c:202 src/groupmod.c:438 #, c-format msgid "%s: unable to open group file\n" msgstr "%s : impossible d'ouvrir le fichier group\n" -#: src/groupadd.c:446 src/groupdel.c:201 src/groupmod.c:437 src/userdel.c:398 +#: src/groupadd.c:452 src/groupdel.c:207 src/groupmod.c:443 src/userdel.c:404 #, c-format msgid "%s: unable to lock shadow group file\n" msgstr "%s : impossible de vérouiller le fichier group\n" -#: src/groupadd.c:451 src/groupdel.c:206 src/groupmod.c:442 +#: src/groupadd.c:457 src/groupdel.c:212 src/groupmod.c:448 #, c-format msgid "%s: unable to open shadow group file\n" msgstr "%s : impossible d'ouvrir le fichier shadow group\n" -#: src/groupadd.c:518 +#: src/groupadd.c:568 #, c-format msgid "%s: group %s exists\n" msgstr "%s : le groupe %s existe\n" -#: src/groupdel.c:86 +#: src/groupdel.c:92 msgid "usage: groupdel group\n" msgstr "usage: groupdel groupe\n" -#: src/groupdel.c:104 src/groupmod.c:187 src/groupmod.c:234 +#: src/groupdel.c:110 src/groupmod.c:193 src/groupmod.c:240 #, c-format msgid "%s: error removing group entry\n" msgstr "%s : erreur lors de retrait de l'entrée du groupe\n" -#: src/groupdel.c:116 src/groupmod.c:206 +#: src/groupdel.c:122 src/groupmod.c:212 #, c-format msgid "%s: error removing group dbm entry\n" msgstr "%s : erreur lors du retrait de l'entrée dbm du groupe\n" -#: src/groupdel.c:131 +#: src/groupdel.c:137 #, c-format msgid "%s: error removing shadow group entry\n" msgstr "%s : erreur lors du retrait de l'entrée shadow du groupe\n" -#: src/groupdel.c:144 src/groupmod.c:252 +#: src/groupdel.c:150 src/groupmod.c:258 #, c-format msgid "%s: error removing shadow group dbm entry\n" msgstr "%s : erreur lors du retrait de l'entrée dbm shadow du groupe\n" @@ -988,46 +1002,46 @@ msgstr "%s : erreur lors du retrait de l'entr #. #. * Can't remove the group. #. -#: src/groupdel.c:248 +#: src/groupdel.c:254 #, c-format msgid "%s: cannot remove user's primary group.\n" msgstr "%s : impossible d'enlever l'utilisateur de son groupe primaire.\n" -#: src/groupdel.c:305 src/groupmod.c:501 +#: src/groupdel.c:355 src/groupmod.c:551 #, c-format msgid "%s: group %s does not exist\n" msgstr "%s : le groupe %s n'existe pas\n" -#: src/groupdel.c:319 src/groupmod.c:517 +#: src/groupdel.c:369 src/groupmod.c:567 #, c-format msgid "%s: group %s is a NIS group\n" msgstr "%s : le groupe %s est un groupe NIS\n" -#: src/groupdel.c:325 src/groupmod.c:523 src/userdel.c:761 src/usermod.c:1016 +#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022 #, c-format msgid "%s: %s is the NIS master\n" msgstr "%s : %s est le maître NIS\n" -#: src/groupmod.c:105 +#: src/groupmod.c:111 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n" msgstr "usage : groupmod [-g gid [-o]] [-n nom] groupe\n" -#: src/groupmod.c:165 +#: src/groupmod.c:171 #, c-format msgid "%s: %s not found in /etc/group\n" msgstr "%s : %s non trouvé dans /etc/group\n" -#: src/groupmod.c:246 +#: src/groupmod.c:252 #, c-format msgid "%s: cannot add new dbm shadow group entry\n" msgstr "%s : impossible d'ajouter une nouvelle entrée dbm shadow group\n" -#: src/groupmod.c:299 +#: src/groupmod.c:305 #, c-format msgid "%s: %ld is not a unique gid\n" msgstr "%s : %ld n'est pas un gid unique\n" -#: src/groupmod.c:330 +#: src/groupmod.c:336 #, c-format msgid "%s: %s is not a unique name\n" msgstr "%s : %s n'est pas un nom unique\n" @@ -1470,67 +1484,67 @@ msgstr "D msgid "too many groups\n" msgstr "trop de groupes\n" -#: src/newusers.c:76 +#: src/newusers.c:82 #, c-format msgid "Usage: %s [ input ]\n" msgstr "Usage : %s [ entrée ] \n" -#: src/newusers.c:364 +#: src/newusers.c:414 #, c-format msgid "%s: can't lock /etc/passwd.\n" msgstr "%s : impossible de vérouiller /etc/passwd.\n" -#: src/newusers.c:375 +#: src/newusers.c:425 #, c-format msgid "%s: can't lock files, try again later\n" msgstr "%s : impossible de vérouiller les fichiers, essayez plus tard\n" -#: src/newusers.c:390 +#: src/newusers.c:440 #, c-format msgid "%s: can't open files\n" msgstr "%s : impossible d'ouvrir les fichiers\n" -#: src/newusers.c:435 +#: src/newusers.c:485 #, c-format msgid "%s: line %d: invalid line\n" msgstr "%s : ligne %d : ligne non valide\n" -#: src/newusers.c:453 +#: src/newusers.c:503 #, c-format msgid "%s: line %d: can't create GID\n" msgstr "%s : ligne %d : impossible de créer le GID\n" -#: src/newusers.c:469 +#: src/newusers.c:519 #, c-format msgid "%s: line %d: can't create UID\n" msgstr "%s : ligne %d : impossible de créer le GID\n" -#: src/newusers.c:481 +#: src/newusers.c:531 #, c-format msgid "%s: line %d: cannot find user %s\n" msgstr "%s : ligne %d : impossible de trouver l'utilisateur %s\n" -#: src/newusers.c:489 +#: src/newusers.c:539 #, c-format msgid "%s: line %d: can't update password\n" msgstr "%s : ligne %d : impossible de mettre le mot de passe à jour\n" -#: src/newusers.c:506 +#: src/newusers.c:556 #, c-format msgid "%s: line %d: mkdir failed\n" msgstr "%s : ligne %d : échec de mkdir\n" -#: src/newusers.c:510 +#: src/newusers.c:560 #, c-format msgid "%s: line %d: chown failed\n" msgstr "%s : ligne %d : échec de chown\n" -#: src/newusers.c:519 +#: src/newusers.c:569 #, c-format msgid "%s: line %d: can't update entry\n" msgstr "%s : ligne %d : impossible de mettre l'entrée à jour\n" -#: src/newusers.c:550 +#: src/newusers.c:600 #, c-format msgid "%s: error updating files\n" msgstr "%s : erreur lors de la mise à jour des fichiers\n" @@ -1887,500 +1901,506 @@ msgstr "" msgid "Entering System Maintenance Mode\n" msgstr "Entrée du système en mode maintenance\n" -#: src/useradd.c:243 +#: src/useradd.c:249 #, c-format msgid "%s: rebuild the group database\n" msgstr "%s : reconstruction de la base de données des groupes\n" -#: src/useradd.c:250 +#: src/useradd.c:256 #, c-format msgid "%s: rebuild the shadow group database\n" msgstr "%s : reconstruction de la base de données des groupes shadow\n" -#: src/useradd.c:287 src/usermod.c:967 +#: src/useradd.c:293 src/usermod.c:973 #, c-format msgid "%s: invalid numeric argument `%s'\n" msgstr "%s : argument numérique `%s' non valide\n" -#: src/useradd.c:343 +#: src/useradd.c:349 #, c-format msgid "%s: unknown gid %s\n" msgstr "%s : gid %s inconnu\n" -#: src/useradd.c:350 src/useradd.c:642 src/useradd.c:1228 src/usermod.c:254 -#: src/usermod.c:1098 +#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260 +#: src/usermod.c:1104 #, c-format msgid "%s: unknown group %s\n" msgstr "%s : groupe %s inconnu\n" -#: src/useradd.c:418 +#: src/useradd.c:424 #, c-format msgid "group=%s,%ld basedir=%s skel=%s\n" msgstr "group=%s,%ld rép_base=%s skel=%s\n" -#: src/useradd.c:421 +#: src/useradd.c:427 #, c-format msgid "shell=%s " msgstr "shell=%s " -#: src/useradd.c:423 +#: src/useradd.c:429 #, c-format msgid "inactive=%ld expire=%s" msgstr "inactif=%ld expire=%s" -#: src/useradd.c:427 +#: src/useradd.c:433 #, c-format msgid "GROUP=%ld\n" msgstr "GROUP=%ld\n" -#: src/useradd.c:428 +#: src/useradd.c:434 #, c-format msgid "HOME=%s\n" msgstr "HOME=%s\n" -#: src/useradd.c:430 +#: src/useradd.c:436 #, c-format msgid "INACTIVE=%ld\n" msgstr "INACTIVE=%ld\n" -#: src/useradd.c:431 +#: src/useradd.c:437 #, c-format msgid "EXPIRE=%s\n" msgstr "EXPIRE=%s\n" -#: src/useradd.c:433 +#: src/useradd.c:439 #, c-format msgid "SHELL=%s\n" msgstr "SHELL=%s\n" -#: src/useradd.c:434 +#: src/useradd.c:440 #, c-format msgid "SKEL=%s\n" msgstr "SKEL=%s\n" -#: src/useradd.c:470 +#: src/useradd.c:476 #, c-format msgid "%s: cannot create new defaults file\n" msgstr "%s : impossible de créer un nouveau fichier de défauts\n" -#: src/useradd.c:564 src/useradd.c:575 +#: src/useradd.c:570 src/useradd.c:581 #, c-format msgid "%s: rename: %s" msgstr "%s : rename : %s" -#: src/useradd.c:662 src/usermod.c:274 +#: src/useradd.c:668 src/usermod.c:280 #, c-format msgid "%s: group `%s' is a NIS group.\n" msgstr "%s : le groupe `%s' est un groupe NIS.\n" -#: src/useradd.c:670 src/usermod.c:282 +#: src/useradd.c:676 src/usermod.c:288 #, c-format msgid "%s: too many groups specified (max %d).\n" msgstr "%s : trop de groupes spécifiés (max %d).\n" -#: src/useradd.c:702 src/usermod.c:314 +#: src/useradd.c:708 src/usermod.c:320 #, c-format msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n" msgstr "Usage : %s\t[-u uid [-o]] [-g groupe] [-G groupe,...] \n" -#: src/useradd.c:705 +#: src/useradd.c:711 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n" msgstr "\t\t[-d home] [-s shell] [-c commentaire] [-m [-k template]]\n" -#: src/useradd.c:708 src/usermod.c:320 +#: src/useradd.c:714 src/usermod.c:326 msgid "[-f inactive] [-e expire ] " msgstr "[-f inactif] [-e expire ] " -#: src/useradd.c:711 +#: src/useradd.c:717 msgid "[-A program] " msgstr "[-A program] " -#: src/useradd.c:713 +#: src/useradd.c:719 msgid "[-p passwd] name\n" msgstr "[-p mot-de-passe] nom\n" -#: src/useradd.c:715 +#: src/useradd.c:721 #, c-format msgid " %s\t-D [-g group] [-b base] [-s shell]\n" msgstr " %s\t-D [-g groupe] [-b base] [-s shell]\n" -#: src/useradd.c:718 +#: src/useradd.c:724 msgid "\t\t[-f inactive] [-e expire ]\n" msgstr "\t\t[-f inactif] [-e expire ]\n" -#: src/useradd.c:815 src/usermod.c:472 +#: src/useradd.c:821 src/usermod.c:478 #, c-format msgid "%s: error locking group file\n" msgstr "%s : erreur lors du vérouillage du fichier de groupe\n" -#: src/useradd.c:819 src/usermod.c:477 +#: src/useradd.c:825 src/usermod.c:483 #, c-format msgid "%s: error opening group file\n" msgstr "%s : erreur lors d'ouverture du fichier de groupe\n" -#: src/useradd.c:824 src/usermod.c:584 +#: src/useradd.c:830 src/usermod.c:590 #, c-format msgid "%s: error locking shadow group file\n" msgstr "%s : erreur lors du vérouillage du fichier shadow group\n" -#: src/useradd.c:829 src/usermod.c:590 +#: src/useradd.c:835 src/usermod.c:596 #, c-format msgid "%s: error opening shadow group file\n" msgstr "%s : erreur lors de l'ouverture du fichier shadow group\n" -#: src/useradd.c:1001 +#: src/useradd.c:1007 #, c-format msgid "%s: uid %d is not unique\n" msgstr "%s : l'uid %d n'est pas unique\n" -#: src/useradd.c:1031 +#: src/useradd.c:1037 #, c-format msgid "%s: can't get unique uid\n" msgstr "%s : impossible d'obtenir un uid unique\n" -#: src/useradd.c:1139 src/useradd.c:1283 src/usermod.c:1046 src/usermod.c:1057 -#: src/usermod.c:1067 src/usermod.c:1113 src/usermod.c:1157 +#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063 +#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163 #, c-format msgid "%s: invalid field `%s'\n" msgstr "%s : champs `%s' non valide\n" -#: src/useradd.c:1153 +#: src/useradd.c:1159 #, c-format msgid "%s: invalid base directory `%s'\n" msgstr "%s : répertoire de base non valide `%s'\n" -#: src/useradd.c:1163 +#: src/useradd.c:1169 #, c-format msgid "%s: invalid comment `%s'\n" msgstr "%s : commentaire `%s' non valide\n" -#: src/useradd.c:1173 +#: src/useradd.c:1179 #, c-format msgid "%s: invalid home directory `%s'\n" msgstr "%s : répertoire personnel `%s' non valide\n" -#: src/useradd.c:1191 src/usermod.c:1080 +#: src/useradd.c:1197 src/usermod.c:1086 #, c-format msgid "%s: invalid date `%s'\n" msgstr "%s : date `%s' non valide\n" -#: src/useradd.c:1203 +#: src/useradd.c:1209 #, c-format msgid "%s: shadow passwords required for -e\n" msgstr "%s : mots de passe shadow nécessaires pour -e\n" -#: src/useradd.c:1218 +#: src/useradd.c:1224 #, c-format msgid "%s: shadow passwords required for -f\n" msgstr "%s : mots de passe shadow nécessaires pour -f\n" -#: src/useradd.c:1292 +#: src/useradd.c:1298 #, c-format msgid "%s: invalid shell `%s'\n" msgstr "%s : shell `%s' non valide\n" -#: src/useradd.c:1333 +#: src/useradd.c:1339 #, c-format msgid "%s: invalid user name `%s'\n" msgstr "%s : nom d'utilisateur `%s' non valide\n" -#: src/useradd.c:1369 src/userdel.c:292 src/usermod.c:1225 +#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231 #, c-format msgid "%s: cannot rewrite password file\n" msgstr "%s : impossible de reécrire le fichier de mots de passe\n" -#: src/useradd.c:1374 src/userdel.c:295 src/usermod.c:1230 +#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236 #, c-format msgid "%s: cannot rewrite shadow password file\n" msgstr "%s : impossible de reécrire le fichier shadow\n" -#: src/useradd.c:1414 src/userdel.c:359 src/usermod.c:1265 +#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271 #, c-format msgid "%s: unable to lock password file\n" msgstr "%s : impossible de vérouiller le fichier de mots de passe\n" -#: src/useradd.c:1418 src/userdel.c:363 src/usermod.c:1269 +#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275 #, c-format msgid "%s: unable to open password file\n" msgstr "%s : impossible d'ouvrir le fichier de mots de passe\n" -#: src/useradd.c:1424 src/userdel.c:368 src/usermod.c:1274 +#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280 #, c-format msgid "%s: cannot lock shadow password file\n" msgstr "%s : impossible de vérouiller le fichier de mots de passe\n" -#: src/useradd.c:1430 src/userdel.c:373 src/usermod.c:1279 +#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285 #, c-format msgid "%s: cannot open shadow password file\n" msgstr "%s : impossible d'ouvrir le fichier shadow\n" -#: src/useradd.c:1529 src/usermod.c:1366 +#: src/useradd.c:1535 src/usermod.c:1372 #, c-format msgid "%s: error adding authentication method\n" msgstr "%s : erreur lors de l'ajout de la méthode d'authentification\n" -#: src/useradd.c:1552 +#: src/useradd.c:1558 #, c-format msgid "%s: error adding new password entry\n" msgstr "%s : erreur lors de l'ajout de la nouvelle entrée\n" -#: src/useradd.c:1567 +#: src/useradd.c:1573 #, c-format msgid "%s: error updating password dbm entry\n" msgstr "%s : erreur lors de la mise à jour de l'entrée dbm\n" -#: src/useradd.c:1583 src/usermod.c:1425 +#: src/useradd.c:1589 src/usermod.c:1431 #, c-format msgid "%s: error adding new shadow password entry\n" msgstr "%s : erreur lors de l'ajout de la nouvelle entrée shadow\n" -#: src/useradd.c:1599 src/usermod.c:1440 +#: src/useradd.c:1605 src/usermod.c:1446 #, c-format msgid "%s: error updating shadow passwd dbm entry\n" msgstr "%s : erreur lors de la mise à jour de l'entrée shadow passwd dbm\n" -#: src/useradd.c:1631 +#: src/useradd.c:1637 #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s : impossible de créer le répertoire %s\n" -#: src/useradd.c:1708 src/usermod.c:1203 +#: src/useradd.c:1758 src/usermod.c:1209 #, c-format msgid "%s: user %s exists\n" msgstr "%s : l'utilisateur %s existe\n" -#: src/useradd.c:1738 +#: src/useradd.c:1770 +#, c-format +msgid "" +"%s: group %s exists - if you want to add this user to that group, use -g.\n" +msgstr "" + +#: src/useradd.c:1801 #, c-format msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n" msgstr "" "%s : avertissement : CREATE_HOME non supporté, utilisez -m à la place.\n" -#: src/userdel.c:127 +#: src/userdel.c:133 #, c-format msgid "usage: %s [-r] name\n" msgstr "Usage : %s [-r] nom\n" -#: src/userdel.c:178 src/userdel.c:260 +#: src/userdel.c:184 src/userdel.c:266 #, c-format msgid "%s: error updating group entry\n" msgstr "%s : erreur lors de la mise à jour de l'entrée group\n" -#: src/userdel.c:188 src/userdel.c:269 +#: src/userdel.c:194 src/userdel.c:275 #, c-format msgid "%s: cannot update dbm group entry\n" msgstr "%s : impossible de mettre à jour l'entrée dbm group\n" -#: src/userdel.c:215 +#: src/userdel.c:221 #, fuzzy, c-format msgid "%s: cannot remove dbm group entry\n" msgstr "%s : impossible de mettre à jour l'entrée dbm group\n" -#: src/userdel.c:300 +#: src/userdel.c:306 #, c-format msgid "%s: cannot rewrite TCFS key file\n" msgstr "%s : impossible de reécrire le fichier de clés TCFS\n" -#: src/userdel.c:380 +#: src/userdel.c:386 #, c-format msgid "%s: cannot lock TCFS key file\n" msgstr "%s : impossible de vérouiller le fichier de clés TCFS\n" -#: src/userdel.c:384 +#: src/userdel.c:390 #, c-format msgid "%s: cannot open TCFS key file\n" msgstr "%s : impossible d'ouvrir le fichier de clés TCFS\n" -#: src/userdel.c:393 +#: src/userdel.c:399 #, c-format msgid "%s: cannot open group file\n" msgstr "%s : impossible d'ouvrir le fichier group\n" -#: src/userdel.c:403 +#: src/userdel.c:409 #, c-format msgid "%s: cannot open shadow group file\n" msgstr "%s : impossible d'ouvrir le fichier shadow group\n" -#: src/userdel.c:434 src/userdel.c:449 +#: src/userdel.c:440 src/userdel.c:455 #, c-format msgid "%s: error deleting authentication\n" msgstr "%s : erreur lors de l'effacement de l'authentification\n" -#: src/userdel.c:458 +#: src/userdel.c:464 #, c-format msgid "%s: error deleting password entry\n" msgstr "%s : erreur lors de la suppression de l'entrée dans /etc/passwd\n" -#: src/userdel.c:461 +#: src/userdel.c:467 #, c-format msgid "%s: error deleting shadow password entry\n" msgstr "%s : erreur lors de la suppression de l'entrée dans /etc/shadow\n" -#: src/userdel.c:470 +#: src/userdel.c:476 #, c-format msgid "%s: error deleting TCFS entry\n" msgstr "%s : erreur lors de l'effacement de l'entrée TCFS\n" -#: src/userdel.c:483 +#: src/userdel.c:489 #, c-format msgid "%s: error deleting password dbm entry\n" msgstr "%s : erreur lors de l'effacement de l'entrée dbm du mot de passe\n" -#: src/userdel.c:502 +#: src/userdel.c:508 #, c-format msgid "%s: error deleting shadow passwd dbm entry\n" msgstr "%s : erreur lors de l'effacement de l'entrée shadow passwd dbm\n" -#: src/userdel.c:543 +#: src/userdel.c:549 #, c-format msgid "%s: user %s is currently logged in\n" msgstr "%s : l'utilisateur %s est connecté\n" -#: src/userdel.c:660 +#: src/userdel.c:666 #, c-format msgid "%s: warning: %s not owned by %s, not removing\n" msgstr "%s : avertissement : %s n'appartient pas à %s, non enlevé\n" -#: src/userdel.c:666 +#: src/userdel.c:672 #, c-format msgid "%s: warning: can't remove " msgstr "%s : impossible d'enlever " -#: src/userdel.c:741 src/usermod.c:994 +#: src/userdel.c:791 src/usermod.c:1000 #, c-format msgid "%s: user %s does not exist\n" msgstr "%s : l'utilisateur %s n'existe pas\n" -#: src/userdel.c:755 src/usermod.c:1010 +#: src/userdel.c:805 src/usermod.c:1016 #, c-format msgid "%s: user %s is a NIS user\n" msgstr "%s : le compte %s est un compte NIS\n" -#: src/userdel.c:792 +#: src/userdel.c:842 #, c-format msgid "%s: %s not owned by %s, not removing\n" msgstr "%s : %s n'appartient pas à %s, non enlevé\n" -#: src/userdel.c:815 +#: src/userdel.c:865 #, c-format msgid "%s: not removing directory %s (would remove home of user %s)\n" msgstr "" "%s : répertoire %s non enlevé (cela enléverait le répertoire personnel de " "%s)\n" -#: src/userdel.c:828 +#: src/userdel.c:878 #, c-format msgid "%s: error removing directory %s\n" msgstr "%s : erreur lors de l'effacement du répertoire %s\n" -#: src/usermod.c:317 +#: src/usermod.c:323 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n" msgstr "\t\t[-d home [-m]] [-s shell] [-c commentaire] [-l nouveau_nom]\n" -#: src/usermod.c:323 +#: src/usermod.c:329 msgid "[-A {DEFAULT|program},... ] " msgstr "[-A {DÉFAUT|programme},... ] " -#: src/usermod.c:325 +#: src/usermod.c:331 #, fuzzy msgid "[-p passwd] [-L|-U] name\n" msgstr "[-p mot-de-passe] nom\n" -#: src/usermod.c:504 +#: src/usermod.c:510 #, c-format msgid "%s: out of memory in update_group\n" msgstr "%s : plus de mémoire pour update_group\n" -#: src/usermod.c:627 +#: src/usermod.c:633 #, c-format msgid "%s: out of memory in update_gshadow\n" msgstr "%s : plus de mémoire pour update_gshadow\n" -#: src/usermod.c:1180 +#: src/usermod.c:1186 #, c-format msgid "%s: no flags given\n" msgstr "%s : aucun drapeau donné\n" -#: src/usermod.c:1187 +#: src/usermod.c:1193 #, c-format msgid "%s: shadow passwords required for -e and -f\n" msgstr "%s : mots de passe shadow nécessaires pour -e ou -f\n" -#: src/usermod.c:1208 +#: src/usermod.c:1214 #, c-format msgid "%s: uid %ld is not unique\n" msgstr "%s : l'uid %ld n'est pas unique\n" -#: src/usermod.c:1356 +#: src/usermod.c:1362 #, c-format msgid "%s: error deleting authentication method\n" msgstr "%s : erreur lors de l'effacement de la méthode d'authentification\n" -#: src/usermod.c:1376 +#: src/usermod.c:1382 #, c-format msgid "%s: error changing authentication method\n" msgstr "%s : erreur lors du changement de la méthode d'authentification\n" -#: src/usermod.c:1393 +#: src/usermod.c:1399 #, c-format msgid "%s: error changing password entry\n" msgstr "%s : erreur lors du changement de l'entrée dans /etc/passwd\n" -#: src/usermod.c:1399 +#: src/usermod.c:1405 #, c-format msgid "%s: error removing password entry\n" msgstr "%s : erreur lors de l'effacement du mot de passe\n" -#: src/usermod.c:1407 +#: src/usermod.c:1413 #, c-format msgid "%s: error adding password dbm entry\n" msgstr "" -#: src/usermod.c:1414 +#: src/usermod.c:1420 #, c-format msgid "%s: error removing passwd dbm entry\n" msgstr "" -#: src/usermod.c:1431 +#: src/usermod.c:1437 #, c-format msgid "%s: error removing shadow password entry\n" msgstr "" -#: src/usermod.c:1446 +#: src/usermod.c:1452 #, c-format msgid "%s: error removing shadow passwd dbm entry\n" msgstr "" -#: src/usermod.c:1477 +#: src/usermod.c:1483 #, c-format msgid "%s: directory %s exists\n" msgstr "%s : le répertoire %s existe\n" -#: src/usermod.c:1484 +#: src/usermod.c:1490 #, c-format msgid "%s: can't create %s\n" msgstr "%s : impossible de créer %s\n" -#: src/usermod.c:1490 +#: src/usermod.c:1496 #, c-format msgid "%s: can't chown %s\n" msgstr "%s : impossible de changer le propriètaire de %s\n" -#: src/usermod.c:1506 +#: src/usermod.c:1512 #, c-format msgid "%s: cannot rename directory %s to %s\n" msgstr "%s : impossible de renommer le répertoire %s en %s\n" #. better leave it alone -#: src/usermod.c:1603 +#: src/usermod.c:1609 #, c-format msgid "%s: warning: %s not owned by %s\n" msgstr "%s : avertissement : %s n'appartient pas à %s\n" -#: src/usermod.c:1609 +#: src/usermod.c:1615 msgid "failed to change mailbox owner" msgstr "échec du changement de propriètaire de la mailbox" -#: src/usermod.c:1616 +#: src/usermod.c:1622 msgid "failed to rename mailbox" msgstr "échec du renommage de la mailbox" diff --git a/po/pl.gmo b/po/pl.gmo index e4ee08ef4efb807f38e7443a552d5e20ed6be36c..94ac1f63bdb89f18b1d456326064ad291cd3514b 100644 GIT binary patch delta 25 hcmX@Ohw0!RrVWRqxeN_-4UH5G%&d$ypN%eY0sw;L2}=L~ delta 25 hcmX@Ohw0!RrVWRqxeP3I4U80w46IBxpN%eY0sw\n" "Language-Team: PL \n" @@ -225,7 +225,7 @@ msgstr "" msgid "Unknown error %d" msgstr "Nieznany b³±d %d" -#: src/chage.c:156 +#: src/chage.c:162 #, c-format msgid "" "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n" @@ -234,14 +234,14 @@ msgstr "" "U¿ycie: %s [ -l ] [ -m min_dni ] [ -M maks_dni ] [ -W ostrze¿ ]\n" " [ -I nieaktywne ] [ -E utrata_wa¿no¶ci ] [ -d ostatni_dzieñ ] u¿ytkownik\n" -#: src/chage.c:158 +#: src/chage.c:164 #, c-format msgid "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n" msgstr "" "U¿ycie: %s [ -l ] [ -m min_dni ] [ -M maks_dni ] [ -d ostatni_dzieñ ] " "u¿ytkownik\n" -#: src/chage.c:193 +#: src/chage.c:199 msgid "" "Enter the new value, or press return for the default\n" "\n" @@ -249,27 +249,27 @@ msgstr "" "Wpisz now± warto¶æ lub wci¶nij return by przyj±c warto¶æ domy¶ln±\n" "\n" -#: src/chage.c:196 +#: src/chage.c:202 msgid "Minimum Password Age" msgstr "Minimalny wiek has³a" -#: src/chage.c:201 +#: src/chage.c:207 msgid "Maximum Password Age" msgstr "Maksymalny wiek has³a" -#: src/chage.c:207 +#: src/chage.c:213 msgid "Last Password Change (YYYY-MM-DD)" msgstr "Ostatnia zmiana has³a (RRRR-MM-DD)" -#: src/chage.c:216 +#: src/chage.c:222 msgid "Password Expiration Warning" msgstr "Ostrze¿enie o utracie wa¿no¶ci has³a" -#: src/chage.c:221 +#: src/chage.c:227 msgid "Password Inactive" msgstr "Has³o nieaktywne" -#: src/chage.c:227 +#: src/chage.c:233 msgid "Account Expiration Date (YYYY-MM-DD)" msgstr "Data utraty wa¿no¶ci konta (RRRR-MM-DD)" @@ -281,22 +281,22 @@ msgstr "Data utraty wa #. * days after the password expires that the account becomes #. * unusable. #. -#: src/chage.c:281 +#: src/chage.c:287 #, c-format msgid "Minimum:\t%ld\n" msgstr "Minimum:\t%ld\n" -#: src/chage.c:282 +#: src/chage.c:288 #, c-format msgid "Maximum:\t%ld\n" msgstr "Maksimim:\t%ld\n" -#: src/chage.c:284 +#: src/chage.c:290 #, c-format msgid "Warning:\t%ld\n" msgstr "Ostrze¿enie:\t%ld\n" -#: src/chage.c:285 +#: src/chage.c:291 #, c-format msgid "Inactive:\t%ld\n" msgstr "Nieaktywne:\t%ld\n" @@ -306,11 +306,11 @@ msgstr "Nieaktywne:\t%ld\n" #. * password was last modified. The date is the number of #. * days since 1/1/1970. #. -#: src/chage.c:294 +#: src/chage.c:300 msgid "Last Change:\t\t" msgstr "Ostatnia zmiana:\t\t" -#: src/chage.c:296 src/chage.c:310 src/chage.c:327 src/chage.c:340 +#: src/chage.c:302 src/chage.c:316 src/chage.c:333 src/chage.c:346 msgid "Never\n" msgstr "Nigdy\n" @@ -319,7 +319,7 @@ msgstr "Nigdy\n" #. * change date plus the number of days the password is valid #. * for. #. -#: src/chage.c:308 +#: src/chage.c:314 msgid "Password Expires:\t" msgstr "Has³o traci wa¿no¶æ:\t" @@ -329,7 +329,7 @@ msgstr "Has #. * and the number of inactive days is added. The resulting date #. * is when the active will be disabled. #. -#: src/chage.c:324 +#: src/chage.c:330 #, fuzzy msgid "Password Inactive:\t" msgstr "Has³o nieaktywne:\t" @@ -338,82 +338,96 @@ msgstr "Has #. * The account will expire on the given date regardless of the #. * password expiring or not. #. -#: src/chage.c:338 +#: src/chage.c:344 #, fuzzy msgid "Account Expires:\t" msgstr "Has³o traci wa¿no¶æ:\t" -#: src/chage.c:486 +#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322 +#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738 +#: src/usermod.c:1684 +#, fuzzy, c-format +msgid "%s: PAM authentication failed\n" +msgstr "%s: b³±d podczas dodawania metody uwierzytelniania\n" + +#: src/chage.c:536 #, c-format msgid "%s: do not include \"l\" with other flags\n" msgstr "%s: nie ³±cz \"l\" z innymi flagami\n" -#: src/chage.c:498 src/chage.c:610 src/login.c:529 +#: src/chage.c:548 src/chage.c:660 src/login.c:529 #, c-format msgid "%s: permission denied\n" msgstr "%s: odmowa dostêpu\n" -#: src/chage.c:510 src/chpasswd.c:120 +#: src/chage.c:560 src/chpasswd.c:170 #, c-format msgid "%s: can't lock password file\n" msgstr "%s: nie mogê zablokowaæ pliku z has³ami\n" -#: src/chage.c:516 src/chpasswd.c:124 +#: src/chage.c:566 src/chpasswd.c:174 #, c-format msgid "%s: can't open password file\n" msgstr "%s: nie mogê otworzyæ pliku z has³ami\n" -#: src/chage.c:523 +#: src/chage.c:573 #, c-format msgid "%s: unknown user: %s\n" msgstr "%s: nieznany u¿ytkownik: %s\n" -#: src/chage.c:542 +#: src/chage.c:592 #, c-format msgid "%s: can't lock shadow password file\n" msgstr "%s: nie mogê zablokowaæ pliku z ukrytymi has³ami\n" -#: src/chage.c:549 +#: src/chage.c:599 #, c-format msgid "%s: can't open shadow password file\n" msgstr "%s: nie mogê otworzyæ pliku z ukrytymi has³ami\n" -#: src/chage.c:631 +#: src/chage.c:681 #, c-format msgid "Changing the aging information for %s\n" msgstr "Zmieniam informacjê o u¿ytkowniku %s\n" -#: src/chage.c:633 +#: src/chage.c:683 #, c-format msgid "%s: error changing fields\n" msgstr "%s: b³±d podczas zmieniania pól\n" -#: src/chage.c:660 src/chage.c:723 src/pwunconv.c:183 +#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183 #, c-format msgid "%s: can't update password file\n" msgstr "%s: nie mogê zaktualizowaæ pliku z has³ami\n" -#: src/chage.c:690 src/pwunconv.c:178 +#: src/chage.c:740 src/pwunconv.c:178 #, c-format msgid "%s: can't update shadow password file\n" msgstr "%s: nie mogê zaktualizowaæ pliku z ukrytymi has³ami\n" -#: src/chage.c:739 src/chage.c:754 src/chfn.c:570 src/chsh.c:409 +#: src/chage.c:789 src/chage.c:804 src/chfn.c:570 src/chsh.c:409 #: src/passwd.c:825 src/passwd.c:926 msgid "Error updating the DBM password entry.\n" msgstr "B³±d podczas aktualizacki bazy hase³ DBM.\n" -#: src/chage.c:771 +#: src/chage.c:821 #, c-format msgid "%s: can't rewrite shadow password file\n" msgstr "%s: nie mogê przepisaæ pliku z ukrytymi has³ami\n" -#: src/chage.c:785 +#: src/chage.c:835 #, c-format msgid "%s: can't rewrite password file\n" msgstr "%s: nie mogê przepisaæ pliku z has³ami\n" -#: src/chage.c:836 +#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409 +#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903 +#: src/usermod.c:1762 +#, fuzzy, c-format +msgid "%s: PAM chauthtok failed\n" +msgstr "%s: nie mogê usun±c blokady z pliku\n" + +#: src/chage.c:905 #, c-format msgid "%s: no aging information present\n" msgstr "%s: brak informacji\n" @@ -552,7 +566,7 @@ msgstr "Nie mog msgid "Cannot open the password file.\n" msgstr "Nie mogê otworzyæ pliku z has³ami.\n" -#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1313 +#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319 #, c-format msgid "%s: %s not found in /etc/passwd\n" msgstr "%s: %s nie znaleziony w /etc/passwd\n" @@ -570,53 +584,53 @@ msgstr "Wprowadzenie zmian do pliku passwd jest niemo msgid "Cannot unlock the password file.\n" msgstr "Nie mogê usun±c blokady z pliku z has³ami.\n" -#: src/chpasswd.c:76 +#: src/chpasswd.c:82 #, c-format msgid "usage: %s [-e]\n" msgstr "u¿ycie: %s [-e]\n" -#: src/chpasswd.c:132 src/pwconv.c:104 +#: src/chpasswd.c:182 src/pwconv.c:104 #, c-format msgid "%s: can't lock shadow file\n" msgstr "%s: nie mogê zablokowaæ pliku z ukrytymi has³ami\n" -#: src/chpasswd.c:137 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 +#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 #: src/pwunconv.c:123 #, c-format msgid "%s: can't open shadow file\n" msgstr "%s: nie mogê otworzyæ pliku z ukrytymi has³ami\n" -#: src/chpasswd.c:159 src/newusers.c:415 +#: src/chpasswd.c:209 src/newusers.c:465 #, c-format msgid "%s: line %d: line too long\n" msgstr "%s: linia %d: linia zbyt d³uga\n" -#: src/chpasswd.c:179 +#: src/chpasswd.c:229 #, c-format msgid "%s: line %d: missing new password\n" msgstr "%s: linia %d: brakuje nowego has³a\n" -#: src/chpasswd.c:195 +#: src/chpasswd.c:245 #, c-format msgid "%s: line %d: unknown user %s\n" msgstr "%s: linia %d: nieznany u¿ytkownik %s\n" -#: src/chpasswd.c:247 +#: src/chpasswd.c:297 #, c-format msgid "%s: line %d: cannot update password entry\n" msgstr "%s: linia %d: nie mogê zaktualizowaæ wpisu do bazy hase³\n" -#: src/chpasswd.c:263 src/newusers.c:535 +#: src/chpasswd.c:313 src/newusers.c:585 #, c-format msgid "%s: error detected, changes ignored\n" msgstr "%s: wykryto b³±d, zignorowano modyfikacje\n" -#: src/chpasswd.c:274 +#: src/chpasswd.c:324 #, c-format msgid "%s: error updating shadow file\n" msgstr "%s: b³±d podczas aktualizacji pliku z ukrytymi has³ami\n" -#: src/chpasswd.c:282 +#: src/chpasswd.c:332 #, c-format msgid "%s: error updating password file\n" msgstr "%s: b³±d podczas aktualizacji pliku z has³ami\n" @@ -873,33 +887,33 @@ msgstr "%s: nie mog msgid "%s: can't update DBM shadow files\n" msgstr "%s: nie mogê zaktualizowaæ pliku DBM z ukrytymi has³ami\n" -#: src/groupadd.c:105 +#: src/groupadd.c:111 msgid "usage: groupadd [-g gid [-o]] group\n" msgstr "u¿ycie: groupadd [-g gid [-o]] grupa\n" -#: src/groupadd.c:173 src/groupadd.c:196 src/groupmod.c:183 src/groupmod.c:230 -#: src/useradd.c:931 src/usermod.c:539 src/usermod.c:675 +#: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236 +#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681 #, c-format msgid "%s: error adding new group entry\n" msgstr "%s: b³±d podczas dodawania nowej grupy\n" -#: src/groupadd.c:183 src/groupadd.c:206 src/groupmod.c:199 src/useradd.c:942 -#: src/usermod.c:551 src/usermod.c:687 +#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948 +#: src/usermod.c:557 src/usermod.c:693 #, c-format msgid "%s: cannot add new dbm group entry\n" msgstr "%s: nie mogê dodaæ nowego wpisu do bazy dbm grup\n" -#: src/groupadd.c:258 src/useradd.c:996 +#: src/groupadd.c:264 src/useradd.c:1002 #, c-format msgid "%s: name %s is not unique\n" msgstr "%s: nazwa %s nie jest niepowtarzalny\n" -#: src/groupadd.c:273 +#: src/groupadd.c:279 #, c-format msgid "%s: gid %ld is not unique\n" msgstr "%s: gid %ld nie jest niepowtarzalny\n" -#: src/groupadd.c:297 +#: src/groupadd.c:303 #, c-format msgid "%s: can't get unique gid\n" msgstr "%s: nie mogê uzyskaæ niepowtarzalnego gid\n" @@ -907,78 +921,78 @@ msgstr "%s: nie mog #. #. * All invalid group names land here. #. -#: src/groupadd.c:321 src/groupmod.c:341 +#: src/groupadd.c:327 src/groupmod.c:347 #, c-format msgid "%s: %s is a not a valid group name\n" msgstr "%s: %s: nie jest prawid³ow± nazw± grupy\n" -#: src/groupadd.c:350 src/groupmod.c:367 +#: src/groupadd.c:356 src/groupmod.c:373 #, c-format msgid "%s: invalid group %s\n" msgstr "%s: nieprawid³owa grupa %s\n" -#: src/groupadd.c:367 src/useradd.c:1272 +#: src/groupadd.c:373 src/useradd.c:1278 #, c-format msgid "%s: -O requires NAME=VALUE\n" msgstr "%s: -O wymaga ZMIENNA=WARTO¦Æ\n" -#: src/groupadd.c:412 src/groupdel.c:167 src/groupmod.c:403 src/useradd.c:1381 -#: src/userdel.c:303 src/usermod.c:563 +#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387 +#: src/userdel.c:309 src/usermod.c:569 #, c-format msgid "%s: cannot rewrite group file\n" msgstr "%s: nie mogê przepisaæ pliku z grupami\n" -#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1389 -#: src/userdel.c:309 src/usermod.c:700 +#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395 +#: src/userdel.c:315 src/usermod.c:706 #, c-format msgid "%s: cannot rewrite shadow group file\n" msgstr "%s: nie mogê przepisaæ pliku z ukrytymi grupami\n" -#: src/groupadd.c:437 src/groupdel.c:192 src/groupmod.c:428 src/userdel.c:389 +#: src/groupadd.c:443 src/groupdel.c:198 src/groupmod.c:434 src/userdel.c:395 #, c-format msgid "%s: unable to lock group file\n" msgstr "%s: nie mogê zablokowaæ pliku z grupami\n" -#: src/groupadd.c:441 src/groupdel.c:196 src/groupmod.c:432 +#: src/groupadd.c:447 src/groupdel.c:202 src/groupmod.c:438 #, c-format msgid "%s: unable to open group file\n" msgstr "%s: nie mogê otworzyæ pliku z grupami\n" -#: src/groupadd.c:446 src/groupdel.c:201 src/groupmod.c:437 src/userdel.c:398 +#: src/groupadd.c:452 src/groupdel.c:207 src/groupmod.c:443 src/userdel.c:404 #, c-format msgid "%s: unable to lock shadow group file\n" msgstr "%s: nie mogê zablokowaæ pliku z ukrytymi grupami\n" -#: src/groupadd.c:451 src/groupdel.c:206 src/groupmod.c:442 +#: src/groupadd.c:457 src/groupdel.c:212 src/groupmod.c:448 #, c-format msgid "%s: unable to open shadow group file\n" msgstr "%s: nie mogê otworzyæ pliku z ukrytymi grupami\n" -#: src/groupadd.c:518 +#: src/groupadd.c:568 #, c-format msgid "%s: group %s exists\n" msgstr "%s: grupa %s istnieje\n" -#: src/groupdel.c:86 +#: src/groupdel.c:92 msgid "usage: groupdel group\n" msgstr "u¿ycie: groupdel grupa\n" -#: src/groupdel.c:104 src/groupmod.c:187 src/groupmod.c:234 +#: src/groupdel.c:110 src/groupmod.c:193 src/groupmod.c:240 #, c-format msgid "%s: error removing group entry\n" msgstr "%s: b³±d podczas usuwania grupy\n" -#: src/groupdel.c:116 src/groupmod.c:206 +#: src/groupdel.c:122 src/groupmod.c:212 #, c-format msgid "%s: error removing group dbm entry\n" msgstr "%s: b³±d podczas usuwania wpisu dbm o grupie\n" -#: src/groupdel.c:131 +#: src/groupdel.c:137 #, c-format msgid "%s: error removing shadow group entry\n" msgstr "%s: b³±d podczas usuwania wpisu o ukrytej grupie\n" -#: src/groupdel.c:144 src/groupmod.c:252 +#: src/groupdel.c:150 src/groupmod.c:258 #, c-format msgid "%s: error removing shadow group dbm entry\n" msgstr "%s: b³±d podczas usuwania wpisu dbm z pliku ukrytych grup\n" @@ -986,46 +1000,46 @@ msgstr "%s: b #. #. * Can't remove the group. #. -#: src/groupdel.c:248 +#: src/groupdel.c:254 #, c-format msgid "%s: cannot remove user's primary group.\n" msgstr "%s: nie mogê usun±æ podstawowej grupy u¿ytkowników.\n" -#: src/groupdel.c:305 src/groupmod.c:501 +#: src/groupdel.c:355 src/groupmod.c:551 #, c-format msgid "%s: group %s does not exist\n" msgstr "%s: grupa %s nie isnieje\n" -#: src/groupdel.c:319 src/groupmod.c:517 +#: src/groupdel.c:369 src/groupmod.c:567 #, c-format msgid "%s: group %s is a NIS group\n" msgstr "%s: grupa %s jest grup± NIS\n" -#: src/groupdel.c:325 src/groupmod.c:523 src/userdel.c:761 src/usermod.c:1016 +#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022 #, c-format msgid "%s: %s is the NIS master\n" msgstr "%s: %s jest g³ównym serwerem NIS\n" -#: src/groupmod.c:105 +#: src/groupmod.c:111 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n" msgstr "u¿ycie: groupmod [-g gid [-o]] [-n nazwa] grupa\n" -#: src/groupmod.c:165 +#: src/groupmod.c:171 #, fuzzy, c-format msgid "%s: %s not found in /etc/group\n" msgstr "%s: %s nie znaleziony w /etc/passwd\n" -#: src/groupmod.c:246 +#: src/groupmod.c:252 #, c-format msgid "%s: cannot add new dbm shadow group entry\n" msgstr "%s: nie mogê dodaæ nowego wpisu dbm do pliku z ukrytymi grupami\n" -#: src/groupmod.c:299 +#: src/groupmod.c:305 #, c-format msgid "%s: %ld is not a unique gid\n" msgstr "%s: %ld nie jest niepowtarzalnym gid\n" -#: src/groupmod.c:330 +#: src/groupmod.c:336 #, c-format msgid "%s: %s is not a unique name\n" msgstr "%s: %s nie jest niepowtarzaln± nazw±\n" @@ -1469,67 +1483,67 @@ msgstr "Wybacz.\n" msgid "too many groups\n" msgstr "zbyt wiele grup\n" -#: src/newusers.c:76 +#: src/newusers.c:82 #, c-format msgid "Usage: %s [ input ]\n" msgstr "U¿ycie: %s [ wej¶cie ]\n" -#: src/newusers.c:364 +#: src/newusers.c:414 #, c-format msgid "%s: can't lock /etc/passwd.\n" msgstr "%s: nie mogê zablokowaæ /etc/passwd.\n" -#: src/newusers.c:375 +#: src/newusers.c:425 #, c-format msgid "%s: can't lock files, try again later\n" msgstr "%s: nie mogê zablokowaæ plików, spróbuj pó¼niej\n" -#: src/newusers.c:390 +#: src/newusers.c:440 #, c-format msgid "%s: can't open files\n" msgstr "%s: nie mogê otworzyæ plików\n" -#: src/newusers.c:435 +#: src/newusers.c:485 #, c-format msgid "%s: line %d: invalid line\n" msgstr "%s: linia %d: nieprawid³owa linia\n" -#: src/newusers.c:453 +#: src/newusers.c:503 #, c-format msgid "%s: line %d: can't create GID\n" msgstr "%s: linia %d: nie mogê utworzyæ GID\n" -#: src/newusers.c:469 +#: src/newusers.c:519 #, c-format msgid "%s: line %d: can't create UID\n" msgstr "%s: linia %d: nie mogê utworzyæ UID\n" -#: src/newusers.c:481 +#: src/newusers.c:531 #, c-format msgid "%s: line %d: cannot find user %s\n" msgstr "%s: linia %d: nie mogê znale¶æ u¿ytkownika %s\n" -#: src/newusers.c:489 +#: src/newusers.c:539 #, c-format msgid "%s: line %d: can't update password\n" msgstr "%s: linia %d: nie mogê zaktualizowaæ pliku z has³ami\n" -#: src/newusers.c:506 +#: src/newusers.c:556 #, c-format msgid "%s: line %d: mkdir failed\n" msgstr "%s: linia %d: mkdir nie powiod³o siê\n" -#: src/newusers.c:510 +#: src/newusers.c:560 #, c-format msgid "%s: line %d: chown failed\n" msgstr "%s: linia %d: chown nie powiod³o siê\n" -#: src/newusers.c:519 +#: src/newusers.c:569 #, c-format msgid "%s: line %d: can't update entry\n" msgstr "%s: linia %d: nie mogê zaktualizowaæ wpisu\n" -#: src/newusers.c:550 +#: src/newusers.c:600 #, c-format msgid "%s: error updating files\n" msgstr "%s: b³±d podczas aktualizowania plików\n" @@ -1880,497 +1894,503 @@ msgstr "" msgid "Entering System Maintenance Mode\n" msgstr "Wchodzê w tryb utrzymania systemu\n" -#: src/useradd.c:243 +#: src/useradd.c:249 #, c-format msgid "%s: rebuild the group database\n" msgstr "%s: przebuduj bazê grup\n" -#: src/useradd.c:250 +#: src/useradd.c:256 #, c-format msgid "%s: rebuild the shadow group database\n" msgstr "%s: przebuduj bazê przes³oniêtych hase³\n" -#: src/useradd.c:287 src/usermod.c:967 +#: src/useradd.c:293 src/usermod.c:973 #, c-format msgid "%s: invalid numeric argument `%s'\n" msgstr "%s: nieprawid³owy argument numeryczny `%s'\n" -#: src/useradd.c:343 +#: src/useradd.c:349 #, c-format msgid "%s: unknown gid %s\n" msgstr "%s: nieznany gid %s\n" -#: src/useradd.c:350 src/useradd.c:642 src/useradd.c:1228 src/usermod.c:254 -#: src/usermod.c:1098 +#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260 +#: src/usermod.c:1104 #, c-format msgid "%s: unknown group %s\n" msgstr "%s: nieznana grupa %s\n" -#: src/useradd.c:418 +#: src/useradd.c:424 #, c-format msgid "group=%s,%ld basedir=%s skel=%s\n" msgstr "grupa=%s,%ld kat_baz=%s skel=%s\n" -#: src/useradd.c:421 +#: src/useradd.c:427 #, c-format msgid "shell=%s " msgstr "pow³oka=%s " -#: src/useradd.c:423 +#: src/useradd.c:429 #, c-format msgid "inactive=%ld expire=%s" msgstr "nieaktywne=%ld wyga¶niêcie=%s" -#: src/useradd.c:427 +#: src/useradd.c:433 #, c-format msgid "GROUP=%ld\n" msgstr "GRUPA=%ld\n" -#: src/useradd.c:428 +#: src/useradd.c:434 #, c-format msgid "HOME=%s\n" msgstr "KAT_DOM=%s\n" -#: src/useradd.c:430 +#: src/useradd.c:436 #, c-format msgid "INACTIVE=%ld\n" msgstr "NIEAKTYWNE=%ld\n" -#: src/useradd.c:431 +#: src/useradd.c:437 #, c-format msgid "EXPIRE=%s\n" msgstr "WYGA¦NIÊCIE=%s\n" -#: src/useradd.c:433 +#: src/useradd.c:439 #, c-format msgid "SHELL=%s\n" msgstr "POW£OKA=%s\n" -#: src/useradd.c:434 +#: src/useradd.c:440 #, c-format msgid "SKEL=%s\n" msgstr "SKEL=%s\n" -#: src/useradd.c:470 +#: src/useradd.c:476 #, c-format msgid "%s: cannot create new defaults file\n" msgstr "%s: nie mogê utworzyæ nowego pliku ze standardowymi ustawieniami\n" -#: src/useradd.c:564 src/useradd.c:575 +#: src/useradd.c:570 src/useradd.c:581 #, c-format msgid "%s: rename: %s" msgstr "%s: zmiana nazwy: %s" -#: src/useradd.c:662 src/usermod.c:274 +#: src/useradd.c:668 src/usermod.c:280 #, c-format msgid "%s: group `%s' is a NIS group.\n" msgstr "%s: grupa `%s' jest grup± NIS.\n" -#: src/useradd.c:670 src/usermod.c:282 +#: src/useradd.c:676 src/usermod.c:288 #, c-format msgid "%s: too many groups specified (max %d).\n" msgstr "%s: podano zbyt wiele grup (maks %d).\n" -#: src/useradd.c:702 src/usermod.c:314 +#: src/useradd.c:708 src/usermod.c:320 #, c-format msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n" msgstr "u¿ycie: %s\t[-u uid [-o]] [-g grupa] [-G grupa,...] \n" -#: src/useradd.c:705 +#: src/useradd.c:711 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n" msgstr "\t\t[-d kat_dom] [-s pow³oka] [-c komentarz] [-m [-k wzór]]\n" -#: src/useradd.c:708 src/usermod.c:320 +#: src/useradd.c:714 src/usermod.c:326 msgid "[-f inactive] [-e expire ] " msgstr "[-f nieaktywne] [-e utrata_wa¿no¶ci ]" -#: src/useradd.c:711 +#: src/useradd.c:717 msgid "[-A program] " msgstr "[-A program] " -#: src/useradd.c:713 +#: src/useradd.c:719 msgid "[-p passwd] name\n" msgstr "[-p has³o] nazwa\n" -#: src/useradd.c:715 +#: src/useradd.c:721 #, c-format msgid " %s\t-D [-g group] [-b base] [-s shell]\n" msgstr " %s\t-D [-g grupa] [-b baza] [-s pow³oka]\n" -#: src/useradd.c:718 +#: src/useradd.c:724 msgid "\t\t[-f inactive] [-e expire ]\n" msgstr "\t\t[-f nieaktywne] [-e utrata_wa¿no¶ci ]\n" -#: src/useradd.c:815 src/usermod.c:472 +#: src/useradd.c:821 src/usermod.c:478 #, c-format msgid "%s: error locking group file\n" msgstr "%s: b³±d podczas blokowania pliku z grupami\n" -#: src/useradd.c:819 src/usermod.c:477 +#: src/useradd.c:825 src/usermod.c:483 #, c-format msgid "%s: error opening group file\n" msgstr "%s: b³±d podczas otwierania pliku z grupami\n" -#: src/useradd.c:824 src/usermod.c:584 +#: src/useradd.c:830 src/usermod.c:590 #, c-format msgid "%s: error locking shadow group file\n" msgstr "%s: b³±d podczas blokowania pliku z ukrytymi has³ami\n" -#: src/useradd.c:829 src/usermod.c:590 +#: src/useradd.c:835 src/usermod.c:596 #, c-format msgid "%s: error opening shadow group file\n" msgstr "%s: b³±d podczas otwierania pliku z ukrytymi grupami\n" -#: src/useradd.c:1001 +#: src/useradd.c:1007 #, c-format msgid "%s: uid %d is not unique\n" msgstr "%s: uid %d nie jest niepowtarzalny\n" -#: src/useradd.c:1031 +#: src/useradd.c:1037 #, c-format msgid "%s: can't get unique uid\n" msgstr "%s: nie mogê uzyskaæ niepowtarzalnego uid\n" -#: src/useradd.c:1139 src/useradd.c:1283 src/usermod.c:1046 src/usermod.c:1057 -#: src/usermod.c:1067 src/usermod.c:1113 src/usermod.c:1157 +#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063 +#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163 #, c-format msgid "%s: invalid field `%s'\n" msgstr "%s: nieprawid³owe pole `%s'\n" -#: src/useradd.c:1153 +#: src/useradd.c:1159 #, c-format msgid "%s: invalid base directory `%s'\n" msgstr "%s: nieprawid³owy katalog bazowy `%s'\n" -#: src/useradd.c:1163 +#: src/useradd.c:1169 #, c-format msgid "%s: invalid comment `%s'\n" msgstr "%s: nieprawid³owy komentarz `%s'\n" -#: src/useradd.c:1173 +#: src/useradd.c:1179 #, c-format msgid "%s: invalid home directory `%s'\n" msgstr "%s: nieprawid³owy katalog domowy `%s'\n" -#: src/useradd.c:1191 src/usermod.c:1080 +#: src/useradd.c:1197 src/usermod.c:1086 #, c-format msgid "%s: invalid date `%s'\n" msgstr "%s: nieprawid³owa data `%s'\n" -#: src/useradd.c:1203 +#: src/useradd.c:1209 #, c-format msgid "%s: shadow passwords required for -e\n" msgstr "%s: ukryte has³a wymagane dla -e\n" -#: src/useradd.c:1218 +#: src/useradd.c:1224 #, c-format msgid "%s: shadow passwords required for -f\n" msgstr "%s: ukryte has³a wymagane dla -f\n" -#: src/useradd.c:1292 +#: src/useradd.c:1298 #, c-format msgid "%s: invalid shell `%s'\n" msgstr "%s: nieprawid³owa pow³oka `%s'\n" -#: src/useradd.c:1333 +#: src/useradd.c:1339 #, c-format msgid "%s: invalid user name `%s'\n" msgstr "%s: nieprawid³owa nazwa u¿ytkownika `%s'\n" -#: src/useradd.c:1369 src/userdel.c:292 src/usermod.c:1225 +#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231 #, c-format msgid "%s: cannot rewrite password file\n" msgstr "%s: nie mogê przepisaæ pliku z has³ami\n" -#: src/useradd.c:1374 src/userdel.c:295 src/usermod.c:1230 +#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236 #, c-format msgid "%s: cannot rewrite shadow password file\n" msgstr "%s: nie mogê przepisaæ pliku z ukrytymi has³ami\n" -#: src/useradd.c:1414 src/userdel.c:359 src/usermod.c:1265 +#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271 #, c-format msgid "%s: unable to lock password file\n" msgstr "%s: nie mogê zablokowaæ pliku z has³ami\n" -#: src/useradd.c:1418 src/userdel.c:363 src/usermod.c:1269 +#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275 #, c-format msgid "%s: unable to open password file\n" msgstr "%s: nie mogê otworzyæ pliku z has³ami\n" -#: src/useradd.c:1424 src/userdel.c:368 src/usermod.c:1274 +#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280 #, c-format msgid "%s: cannot lock shadow password file\n" msgstr "%s: nie mogê zablokowaæ pliku z ukrytymi has³ami\n" -#: src/useradd.c:1430 src/userdel.c:373 src/usermod.c:1279 +#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285 #, c-format msgid "%s: cannot open shadow password file\n" msgstr "%s: nie mogê otworzyæ pliku z ukrytymi has³ami\n" -#: src/useradd.c:1529 src/usermod.c:1366 +#: src/useradd.c:1535 src/usermod.c:1372 #, c-format msgid "%s: error adding authentication method\n" msgstr "%s: b³±d podczas dodawania metody uwierzytelniania\n" -#: src/useradd.c:1552 +#: src/useradd.c:1558 #, c-format msgid "%s: error adding new password entry\n" msgstr "%s: b³±d podczas dodawania nowego wpisu do pliku z has³ami\n" -#: src/useradd.c:1567 +#: src/useradd.c:1573 #, c-format msgid "%s: error updating password dbm entry\n" msgstr "%s: b³±d podczas aktualizacji wpisu dbm do pliku z has³ami\n" -#: src/useradd.c:1583 src/usermod.c:1425 +#: src/useradd.c:1589 src/usermod.c:1431 #, c-format msgid "%s: error adding new shadow password entry\n" msgstr "%s: b³±d podczas dodawania nowego wpisu do pliku z ukrytymi has³ami\n" -#: src/useradd.c:1599 src/usermod.c:1440 +#: src/useradd.c:1605 src/usermod.c:1446 #, c-format msgid "%s: error updating shadow passwd dbm entry\n" msgstr "%s: b³±d podczas aktualizacji wpisu dbm do pliku z ukrytymi has³ami\n" -#: src/useradd.c:1631 +#: src/useradd.c:1637 #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: nie mogê utworzyæ katalogu %s\n" -#: src/useradd.c:1708 src/usermod.c:1203 +#: src/useradd.c:1758 src/usermod.c:1209 #, c-format msgid "%s: user %s exists\n" msgstr "%s: u¿ytkownik %s istnieje\n" -#: src/useradd.c:1738 +#: src/useradd.c:1770 +#, c-format +msgid "" +"%s: group %s exists - if you want to add this user to that group, use -g.\n" +msgstr "" + +#: src/useradd.c:1801 #, c-format msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n" msgstr "" -#: src/userdel.c:127 +#: src/userdel.c:133 #, c-format msgid "usage: %s [-r] name\n" msgstr "u¿ycie: %s [-r] nazwa\n" -#: src/userdel.c:178 src/userdel.c:260 +#: src/userdel.c:184 src/userdel.c:266 #, c-format msgid "%s: error updating group entry\n" msgstr "%s: b³±d podczas aktualizacji wpisu grupy\n" -#: src/userdel.c:188 src/userdel.c:269 +#: src/userdel.c:194 src/userdel.c:275 #, c-format msgid "%s: cannot update dbm group entry\n" msgstr "%s: nie mogê zaktualizowaæ wpisu dbm do pliku z grupami\n" -#: src/userdel.c:215 +#: src/userdel.c:221 #, fuzzy, c-format msgid "%s: cannot remove dbm group entry\n" msgstr "%s: nie mogê zaktualizowaæ wpisu dbm do pliku z grupami\n" -#: src/userdel.c:300 +#: src/userdel.c:306 #, c-format msgid "%s: cannot rewrite TCFS key file\n" msgstr "%s: nie mogê przepisaæ pliku klucza TCFS\n" -#: src/userdel.c:380 +#: src/userdel.c:386 #, c-format msgid "%s: cannot lock TCFS key file\n" msgstr "%s: nie mogê zablokowaæ pliku klucza TCFS\n" -#: src/userdel.c:384 +#: src/userdel.c:390 #, c-format msgid "%s: cannot open TCFS key file\n" msgstr "%s: nie mogê otworzyæ pliku klucza TCFS\n" -#: src/userdel.c:393 +#: src/userdel.c:399 #, c-format msgid "%s: cannot open group file\n" msgstr "%s: nie mogê otworzyæ pliku z grupami\n" -#: src/userdel.c:403 +#: src/userdel.c:409 #, c-format msgid "%s: cannot open shadow group file\n" msgstr "%s: nie mogê otworzyæ pliku z przes³oniêtymi grupami\n" -#: src/userdel.c:434 src/userdel.c:449 +#: src/userdel.c:440 src/userdel.c:455 #, c-format msgid "%s: error deleting authentication\n" msgstr "%s: b³±d podczas usuwania informacji uwierzytelniaj±cej\n" -#: src/userdel.c:458 +#: src/userdel.c:464 #, c-format msgid "%s: error deleting password entry\n" msgstr "%s: b³±d podczas usuwania wpisu do pliku z has³ami\n" -#: src/userdel.c:461 +#: src/userdel.c:467 #, c-format msgid "%s: error deleting shadow password entry\n" msgstr "%s: b³±d podczas usuwania wpisu do pliku z ukrytymi has³ami\n" -#: src/userdel.c:470 +#: src/userdel.c:476 #, c-format msgid "%s: error deleting TCFS entry\n" msgstr "%s: b³±d podczas usuwania wpisu TCFS\n" -#: src/userdel.c:483 +#: src/userdel.c:489 #, c-format msgid "%s: error deleting password dbm entry\n" msgstr "%s: b³±d podczas usuwania wpisu dbm do pliku z has³ami\n" -#: src/userdel.c:502 +#: src/userdel.c:508 #, c-format msgid "%s: error deleting shadow passwd dbm entry\n" msgstr "%s: b³±d podczas usuwania wpisy dbm z pliku z ukrytymi has³ami\n" -#: src/userdel.c:543 +#: src/userdel.c:549 #, c-format msgid "%s: user %s is currently logged in\n" msgstr "%s: u¿ytkownik %s jest aktualnie zalogowany\n" -#: src/userdel.c:660 +#: src/userdel.c:666 #, c-format msgid "%s: warning: %s not owned by %s, not removing\n" msgstr "%s: ostrze¿enie: w³a¶cicielem %s nie jest %s, nie usuwam\n" -#: src/userdel.c:666 +#: src/userdel.c:672 #, c-format msgid "%s: warning: can't remove " msgstr "%s: ostrze¿enie: nie mogê usun±æ " -#: src/userdel.c:741 src/usermod.c:994 +#: src/userdel.c:791 src/usermod.c:1000 #, c-format msgid "%s: user %s does not exist\n" msgstr "%s: u¿ytkownik %s nie istnieje\n" -#: src/userdel.c:755 src/usermod.c:1010 +#: src/userdel.c:805 src/usermod.c:1016 #, c-format msgid "%s: user %s is a NIS user\n" msgstr "%s: u¿ytkownik %s jest u¿ytkownikiem NIS\n" -#: src/userdel.c:792 +#: src/userdel.c:842 #, c-format msgid "%s: %s not owned by %s, not removing\n" msgstr "%s: w³a¶cicielem %s nie jest %s, nie usuwam\n" -#: src/userdel.c:815 +#: src/userdel.c:865 #, c-format msgid "%s: not removing directory %s (would remove home of user %s)\n" msgstr "%s: nie usuwam katalogu %s (would remove home of user %s)\n" -#: src/userdel.c:828 +#: src/userdel.c:878 #, c-format msgid "%s: error removing directory %s\n" msgstr "%s: b³±d podczas usuwania katalogu %s\n" -#: src/usermod.c:317 +#: src/usermod.c:323 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n" msgstr "\t\t[-d kat_dom [-m]] [-s pow³oka] [-c komentarz] [-l nowa_nazwa]\n" -#: src/usermod.c:323 +#: src/usermod.c:329 msgid "[-A {DEFAULT|program},... ] " msgstr "[-A {DEFAULT|program},... ] " -#: src/usermod.c:325 +#: src/usermod.c:331 #, fuzzy msgid "[-p passwd] [-L|-U] name\n" msgstr "[-p has³o] nazwa\n" -#: src/usermod.c:504 +#: src/usermod.c:510 #, c-format msgid "%s: out of memory in update_group\n" msgstr "%s: zabrak³o pamiêci w pdate_group\n" -#: src/usermod.c:627 +#: src/usermod.c:633 #, c-format msgid "%s: out of memory in update_gshadow\n" msgstr "%s: zabrak³o pamiêci w update_gshadow\n" -#: src/usermod.c:1180 +#: src/usermod.c:1186 #, c-format msgid "%s: no flags given\n" msgstr "%s: nie podano flag\n" -#: src/usermod.c:1187 +#: src/usermod.c:1193 #, c-format msgid "%s: shadow passwords required for -e and -f\n" msgstr "%s: ukryte has³a wymagane dla -e i -f\n" -#: src/usermod.c:1208 +#: src/usermod.c:1214 #, c-format msgid "%s: uid %ld is not unique\n" msgstr "%s: uid %ld nie jest niepowtarzalny\n" -#: src/usermod.c:1356 +#: src/usermod.c:1362 #, c-format msgid "%s: error deleting authentication method\n" msgstr "%s: b³±d podczas usuwania metody uwierzytelniania\n" -#: src/usermod.c:1376 +#: src/usermod.c:1382 #, c-format msgid "%s: error changing authentication method\n" msgstr "%s: b³±d podczas zmiany metody uwierzytelniania\n" -#: src/usermod.c:1393 +#: src/usermod.c:1399 #, c-format msgid "%s: error changing password entry\n" msgstr "%s: b³±d podczas zmiany wpisu w pliku z has³ami\n" -#: src/usermod.c:1399 +#: src/usermod.c:1405 #, c-format msgid "%s: error removing password entry\n" msgstr "%s: b³±d podczas usuwania wpisu z pliku z has³ami\n" -#: src/usermod.c:1407 +#: src/usermod.c:1413 #, c-format msgid "%s: error adding password dbm entry\n" msgstr "%s: b³±d podczas dodawania wpisu dbm do pliku z has³ami\n" -#: src/usermod.c:1414 +#: src/usermod.c:1420 #, c-format msgid "%s: error removing passwd dbm entry\n" msgstr "%s: b³±d podczas usuwania wpisu dbm z pliku z has³ami\n" -#: src/usermod.c:1431 +#: src/usermod.c:1437 #, c-format msgid "%s: error removing shadow password entry\n" msgstr "%s: b³±d podczas usuwania wpisu z pliku z ukrytymi has³ami\n" -#: src/usermod.c:1446 +#: src/usermod.c:1452 #, c-format msgid "%s: error removing shadow passwd dbm entry\n" msgstr "%s: b³±d podczas usuwania wpisu dbm z pliku z ukrytymi has³ami\n" -#: src/usermod.c:1477 +#: src/usermod.c:1483 #, c-format msgid "%s: directory %s exists\n" msgstr "%s: katalog %s isnieje\n" -#: src/usermod.c:1484 +#: src/usermod.c:1490 #, c-format msgid "%s: can't create %s\n" msgstr "%s: nie mogê utworzyæ %s\n" -#: src/usermod.c:1490 +#: src/usermod.c:1496 #, c-format msgid "%s: can't chown %s\n" msgstr "%s: nie mogê zmieniæ w³a¶ciciela %s\n" -#: src/usermod.c:1506 +#: src/usermod.c:1512 #, c-format msgid "%s: cannot rename directory %s to %s\n" msgstr "%s: nie mogê zmieniæ nazwy katalogu z %s na %s\n" #. better leave it alone -#: src/usermod.c:1603 +#: src/usermod.c:1609 #, c-format msgid "%s: warning: %s not owned by %s\n" msgstr "%s: ostrze¿enie: w³a¶cicielem %s nie jest %s\n" -#: src/usermod.c:1609 +#: src/usermod.c:1615 msgid "failed to change mailbox owner" msgstr "nie powiod³a siê zmiana w³a¶ciciela skrzynki pocztowej" -#: src/usermod.c:1616 +#: src/usermod.c:1622 msgid "failed to rename mailbox" msgstr "zmiana nazwy skrzynki pocztowej nie powiod³a siê" diff --git a/po/shadow.pot b/po/shadow.pot index 7faa7116..8ecee376 100644 --- a/po/shadow.pot +++ b/po/shadow.pot @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2000-09-02 20:40+0200\n" +"POT-Creation-Date: 2000-10-12 06:20+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -223,45 +223,45 @@ msgstr "" msgid "Unknown error %d" msgstr "" -#: src/chage.c:156 +#: src/chage.c:162 #, c-format msgid "" "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n" " [ -I inactive ] [ -E expire ] [ -d last_day ] user\n" msgstr "" -#: src/chage.c:158 +#: src/chage.c:164 #, c-format msgid "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n" msgstr "" -#: src/chage.c:193 +#: src/chage.c:199 msgid "" "Enter the new value, or press return for the default\n" "\n" msgstr "" -#: src/chage.c:196 +#: src/chage.c:202 msgid "Minimum Password Age" msgstr "" -#: src/chage.c:201 +#: src/chage.c:207 msgid "Maximum Password Age" msgstr "" -#: src/chage.c:207 +#: src/chage.c:213 msgid "Last Password Change (YYYY-MM-DD)" msgstr "" -#: src/chage.c:216 +#: src/chage.c:222 msgid "Password Expiration Warning" msgstr "" -#: src/chage.c:221 +#: src/chage.c:227 msgid "Password Inactive" msgstr "" -#: src/chage.c:227 +#: src/chage.c:233 msgid "Account Expiration Date (YYYY-MM-DD)" msgstr "" @@ -273,22 +273,22 @@ msgstr "" #. * days after the password expires that the account becomes #. * unusable. #. -#: src/chage.c:281 +#: src/chage.c:287 #, c-format msgid "Minimum:\t%ld\n" msgstr "" -#: src/chage.c:282 +#: src/chage.c:288 #, c-format msgid "Maximum:\t%ld\n" msgstr "" -#: src/chage.c:284 +#: src/chage.c:290 #, c-format msgid "Warning:\t%ld\n" msgstr "" -#: src/chage.c:285 +#: src/chage.c:291 #, c-format msgid "Inactive:\t%ld\n" msgstr "" @@ -298,11 +298,11 @@ msgstr "" #. * password was last modified. The date is the number of #. * days since 1/1/1970. #. -#: src/chage.c:294 +#: src/chage.c:300 msgid "Last Change:\t\t" msgstr "" -#: src/chage.c:296 src/chage.c:310 src/chage.c:327 src/chage.c:340 +#: src/chage.c:302 src/chage.c:316 src/chage.c:333 src/chage.c:346 msgid "Never\n" msgstr "" @@ -311,7 +311,7 @@ msgstr "" #. * change date plus the number of days the password is valid #. * for. #. -#: src/chage.c:308 +#: src/chage.c:314 msgid "Password Expires:\t" msgstr "" @@ -321,7 +321,7 @@ msgstr "" #. * and the number of inactive days is added. The resulting date #. * is when the active will be disabled. #. -#: src/chage.c:324 +#: src/chage.c:330 msgid "Password Inactive:\t" msgstr "" @@ -329,81 +329,95 @@ msgstr "" #. * The account will expire on the given date regardless of the #. * password expiring or not. #. -#: src/chage.c:338 +#: src/chage.c:344 msgid "Account Expires:\t" msgstr "" -#: src/chage.c:486 +#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322 +#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738 +#: src/usermod.c:1684 +#, c-format +msgid "%s: PAM authentication failed\n" +msgstr "" + +#: src/chage.c:536 #, c-format msgid "%s: do not include \"l\" with other flags\n" msgstr "" -#: src/chage.c:498 src/chage.c:610 src/login.c:529 +#: src/chage.c:548 src/chage.c:660 src/login.c:529 #, c-format msgid "%s: permission denied\n" msgstr "" -#: src/chage.c:510 src/chpasswd.c:120 +#: src/chage.c:560 src/chpasswd.c:170 #, c-format msgid "%s: can't lock password file\n" msgstr "" -#: src/chage.c:516 src/chpasswd.c:124 +#: src/chage.c:566 src/chpasswd.c:174 #, c-format msgid "%s: can't open password file\n" msgstr "" -#: src/chage.c:523 +#: src/chage.c:573 #, c-format msgid "%s: unknown user: %s\n" msgstr "" -#: src/chage.c:542 +#: src/chage.c:592 #, c-format msgid "%s: can't lock shadow password file\n" msgstr "" -#: src/chage.c:549 +#: src/chage.c:599 #, c-format msgid "%s: can't open shadow password file\n" msgstr "" -#: src/chage.c:631 +#: src/chage.c:681 #, c-format msgid "Changing the aging information for %s\n" msgstr "" -#: src/chage.c:633 +#: src/chage.c:683 #, c-format msgid "%s: error changing fields\n" msgstr "" -#: src/chage.c:660 src/chage.c:723 src/pwunconv.c:183 +#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183 #, c-format msgid "%s: can't update password file\n" msgstr "" -#: src/chage.c:690 src/pwunconv.c:178 +#: src/chage.c:740 src/pwunconv.c:178 #, c-format msgid "%s: can't update shadow password file\n" msgstr "" -#: src/chage.c:739 src/chage.c:754 src/chfn.c:570 src/chsh.c:409 +#: src/chage.c:789 src/chage.c:804 src/chfn.c:570 src/chsh.c:409 #: src/passwd.c:825 src/passwd.c:926 msgid "Error updating the DBM password entry.\n" msgstr "" -#: src/chage.c:771 +#: src/chage.c:821 #, c-format msgid "%s: can't rewrite shadow password file\n" msgstr "" -#: src/chage.c:785 +#: src/chage.c:835 #, c-format msgid "%s: can't rewrite password file\n" msgstr "" -#: src/chage.c:836 +#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409 +#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903 +#: src/usermod.c:1762 +#, c-format +msgid "%s: PAM chauthtok failed\n" +msgstr "" + +#: src/chage.c:905 #, c-format msgid "%s: no aging information present\n" msgstr "" @@ -538,7 +552,7 @@ msgstr "" msgid "Cannot open the password file.\n" msgstr "" -#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1313 +#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319 #, c-format msgid "%s: %s not found in /etc/passwd\n" msgstr "" @@ -556,53 +570,53 @@ msgstr "" msgid "Cannot unlock the password file.\n" msgstr "" -#: src/chpasswd.c:76 +#: src/chpasswd.c:82 #, c-format msgid "usage: %s [-e]\n" msgstr "" -#: src/chpasswd.c:132 src/pwconv.c:104 +#: src/chpasswd.c:182 src/pwconv.c:104 #, c-format msgid "%s: can't lock shadow file\n" msgstr "" -#: src/chpasswd.c:137 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 +#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 #: src/pwunconv.c:123 #, c-format msgid "%s: can't open shadow file\n" msgstr "" -#: src/chpasswd.c:159 src/newusers.c:415 +#: src/chpasswd.c:209 src/newusers.c:465 #, c-format msgid "%s: line %d: line too long\n" msgstr "" -#: src/chpasswd.c:179 +#: src/chpasswd.c:229 #, c-format msgid "%s: line %d: missing new password\n" msgstr "" -#: src/chpasswd.c:195 +#: src/chpasswd.c:245 #, c-format msgid "%s: line %d: unknown user %s\n" msgstr "" -#: src/chpasswd.c:247 +#: src/chpasswd.c:297 #, c-format msgid "%s: line %d: cannot update password entry\n" msgstr "" -#: src/chpasswd.c:263 src/newusers.c:535 +#: src/chpasswd.c:313 src/newusers.c:585 #, c-format msgid "%s: error detected, changes ignored\n" msgstr "" -#: src/chpasswd.c:274 +#: src/chpasswd.c:324 #, c-format msgid "%s: error updating shadow file\n" msgstr "" -#: src/chpasswd.c:282 +#: src/chpasswd.c:332 #, c-format msgid "%s: error updating password file\n" msgstr "" @@ -859,33 +873,33 @@ msgstr "" msgid "%s: can't update DBM shadow files\n" msgstr "" -#: src/groupadd.c:105 +#: src/groupadd.c:111 msgid "usage: groupadd [-g gid [-o]] group\n" msgstr "" -#: src/groupadd.c:173 src/groupadd.c:196 src/groupmod.c:183 src/groupmod.c:230 -#: src/useradd.c:931 src/usermod.c:539 src/usermod.c:675 +#: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236 +#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681 #, c-format msgid "%s: error adding new group entry\n" msgstr "" -#: src/groupadd.c:183 src/groupadd.c:206 src/groupmod.c:199 src/useradd.c:942 -#: src/usermod.c:551 src/usermod.c:687 +#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948 +#: src/usermod.c:557 src/usermod.c:693 #, c-format msgid "%s: cannot add new dbm group entry\n" msgstr "" -#: src/groupadd.c:258 src/useradd.c:996 +#: src/groupadd.c:264 src/useradd.c:1002 #, c-format msgid "%s: name %s is not unique\n" msgstr "" -#: src/groupadd.c:273 +#: src/groupadd.c:279 #, c-format msgid "%s: gid %ld is not unique\n" msgstr "" -#: src/groupadd.c:297 +#: src/groupadd.c:303 #, c-format msgid "%s: can't get unique gid\n" msgstr "" @@ -893,78 +907,78 @@ msgstr "" #. #. * All invalid group names land here. #. -#: src/groupadd.c:321 src/groupmod.c:341 +#: src/groupadd.c:327 src/groupmod.c:347 #, c-format msgid "%s: %s is a not a valid group name\n" msgstr "" -#: src/groupadd.c:350 src/groupmod.c:367 +#: src/groupadd.c:356 src/groupmod.c:373 #, c-format msgid "%s: invalid group %s\n" msgstr "" -#: src/groupadd.c:367 src/useradd.c:1272 +#: src/groupadd.c:373 src/useradd.c:1278 #, c-format msgid "%s: -O requires NAME=VALUE\n" msgstr "" -#: src/groupadd.c:412 src/groupdel.c:167 src/groupmod.c:403 src/useradd.c:1381 -#: src/userdel.c:303 src/usermod.c:563 +#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387 +#: src/userdel.c:309 src/usermod.c:569 #, c-format msgid "%s: cannot rewrite group file\n" msgstr "" -#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1389 -#: src/userdel.c:309 src/usermod.c:700 +#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395 +#: src/userdel.c:315 src/usermod.c:706 #, c-format msgid "%s: cannot rewrite shadow group file\n" msgstr "" -#: src/groupadd.c:437 src/groupdel.c:192 src/groupmod.c:428 src/userdel.c:389 +#: src/groupadd.c:443 src/groupdel.c:198 src/groupmod.c:434 src/userdel.c:395 #, c-format msgid "%s: unable to lock group file\n" msgstr "" -#: src/groupadd.c:441 src/groupdel.c:196 src/groupmod.c:432 +#: src/groupadd.c:447 src/groupdel.c:202 src/groupmod.c:438 #, c-format msgid "%s: unable to open group file\n" msgstr "" -#: src/groupadd.c:446 src/groupdel.c:201 src/groupmod.c:437 src/userdel.c:398 +#: src/groupadd.c:452 src/groupdel.c:207 src/groupmod.c:443 src/userdel.c:404 #, c-format msgid "%s: unable to lock shadow group file\n" msgstr "" -#: src/groupadd.c:451 src/groupdel.c:206 src/groupmod.c:442 +#: src/groupadd.c:457 src/groupdel.c:212 src/groupmod.c:448 #, c-format msgid "%s: unable to open shadow group file\n" msgstr "" -#: src/groupadd.c:518 +#: src/groupadd.c:568 #, c-format msgid "%s: group %s exists\n" msgstr "" -#: src/groupdel.c:86 +#: src/groupdel.c:92 msgid "usage: groupdel group\n" msgstr "" -#: src/groupdel.c:104 src/groupmod.c:187 src/groupmod.c:234 +#: src/groupdel.c:110 src/groupmod.c:193 src/groupmod.c:240 #, c-format msgid "%s: error removing group entry\n" msgstr "" -#: src/groupdel.c:116 src/groupmod.c:206 +#: src/groupdel.c:122 src/groupmod.c:212 #, c-format msgid "%s: error removing group dbm entry\n" msgstr "" -#: src/groupdel.c:131 +#: src/groupdel.c:137 #, c-format msgid "%s: error removing shadow group entry\n" msgstr "" -#: src/groupdel.c:144 src/groupmod.c:252 +#: src/groupdel.c:150 src/groupmod.c:258 #, c-format msgid "%s: error removing shadow group dbm entry\n" msgstr "" @@ -972,46 +986,46 @@ msgstr "" #. #. * Can't remove the group. #. -#: src/groupdel.c:248 +#: src/groupdel.c:254 #, c-format msgid "%s: cannot remove user's primary group.\n" msgstr "" -#: src/groupdel.c:305 src/groupmod.c:501 +#: src/groupdel.c:355 src/groupmod.c:551 #, c-format msgid "%s: group %s does not exist\n" msgstr "" -#: src/groupdel.c:319 src/groupmod.c:517 +#: src/groupdel.c:369 src/groupmod.c:567 #, c-format msgid "%s: group %s is a NIS group\n" msgstr "" -#: src/groupdel.c:325 src/groupmod.c:523 src/userdel.c:761 src/usermod.c:1016 +#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022 #, c-format msgid "%s: %s is the NIS master\n" msgstr "" -#: src/groupmod.c:105 +#: src/groupmod.c:111 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n" msgstr "" -#: src/groupmod.c:165 +#: src/groupmod.c:171 #, c-format msgid "%s: %s not found in /etc/group\n" msgstr "" -#: src/groupmod.c:246 +#: src/groupmod.c:252 #, c-format msgid "%s: cannot add new dbm shadow group entry\n" msgstr "" -#: src/groupmod.c:299 +#: src/groupmod.c:305 #, c-format msgid "%s: %ld is not a unique gid\n" msgstr "" -#: src/groupmod.c:330 +#: src/groupmod.c:336 #, c-format msgid "%s: %s is not a unique name\n" msgstr "" @@ -1445,67 +1459,67 @@ msgstr "" msgid "too many groups\n" msgstr "" -#: src/newusers.c:76 +#: src/newusers.c:82 #, c-format msgid "Usage: %s [ input ]\n" msgstr "" -#: src/newusers.c:364 +#: src/newusers.c:414 #, c-format msgid "%s: can't lock /etc/passwd.\n" msgstr "" -#: src/newusers.c:375 +#: src/newusers.c:425 #, c-format msgid "%s: can't lock files, try again later\n" msgstr "" -#: src/newusers.c:390 +#: src/newusers.c:440 #, c-format msgid "%s: can't open files\n" msgstr "" -#: src/newusers.c:435 +#: src/newusers.c:485 #, c-format msgid "%s: line %d: invalid line\n" msgstr "" -#: src/newusers.c:453 +#: src/newusers.c:503 #, c-format msgid "%s: line %d: can't create GID\n" msgstr "" -#: src/newusers.c:469 +#: src/newusers.c:519 #, c-format msgid "%s: line %d: can't create UID\n" msgstr "" -#: src/newusers.c:481 +#: src/newusers.c:531 #, c-format msgid "%s: line %d: cannot find user %s\n" msgstr "" -#: src/newusers.c:489 +#: src/newusers.c:539 #, c-format msgid "%s: line %d: can't update password\n" msgstr "" -#: src/newusers.c:506 +#: src/newusers.c:556 #, c-format msgid "%s: line %d: mkdir failed\n" msgstr "" -#: src/newusers.c:510 +#: src/newusers.c:560 #, c-format msgid "%s: line %d: chown failed\n" msgstr "" -#: src/newusers.c:519 +#: src/newusers.c:569 #, c-format msgid "%s: line %d: can't update entry\n" msgstr "" -#: src/newusers.c:550 +#: src/newusers.c:600 #, c-format msgid "%s: error updating files\n" msgstr "" @@ -1847,496 +1861,502 @@ msgstr "" msgid "Entering System Maintenance Mode\n" msgstr "" -#: src/useradd.c:243 +#: src/useradd.c:249 #, c-format msgid "%s: rebuild the group database\n" msgstr "" -#: src/useradd.c:250 +#: src/useradd.c:256 #, c-format msgid "%s: rebuild the shadow group database\n" msgstr "" -#: src/useradd.c:287 src/usermod.c:967 +#: src/useradd.c:293 src/usermod.c:973 #, c-format msgid "%s: invalid numeric argument `%s'\n" msgstr "" -#: src/useradd.c:343 +#: src/useradd.c:349 #, c-format msgid "%s: unknown gid %s\n" msgstr "" -#: src/useradd.c:350 src/useradd.c:642 src/useradd.c:1228 src/usermod.c:254 -#: src/usermod.c:1098 +#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260 +#: src/usermod.c:1104 #, c-format msgid "%s: unknown group %s\n" msgstr "" -#: src/useradd.c:418 +#: src/useradd.c:424 #, c-format msgid "group=%s,%ld basedir=%s skel=%s\n" msgstr "" -#: src/useradd.c:421 +#: src/useradd.c:427 #, c-format msgid "shell=%s " msgstr "" -#: src/useradd.c:423 +#: src/useradd.c:429 #, c-format msgid "inactive=%ld expire=%s" msgstr "" -#: src/useradd.c:427 +#: src/useradd.c:433 #, c-format msgid "GROUP=%ld\n" msgstr "" -#: src/useradd.c:428 +#: src/useradd.c:434 #, c-format msgid "HOME=%s\n" msgstr "" -#: src/useradd.c:430 +#: src/useradd.c:436 #, c-format msgid "INACTIVE=%ld\n" msgstr "" -#: src/useradd.c:431 +#: src/useradd.c:437 #, c-format msgid "EXPIRE=%s\n" msgstr "" -#: src/useradd.c:433 +#: src/useradd.c:439 #, c-format msgid "SHELL=%s\n" msgstr "" -#: src/useradd.c:434 +#: src/useradd.c:440 #, c-format msgid "SKEL=%s\n" msgstr "" -#: src/useradd.c:470 +#: src/useradd.c:476 #, c-format msgid "%s: cannot create new defaults file\n" msgstr "" -#: src/useradd.c:564 src/useradd.c:575 +#: src/useradd.c:570 src/useradd.c:581 #, c-format msgid "%s: rename: %s" msgstr "" -#: src/useradd.c:662 src/usermod.c:274 +#: src/useradd.c:668 src/usermod.c:280 #, c-format msgid "%s: group `%s' is a NIS group.\n" msgstr "" -#: src/useradd.c:670 src/usermod.c:282 +#: src/useradd.c:676 src/usermod.c:288 #, c-format msgid "%s: too many groups specified (max %d).\n" msgstr "" -#: src/useradd.c:702 src/usermod.c:314 +#: src/useradd.c:708 src/usermod.c:320 #, c-format msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n" msgstr "" -#: src/useradd.c:705 +#: src/useradd.c:711 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n" msgstr "" -#: src/useradd.c:708 src/usermod.c:320 +#: src/useradd.c:714 src/usermod.c:326 msgid "[-f inactive] [-e expire ] " msgstr "" -#: src/useradd.c:711 +#: src/useradd.c:717 msgid "[-A program] " msgstr "" -#: src/useradd.c:713 +#: src/useradd.c:719 msgid "[-p passwd] name\n" msgstr "" -#: src/useradd.c:715 +#: src/useradd.c:721 #, c-format msgid " %s\t-D [-g group] [-b base] [-s shell]\n" msgstr "" -#: src/useradd.c:718 +#: src/useradd.c:724 msgid "\t\t[-f inactive] [-e expire ]\n" msgstr "" -#: src/useradd.c:815 src/usermod.c:472 +#: src/useradd.c:821 src/usermod.c:478 #, c-format msgid "%s: error locking group file\n" msgstr "" -#: src/useradd.c:819 src/usermod.c:477 +#: src/useradd.c:825 src/usermod.c:483 #, c-format msgid "%s: error opening group file\n" msgstr "" -#: src/useradd.c:824 src/usermod.c:584 +#: src/useradd.c:830 src/usermod.c:590 #, c-format msgid "%s: error locking shadow group file\n" msgstr "" -#: src/useradd.c:829 src/usermod.c:590 +#: src/useradd.c:835 src/usermod.c:596 #, c-format msgid "%s: error opening shadow group file\n" msgstr "" -#: src/useradd.c:1001 +#: src/useradd.c:1007 #, c-format msgid "%s: uid %d is not unique\n" msgstr "" -#: src/useradd.c:1031 +#: src/useradd.c:1037 #, c-format msgid "%s: can't get unique uid\n" msgstr "" -#: src/useradd.c:1139 src/useradd.c:1283 src/usermod.c:1046 src/usermod.c:1057 -#: src/usermod.c:1067 src/usermod.c:1113 src/usermod.c:1157 +#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063 +#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163 #, c-format msgid "%s: invalid field `%s'\n" msgstr "" -#: src/useradd.c:1153 +#: src/useradd.c:1159 #, c-format msgid "%s: invalid base directory `%s'\n" msgstr "" -#: src/useradd.c:1163 +#: src/useradd.c:1169 #, c-format msgid "%s: invalid comment `%s'\n" msgstr "" -#: src/useradd.c:1173 +#: src/useradd.c:1179 #, c-format msgid "%s: invalid home directory `%s'\n" msgstr "" -#: src/useradd.c:1191 src/usermod.c:1080 +#: src/useradd.c:1197 src/usermod.c:1086 #, c-format msgid "%s: invalid date `%s'\n" msgstr "" -#: src/useradd.c:1203 +#: src/useradd.c:1209 #, c-format msgid "%s: shadow passwords required for -e\n" msgstr "" -#: src/useradd.c:1218 +#: src/useradd.c:1224 #, c-format msgid "%s: shadow passwords required for -f\n" msgstr "" -#: src/useradd.c:1292 +#: src/useradd.c:1298 #, c-format msgid "%s: invalid shell `%s'\n" msgstr "" -#: src/useradd.c:1333 +#: src/useradd.c:1339 #, c-format msgid "%s: invalid user name `%s'\n" msgstr "" -#: src/useradd.c:1369 src/userdel.c:292 src/usermod.c:1225 +#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231 #, c-format msgid "%s: cannot rewrite password file\n" msgstr "" -#: src/useradd.c:1374 src/userdel.c:295 src/usermod.c:1230 +#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236 #, c-format msgid "%s: cannot rewrite shadow password file\n" msgstr "" -#: src/useradd.c:1414 src/userdel.c:359 src/usermod.c:1265 +#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271 #, c-format msgid "%s: unable to lock password file\n" msgstr "" -#: src/useradd.c:1418 src/userdel.c:363 src/usermod.c:1269 +#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275 #, c-format msgid "%s: unable to open password file\n" msgstr "" -#: src/useradd.c:1424 src/userdel.c:368 src/usermod.c:1274 +#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280 #, c-format msgid "%s: cannot lock shadow password file\n" msgstr "" -#: src/useradd.c:1430 src/userdel.c:373 src/usermod.c:1279 +#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285 #, c-format msgid "%s: cannot open shadow password file\n" msgstr "" -#: src/useradd.c:1529 src/usermod.c:1366 +#: src/useradd.c:1535 src/usermod.c:1372 #, c-format msgid "%s: error adding authentication method\n" msgstr "" -#: src/useradd.c:1552 +#: src/useradd.c:1558 #, c-format msgid "%s: error adding new password entry\n" msgstr "" -#: src/useradd.c:1567 +#: src/useradd.c:1573 #, c-format msgid "%s: error updating password dbm entry\n" msgstr "" -#: src/useradd.c:1583 src/usermod.c:1425 +#: src/useradd.c:1589 src/usermod.c:1431 #, c-format msgid "%s: error adding new shadow password entry\n" msgstr "" -#: src/useradd.c:1599 src/usermod.c:1440 +#: src/useradd.c:1605 src/usermod.c:1446 #, c-format msgid "%s: error updating shadow passwd dbm entry\n" msgstr "" -#: src/useradd.c:1631 +#: src/useradd.c:1637 #, c-format msgid "%s: cannot create directory %s\n" msgstr "" -#: src/useradd.c:1708 src/usermod.c:1203 +#: src/useradd.c:1758 src/usermod.c:1209 #, c-format msgid "%s: user %s exists\n" msgstr "" -#: src/useradd.c:1738 +#: src/useradd.c:1770 +#, c-format +msgid "" +"%s: group %s exists - if you want to add this user to that group, use -g.\n" +msgstr "" + +#: src/useradd.c:1801 #, c-format msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n" msgstr "" -#: src/userdel.c:127 +#: src/userdel.c:133 #, c-format msgid "usage: %s [-r] name\n" msgstr "" -#: src/userdel.c:178 src/userdel.c:260 +#: src/userdel.c:184 src/userdel.c:266 #, c-format msgid "%s: error updating group entry\n" msgstr "" -#: src/userdel.c:188 src/userdel.c:269 +#: src/userdel.c:194 src/userdel.c:275 #, c-format msgid "%s: cannot update dbm group entry\n" msgstr "" -#: src/userdel.c:215 +#: src/userdel.c:221 #, c-format msgid "%s: cannot remove dbm group entry\n" msgstr "" -#: src/userdel.c:300 +#: src/userdel.c:306 #, c-format msgid "%s: cannot rewrite TCFS key file\n" msgstr "" -#: src/userdel.c:380 +#: src/userdel.c:386 #, c-format msgid "%s: cannot lock TCFS key file\n" msgstr "" -#: src/userdel.c:384 +#: src/userdel.c:390 #, c-format msgid "%s: cannot open TCFS key file\n" msgstr "" -#: src/userdel.c:393 +#: src/userdel.c:399 #, c-format msgid "%s: cannot open group file\n" msgstr "" -#: src/userdel.c:403 +#: src/userdel.c:409 #, c-format msgid "%s: cannot open shadow group file\n" msgstr "" -#: src/userdel.c:434 src/userdel.c:449 +#: src/userdel.c:440 src/userdel.c:455 #, c-format msgid "%s: error deleting authentication\n" msgstr "" -#: src/userdel.c:458 +#: src/userdel.c:464 #, c-format msgid "%s: error deleting password entry\n" msgstr "" -#: src/userdel.c:461 +#: src/userdel.c:467 #, c-format msgid "%s: error deleting shadow password entry\n" msgstr "" -#: src/userdel.c:470 +#: src/userdel.c:476 #, c-format msgid "%s: error deleting TCFS entry\n" msgstr "" -#: src/userdel.c:483 +#: src/userdel.c:489 #, c-format msgid "%s: error deleting password dbm entry\n" msgstr "" -#: src/userdel.c:502 +#: src/userdel.c:508 #, c-format msgid "%s: error deleting shadow passwd dbm entry\n" msgstr "" -#: src/userdel.c:543 +#: src/userdel.c:549 #, c-format msgid "%s: user %s is currently logged in\n" msgstr "" -#: src/userdel.c:660 +#: src/userdel.c:666 #, c-format msgid "%s: warning: %s not owned by %s, not removing\n" msgstr "" -#: src/userdel.c:666 +#: src/userdel.c:672 #, c-format msgid "%s: warning: can't remove " msgstr "" -#: src/userdel.c:741 src/usermod.c:994 +#: src/userdel.c:791 src/usermod.c:1000 #, c-format msgid "%s: user %s does not exist\n" msgstr "" -#: src/userdel.c:755 src/usermod.c:1010 +#: src/userdel.c:805 src/usermod.c:1016 #, c-format msgid "%s: user %s is a NIS user\n" msgstr "" -#: src/userdel.c:792 +#: src/userdel.c:842 #, c-format msgid "%s: %s not owned by %s, not removing\n" msgstr "" -#: src/userdel.c:815 +#: src/userdel.c:865 #, c-format msgid "%s: not removing directory %s (would remove home of user %s)\n" msgstr "" -#: src/userdel.c:828 +#: src/userdel.c:878 #, c-format msgid "%s: error removing directory %s\n" msgstr "" -#: src/usermod.c:317 +#: src/usermod.c:323 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n" msgstr "" -#: src/usermod.c:323 +#: src/usermod.c:329 msgid "[-A {DEFAULT|program},... ] " msgstr "" -#: src/usermod.c:325 +#: src/usermod.c:331 msgid "[-p passwd] [-L|-U] name\n" msgstr "" -#: src/usermod.c:504 +#: src/usermod.c:510 #, c-format msgid "%s: out of memory in update_group\n" msgstr "" -#: src/usermod.c:627 +#: src/usermod.c:633 #, c-format msgid "%s: out of memory in update_gshadow\n" msgstr "" -#: src/usermod.c:1180 +#: src/usermod.c:1186 #, c-format msgid "%s: no flags given\n" msgstr "" -#: src/usermod.c:1187 +#: src/usermod.c:1193 #, c-format msgid "%s: shadow passwords required for -e and -f\n" msgstr "" -#: src/usermod.c:1208 +#: src/usermod.c:1214 #, c-format msgid "%s: uid %ld is not unique\n" msgstr "" -#: src/usermod.c:1356 +#: src/usermod.c:1362 #, c-format msgid "%s: error deleting authentication method\n" msgstr "" -#: src/usermod.c:1376 +#: src/usermod.c:1382 #, c-format msgid "%s: error changing authentication method\n" msgstr "" -#: src/usermod.c:1393 +#: src/usermod.c:1399 #, c-format msgid "%s: error changing password entry\n" msgstr "" -#: src/usermod.c:1399 +#: src/usermod.c:1405 #, c-format msgid "%s: error removing password entry\n" msgstr "" -#: src/usermod.c:1407 +#: src/usermod.c:1413 #, c-format msgid "%s: error adding password dbm entry\n" msgstr "" -#: src/usermod.c:1414 +#: src/usermod.c:1420 #, c-format msgid "%s: error removing passwd dbm entry\n" msgstr "" -#: src/usermod.c:1431 +#: src/usermod.c:1437 #, c-format msgid "%s: error removing shadow password entry\n" msgstr "" -#: src/usermod.c:1446 +#: src/usermod.c:1452 #, c-format msgid "%s: error removing shadow passwd dbm entry\n" msgstr "" -#: src/usermod.c:1477 +#: src/usermod.c:1483 #, c-format msgid "%s: directory %s exists\n" msgstr "" -#: src/usermod.c:1484 +#: src/usermod.c:1490 #, c-format msgid "%s: can't create %s\n" msgstr "" -#: src/usermod.c:1490 +#: src/usermod.c:1496 #, c-format msgid "%s: can't chown %s\n" msgstr "" -#: src/usermod.c:1506 +#: src/usermod.c:1512 #, c-format msgid "%s: cannot rename directory %s to %s\n" msgstr "" #. better leave it alone -#: src/usermod.c:1603 +#: src/usermod.c:1609 #, c-format msgid "%s: warning: %s not owned by %s\n" msgstr "" -#: src/usermod.c:1609 +#: src/usermod.c:1615 msgid "failed to change mailbox owner" msgstr "" -#: src/usermod.c:1616 +#: src/usermod.c:1622 msgid "failed to rename mailbox" msgstr "" diff --git a/po/sv.po b/po/sv.po index 2409210d..c0a5ca6a 100644 --- a/po/sv.po +++ b/po/sv.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 19990709\n" -"POT-Creation-Date: 2000-09-02 20:40+0200\n" +"POT-Creation-Date: 2000-10-12 06:20+0200\n" "PO-Revision-Date: 1999-08-16 21:20+0100\n" "Last-Translator: Kristoffer Brånemyr \n" "Language-Team: sv \n" @@ -224,7 +224,7 @@ msgstr "" msgid "Unknown error %d" msgstr "Okänt fel %d" -#: src/chage.c:156 +#: src/chage.c:162 #, c-format msgid "" "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -W warn ]\n" @@ -233,14 +233,14 @@ msgstr "" "Användning: %s [ -l ] [ -m min_dagar ] [ -M max_dagar ] [ -W varna ]\n" " [ -I inaktiv ] [ -E utgång ] [ -d senaste_dag ] användare\n" -#: src/chage.c:158 +#: src/chage.c:164 #, c-format msgid "Usage: %s [ -l ] [ -m min_days ] [ -M max_days ] [ -d last_day ] user\n" msgstr "" "Användning: %s [ -l ] [ -m min_dagar ] [ -M max_dagar ] [ -d senaste_dag ] " "användare\n" -#: src/chage.c:193 +#: src/chage.c:199 msgid "" "Enter the new value, or press return for the default\n" "\n" @@ -248,27 +248,27 @@ msgstr "" "Skriv in det nya värdet, eller tryck på return för standardvärdet\n" "\n" -#: src/chage.c:196 +#: src/chage.c:202 msgid "Minimum Password Age" msgstr "Minsta lösenordsålder" -#: src/chage.c:201 +#: src/chage.c:207 msgid "Maximum Password Age" msgstr "Högsta lösenordsålder" -#: src/chage.c:207 +#: src/chage.c:213 msgid "Last Password Change (YYYY-MM-DD)" msgstr "Senaste lösenordsändring (ÅÅÅÅ-MM-DD)" -#: src/chage.c:216 +#: src/chage.c:222 msgid "Password Expiration Warning" msgstr "Lösenords upphörningsvarning" -#: src/chage.c:221 +#: src/chage.c:227 msgid "Password Inactive" msgstr "Lösenord inaktivt" -#: src/chage.c:227 +#: src/chage.c:233 msgid "Account Expiration Date (YYYY-MM-DD)" msgstr "Kontot upphör (ÅÅÅÅ-MM-DD)" @@ -280,22 +280,22 @@ msgstr "Kontot upph #. * days after the password expires that the account becomes #. * unusable. #. -#: src/chage.c:281 +#: src/chage.c:287 #, c-format msgid "Minimum:\t%ld\n" msgstr "Minst:\t%ld\n" -#: src/chage.c:282 +#: src/chage.c:288 #, c-format msgid "Maximum:\t%ld\n" msgstr "Högst:\t%ld\n" -#: src/chage.c:284 +#: src/chage.c:290 #, c-format msgid "Warning:\t%ld\n" msgstr "Varning:\t%ld\n" -#: src/chage.c:285 +#: src/chage.c:291 #, c-format msgid "Inactive:\t%ld\n" msgstr "Inaktivt:\t%ld\n" @@ -305,11 +305,11 @@ msgstr "Inaktivt:\t%ld\n" #. * password was last modified. The date is the number of #. * days since 1/1/1970. #. -#: src/chage.c:294 +#: src/chage.c:300 msgid "Last Change:\t\t" msgstr "Senaste ändring:\t\t" -#: src/chage.c:296 src/chage.c:310 src/chage.c:327 src/chage.c:340 +#: src/chage.c:302 src/chage.c:316 src/chage.c:333 src/chage.c:346 msgid "Never\n" msgstr "Aldrig\n" @@ -318,7 +318,7 @@ msgstr "Aldrig\n" #. * change date plus the number of days the password is valid #. * for. #. -#: src/chage.c:308 +#: src/chage.c:314 msgid "Password Expires:\t" msgstr "Lösenordet upphör:\t" @@ -328,7 +328,7 @@ msgstr "L #. * and the number of inactive days is added. The resulting date #. * is when the active will be disabled. #. -#: src/chage.c:324 +#: src/chage.c:330 #, fuzzy msgid "Password Inactive:\t" msgstr "Lösenord inaktivt" @@ -337,82 +337,96 @@ msgstr "L #. * The account will expire on the given date regardless of the #. * password expiring or not. #. -#: src/chage.c:338 +#: src/chage.c:344 #, fuzzy msgid "Account Expires:\t" msgstr "Lösenordet upphör:\t" -#: src/chage.c:486 +#: src/chage.c:453 src/chpasswd.c:152 src/groupadd.c:536 src/groupdel.c:322 +#: src/groupmod.c:522 src/newusers.c:389 src/useradd.c:1707 src/userdel.c:738 +#: src/usermod.c:1684 +#, fuzzy, c-format +msgid "%s: PAM authentication failed\n" +msgstr "%s: fel under tillägning av metod för äkthetsbevisning\n" + +#: src/chage.c:536 #, c-format msgid "%s: do not include \"l\" with other flags\n" msgstr "%s: inkludera inte \"l\" tillsammands med andra flaggor\n" -#: src/chage.c:498 src/chage.c:610 src/login.c:529 +#: src/chage.c:548 src/chage.c:660 src/login.c:529 #, c-format msgid "%s: permission denied\n" msgstr "%s: tillåtelse nekas\n" -#: src/chage.c:510 src/chpasswd.c:120 +#: src/chage.c:560 src/chpasswd.c:170 #, c-format msgid "%s: can't lock password file\n" msgstr "%s: kan inte låsa lösenordsfilen\n" -#: src/chage.c:516 src/chpasswd.c:124 +#: src/chage.c:566 src/chpasswd.c:174 #, c-format msgid "%s: can't open password file\n" msgstr "%s: kan inte öppna lösenordsfilen\n" -#: src/chage.c:523 +#: src/chage.c:573 #, c-format msgid "%s: unknown user: %s\n" msgstr "%s: okänd användare: %s\n" -#: src/chage.c:542 +#: src/chage.c:592 #, c-format msgid "%s: can't lock shadow password file\n" msgstr "%s: kan inte låsa skugglösenordsfilen\n" -#: src/chage.c:549 +#: src/chage.c:599 #, c-format msgid "%s: can't open shadow password file\n" msgstr "%s: kan inte öppna skugglösenordsfilen\n" -#: src/chage.c:631 +#: src/chage.c:681 #, c-format msgid "Changing the aging information for %s\n" msgstr "Ändrar åldringsinformation för %s\n" -#: src/chage.c:633 +#: src/chage.c:683 #, c-format msgid "%s: error changing fields\n" msgstr "%s: fel uppstod under byte av fält\n" -#: src/chage.c:660 src/chage.c:723 src/pwunconv.c:183 +#: src/chage.c:710 src/chage.c:773 src/pwunconv.c:183 #, c-format msgid "%s: can't update password file\n" msgstr "%s: kan inte uppdatera lösenordsfilen\n" -#: src/chage.c:690 src/pwunconv.c:178 +#: src/chage.c:740 src/pwunconv.c:178 #, c-format msgid "%s: can't update shadow password file\n" msgstr "%s: kan inte uppdatera skugglösenordsfilen\n" -#: src/chage.c:739 src/chage.c:754 src/chfn.c:570 src/chsh.c:409 +#: src/chage.c:789 src/chage.c:804 src/chfn.c:570 src/chsh.c:409 #: src/passwd.c:825 src/passwd.c:926 msgid "Error updating the DBM password entry.\n" msgstr "Fel under uppdatering av DBM-lösenordsnoteringen.\n" -#: src/chage.c:771 +#: src/chage.c:821 #, c-format msgid "%s: can't rewrite shadow password file\n" msgstr "%s: kan inte skriva om skugglösenordsfilen\n" -#: src/chage.c:785 +#: src/chage.c:835 #, c-format msgid "%s: can't rewrite password file\n" msgstr "%s: kan inte skriva om lösenordsfilen\n" -#: src/chage.c:836 +#: src/chage.c:853 src/chpasswd.c:346 src/groupadd.c:595 src/groupdel.c:409 +#: src/groupmod.c:606 src/newusers.c:625 src/useradd.c:1816 src/userdel.c:903 +#: src/usermod.c:1762 +#, fuzzy, c-format +msgid "%s: PAM chauthtok failed\n" +msgstr "%s: kan inte låsa upp filen\n" + +#: src/chage.c:905 #, c-format msgid "%s: no aging information present\n" msgstr "%s: ingen åldringsinformation finns tillgänglig\n" @@ -551,7 +565,7 @@ msgstr "Kan inte l msgid "Cannot open the password file.\n" msgstr "Kan inte öppna lösenordsfilen.\n" -#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1313 +#: src/chfn.c:545 src/chsh.c:382 src/passwd.c:746 src/usermod.c:1319 #, c-format msgid "%s: %s not found in /etc/passwd\n" msgstr "%s: %s hittades inte i /etc/passwd\n" @@ -569,53 +583,53 @@ msgstr "Kan inte genomf msgid "Cannot unlock the password file.\n" msgstr "Kan inte låsa upp lösenordsfilen.\n" -#: src/chpasswd.c:76 +#: src/chpasswd.c:82 #, c-format msgid "usage: %s [-e]\n" msgstr "Användning: %s [-e]\n" -#: src/chpasswd.c:132 src/pwconv.c:104 +#: src/chpasswd.c:182 src/pwconv.c:104 #, c-format msgid "%s: can't lock shadow file\n" msgstr "%s: kan inte låsa skuggfilen\n" -#: src/chpasswd.c:137 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 +#: src/chpasswd.c:187 src/gpasswd.c:608 src/pwconv.c:109 src/pwunconv.c:118 #: src/pwunconv.c:123 #, c-format msgid "%s: can't open shadow file\n" msgstr "%s: kan inte öppna skuggfilen\n" -#: src/chpasswd.c:159 src/newusers.c:415 +#: src/chpasswd.c:209 src/newusers.c:465 #, c-format msgid "%s: line %d: line too long\n" msgstr "%s: rad %d: för lång rad\n" -#: src/chpasswd.c:179 +#: src/chpasswd.c:229 #, c-format msgid "%s: line %d: missing new password\n" msgstr "%s: rad %d: det nya lösenordet saknas\n" -#: src/chpasswd.c:195 +#: src/chpasswd.c:245 #, c-format msgid "%s: line %d: unknown user %s\n" msgstr "%s: rad %d: okänd användare %s\n" -#: src/chpasswd.c:247 +#: src/chpasswd.c:297 #, c-format msgid "%s: line %d: cannot update password entry\n" msgstr "%s: rad %d: kan inte uppdatera lösenordsnoteringen\n" -#: src/chpasswd.c:263 src/newusers.c:535 +#: src/chpasswd.c:313 src/newusers.c:585 #, c-format msgid "%s: error detected, changes ignored\n" msgstr "%s: fel upptäcktes, ändringarna ignorerades\n" -#: src/chpasswd.c:274 +#: src/chpasswd.c:324 #, c-format msgid "%s: error updating shadow file\n" msgstr "%s: fel under uppdatering av skuggfilen\n" -#: src/chpasswd.c:282 +#: src/chpasswd.c:332 #, c-format msgid "%s: error updating password file\n" msgstr "%s: fel under uppdatering av lösenordsfilen\n" @@ -873,33 +887,33 @@ msgstr "%s: kan inte uppdatera DBM-filer\n" msgid "%s: can't update DBM shadow files\n" msgstr "%s: kan inte uppdatera DBM-skuggfiler\n" -#: src/groupadd.c:105 +#: src/groupadd.c:111 msgid "usage: groupadd [-g gid [-o]] group\n" msgstr "Användning: groupadd [-g gid [-o]] grupp\n" -#: src/groupadd.c:173 src/groupadd.c:196 src/groupmod.c:183 src/groupmod.c:230 -#: src/useradd.c:931 src/usermod.c:539 src/usermod.c:675 +#: src/groupadd.c:179 src/groupadd.c:202 src/groupmod.c:189 src/groupmod.c:236 +#: src/useradd.c:937 src/usermod.c:545 src/usermod.c:681 #, c-format msgid "%s: error adding new group entry\n" msgstr "%s: gick inte att lägga till en ny gruppnotering\n" -#: src/groupadd.c:183 src/groupadd.c:206 src/groupmod.c:199 src/useradd.c:942 -#: src/usermod.c:551 src/usermod.c:687 +#: src/groupadd.c:189 src/groupadd.c:212 src/groupmod.c:205 src/useradd.c:948 +#: src/usermod.c:557 src/usermod.c:693 #, c-format msgid "%s: cannot add new dbm group entry\n" msgstr "%s: kan inte lägga till en ny dbm-gruppnotering\n" -#: src/groupadd.c:258 src/useradd.c:996 +#: src/groupadd.c:264 src/useradd.c:1002 #, c-format msgid "%s: name %s is not unique\n" msgstr "%s: namnet %s är inte unikt\n" -#: src/groupadd.c:273 +#: src/groupadd.c:279 #, c-format msgid "%s: gid %ld is not unique\n" msgstr "%s: gid %ld är inte unikt\n" -#: src/groupadd.c:297 +#: src/groupadd.c:303 #, c-format msgid "%s: can't get unique gid\n" msgstr "%s: kan inte hitta ett unikt gid\n" @@ -907,78 +921,78 @@ msgstr "%s: kan inte hitta ett unikt gid\n" #. #. * All invalid group names land here. #. -#: src/groupadd.c:321 src/groupmod.c:341 +#: src/groupadd.c:327 src/groupmod.c:347 #, c-format msgid "%s: %s is a not a valid group name\n" msgstr "%s: %s är inte ett giltigt gruppnamn\n" -#: src/groupadd.c:350 src/groupmod.c:367 +#: src/groupadd.c:356 src/groupmod.c:373 #, c-format msgid "%s: invalid group %s\n" msgstr "%s: ogiltig grupp %s\n" -#: src/groupadd.c:367 src/useradd.c:1272 +#: src/groupadd.c:373 src/useradd.c:1278 #, c-format msgid "%s: -O requires NAME=VALUE\n" msgstr "%s: -O kräver NAME=VÄRDE\n" -#: src/groupadd.c:412 src/groupdel.c:167 src/groupmod.c:403 src/useradd.c:1381 -#: src/userdel.c:303 src/usermod.c:563 +#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1387 +#: src/userdel.c:309 src/usermod.c:569 #, c-format msgid "%s: cannot rewrite group file\n" msgstr "%s: kan inte skriva om gruppfilen\n" -#: src/groupadd.c:418 src/groupdel.c:173 src/groupmod.c:409 src/useradd.c:1389 -#: src/userdel.c:309 src/usermod.c:700 +#: src/groupadd.c:424 src/groupdel.c:179 src/groupmod.c:415 src/useradd.c:1395 +#: src/userdel.c:315 src/usermod.c:706 #, c-format msgid "%s: cannot rewrite shadow group file\n" msgstr "%s: kan inte skriva om skuggruppfilen\n" -#: src/groupadd.c:437 src/groupdel.c:192 src/groupmod.c:428 src/userdel.c:389 +#: src/groupadd.c:443 src/groupdel.c:198 src/groupmod.c:434 src/userdel.c:395 #, c-format msgid "%s: unable to lock group file\n" msgstr "%s: kan inte låsa gruppfilen\n" -#: src/groupadd.c:441 src/groupdel.c:196 src/groupmod.c:432 +#: src/groupadd.c:447 src/groupdel.c:202 src/groupmod.c:438 #, c-format msgid "%s: unable to open group file\n" msgstr "%s: kan inte öppna gruppfilen\n" -#: src/groupadd.c:446 src/groupdel.c:201 src/groupmod.c:437 src/userdel.c:398 +#: src/groupadd.c:452 src/groupdel.c:207 src/groupmod.c:443 src/userdel.c:404 #, c-format msgid "%s: unable to lock shadow group file\n" msgstr "%s: kan inte låsa skuggruppfilen\n" -#: src/groupadd.c:451 src/groupdel.c:206 src/groupmod.c:442 +#: src/groupadd.c:457 src/groupdel.c:212 src/groupmod.c:448 #, c-format msgid "%s: unable to open shadow group file\n" msgstr "%s: kan inte öppna skuggruppfilen\n" -#: src/groupadd.c:518 +#: src/groupadd.c:568 #, c-format msgid "%s: group %s exists\n" msgstr "%s: grupp %s existerar\n" -#: src/groupdel.c:86 +#: src/groupdel.c:92 msgid "usage: groupdel group\n" msgstr "Användning: groupdel grupp\n" -#: src/groupdel.c:104 src/groupmod.c:187 src/groupmod.c:234 +#: src/groupdel.c:110 src/groupmod.c:193 src/groupmod.c:240 #, c-format msgid "%s: error removing group entry\n" msgstr "%s: fel under borttagning av gruppnotering\n" -#: src/groupdel.c:116 src/groupmod.c:206 +#: src/groupdel.c:122 src/groupmod.c:212 #, c-format msgid "%s: error removing group dbm entry\n" msgstr "%s: fel under borttagning av dbm-gruppnotering\n" -#: src/groupdel.c:131 +#: src/groupdel.c:137 #, c-format msgid "%s: error removing shadow group entry\n" msgstr "%s: fel under borttagning av skuggruppnotering\n" -#: src/groupdel.c:144 src/groupmod.c:252 +#: src/groupdel.c:150 src/groupmod.c:258 #, c-format msgid "%s: error removing shadow group dbm entry\n" msgstr "%s: fel under borttagning av dbm-skuggruppnotering\n" @@ -986,46 +1000,46 @@ msgstr "%s: fel under borttagning av dbm-skuggruppnotering\n" #. #. * Can't remove the group. #. -#: src/groupdel.c:248 +#: src/groupdel.c:254 #, c-format msgid "%s: cannot remove user's primary group.\n" msgstr "%s: kan inte ta bort användarens primära grupp.\n" -#: src/groupdel.c:305 src/groupmod.c:501 +#: src/groupdel.c:355 src/groupmod.c:551 #, c-format msgid "%s: group %s does not exist\n" msgstr "%s: grupp %s existerar inte\n" -#: src/groupdel.c:319 src/groupmod.c:517 +#: src/groupdel.c:369 src/groupmod.c:567 #, c-format msgid "%s: group %s is a NIS group\n" msgstr "%s: grupp %s är en NIS-grupp\n" -#: src/groupdel.c:325 src/groupmod.c:523 src/userdel.c:761 src/usermod.c:1016 +#: src/groupdel.c:375 src/groupmod.c:573 src/userdel.c:811 src/usermod.c:1022 #, c-format msgid "%s: %s is the NIS master\n" msgstr "%s: %s är NIS-mästeren\n" -#: src/groupmod.c:105 +#: src/groupmod.c:111 msgid "usage: groupmod [-g gid [-o]] [-n name] group\n" msgstr "Användning: groupmod [-g gid [-o]] [-n namn] grupp\n" -#: src/groupmod.c:165 +#: src/groupmod.c:171 #, c-format msgid "%s: %s not found in /etc/group\n" msgstr "%s: %s hittades inte i /etc/group\n" -#: src/groupmod.c:246 +#: src/groupmod.c:252 #, c-format msgid "%s: cannot add new dbm shadow group entry\n" msgstr "%s: kunde inte lägga till en ny dbm-skuggruppnotering\n" -#: src/groupmod.c:299 +#: src/groupmod.c:305 #, c-format msgid "%s: %ld is not a unique gid\n" msgstr "%s: %ld är inte ett unikt gid\n" -#: src/groupmod.c:330 +#: src/groupmod.c:336 #, c-format msgid "%s: %s is not a unique name\n" msgstr "%s: %s är inte ett unikt namn\n" @@ -1468,67 +1482,67 @@ msgstr "Tyv msgid "too many groups\n" msgstr "för många grupper\n" -#: src/newusers.c:76 +#: src/newusers.c:82 #, c-format msgid "Usage: %s [ input ]\n" msgstr "Användning: %s [ indata ]\n" -#: src/newusers.c:364 +#: src/newusers.c:414 #, c-format msgid "%s: can't lock /etc/passwd.\n" msgstr "%s: kan inte låsa /etc/passwd.\n" -#: src/newusers.c:375 +#: src/newusers.c:425 #, c-format msgid "%s: can't lock files, try again later\n" msgstr "%s: kan inte låsa filerna, försök igen senare\n" -#: src/newusers.c:390 +#: src/newusers.c:440 #, c-format msgid "%s: can't open files\n" msgstr "%s: kan inte öppna filerna\n" -#: src/newusers.c:435 +#: src/newusers.c:485 #, c-format msgid "%s: line %d: invalid line\n" msgstr "%s: rad %d: ogiltig rad\n" -#: src/newusers.c:453 +#: src/newusers.c:503 #, c-format msgid "%s: line %d: can't create GID\n" msgstr "%s: rad %d: kan inte skapa GID\n" -#: src/newusers.c:469 +#: src/newusers.c:519 #, c-format msgid "%s: line %d: can't create UID\n" msgstr "%s: rad %d: kan inte skapa UID\n" -#: src/newusers.c:481 +#: src/newusers.c:531 #, c-format msgid "%s: line %d: cannot find user %s\n" msgstr "%s: rad %d: kan inte hitta användaren %s\n" -#: src/newusers.c:489 +#: src/newusers.c:539 #, c-format msgid "%s: line %d: can't update password\n" msgstr "%s: rad %d: kan inte uppdatera lösenordet\n" -#: src/newusers.c:506 +#: src/newusers.c:556 #, c-format msgid "%s: line %d: mkdir failed\n" msgstr "%s: rad %d: mkdir misslyckades\n" -#: src/newusers.c:510 +#: src/newusers.c:560 #, c-format msgid "%s: line %d: chown failed\n" msgstr "%s: rad %d: chown misslyckades\n" -#: src/newusers.c:519 +#: src/newusers.c:569 #, c-format msgid "%s: line %d: can't update entry\n" msgstr "%s: rad %d: kan inte uppdatera notering\n" -#: src/newusers.c:550 +#: src/newusers.c:600 #, c-format msgid "%s: error updating files\n" msgstr "%s: kunde inte uppdatera filerna\n" @@ -1879,497 +1893,503 @@ msgstr "" msgid "Entering System Maintenance Mode\n" msgstr "Går in i systemunderhållsläge\n" -#: src/useradd.c:243 +#: src/useradd.c:249 #, c-format msgid "%s: rebuild the group database\n" msgstr "%s: bygg om gruppdatabasen\n" -#: src/useradd.c:250 +#: src/useradd.c:256 #, c-format msgid "%s: rebuild the shadow group database\n" msgstr "%s: bygg om skuggruppdatabasen\n" -#: src/useradd.c:287 src/usermod.c:967 +#: src/useradd.c:293 src/usermod.c:973 #, c-format msgid "%s: invalid numeric argument `%s'\n" msgstr "%s: ogiltigt numeriskt argument \"%s\"\n" -#: src/useradd.c:343 +#: src/useradd.c:349 #, c-format msgid "%s: unknown gid %s\n" msgstr "%s: okänt gid %s\n" -#: src/useradd.c:350 src/useradd.c:642 src/useradd.c:1228 src/usermod.c:254 -#: src/usermod.c:1098 +#: src/useradd.c:356 src/useradd.c:648 src/useradd.c:1234 src/usermod.c:260 +#: src/usermod.c:1104 #, c-format msgid "%s: unknown group %s\n" msgstr "%s: okänd grupp %s\n" -#: src/useradd.c:418 +#: src/useradd.c:424 #, c-format msgid "group=%s,%ld basedir=%s skel=%s\n" msgstr "grupp=%s,%ld baskatalog=%s skel=%s\n" -#: src/useradd.c:421 +#: src/useradd.c:427 #, c-format msgid "shell=%s " msgstr "skal=%s " -#: src/useradd.c:423 +#: src/useradd.c:429 #, c-format msgid "inactive=%ld expire=%s" msgstr "inaktiv=%ld upphör=%s" -#: src/useradd.c:427 +#: src/useradd.c:433 #, c-format msgid "GROUP=%ld\n" msgstr "GRUPP=%ld\n" -#: src/useradd.c:428 +#: src/useradd.c:434 #, c-format msgid "HOME=%s\n" msgstr "HEM=%s\n" -#: src/useradd.c:430 +#: src/useradd.c:436 #, c-format msgid "INACTIVE=%ld\n" msgstr "INAKTIV=%ld\n" -#: src/useradd.c:431 +#: src/useradd.c:437 #, c-format msgid "EXPIRE=%s\n" msgstr "UPPHÖR=%s\n" -#: src/useradd.c:433 +#: src/useradd.c:439 #, c-format msgid "SHELL=%s\n" msgstr "SKAL=%s\n" -#: src/useradd.c:434 +#: src/useradd.c:440 #, c-format msgid "SKEL=%s\n" msgstr "SKEL=%s\n" -#: src/useradd.c:470 +#: src/useradd.c:476 #, c-format msgid "%s: cannot create new defaults file\n" msgstr "%s: kan inte skapa en ny standardfil\n" -#: src/useradd.c:564 src/useradd.c:575 +#: src/useradd.c:570 src/useradd.c:581 #, c-format msgid "%s: rename: %s" msgstr "%s: rename: %s" -#: src/useradd.c:662 src/usermod.c:274 +#: src/useradd.c:668 src/usermod.c:280 #, c-format msgid "%s: group `%s' is a NIS group.\n" msgstr "%s: grupp \"%s\" är en NIS-grupp.\n" -#: src/useradd.c:670 src/usermod.c:282 +#: src/useradd.c:676 src/usermod.c:288 #, c-format msgid "%s: too many groups specified (max %d).\n" msgstr "%s: för många grupper speciferade (max %d).\n" -#: src/useradd.c:702 src/usermod.c:314 +#: src/useradd.c:708 src/usermod.c:320 #, c-format msgid "usage: %s\t[-u uid [-o]] [-g group] [-G group,...] \n" msgstr "Användning: %s\t[-u uid [-o]] [-g grupp] [-G grupp,...] \n" -#: src/useradd.c:705 +#: src/useradd.c:711 msgid "\t\t[-d home] [-s shell] [-c comment] [-m [-k template]]\n" msgstr "\t\t[-d hem] [-s skal] [-c kommentar] [-m [-k mall]]\n" -#: src/useradd.c:708 src/usermod.c:320 +#: src/useradd.c:714 src/usermod.c:326 msgid "[-f inactive] [-e expire ] " msgstr "[-f inaktiv] [-e upphör ] " -#: src/useradd.c:711 +#: src/useradd.c:717 msgid "[-A program] " msgstr "[-A program] " -#: src/useradd.c:713 +#: src/useradd.c:719 msgid "[-p passwd] name\n" msgstr "[-p passwd] namn\n" -#: src/useradd.c:715 +#: src/useradd.c:721 #, c-format msgid " %s\t-D [-g group] [-b base] [-s shell]\n" msgstr " %s\t-D [-g grupp] [-b bas] [-s skal]\n" -#: src/useradd.c:718 +#: src/useradd.c:724 msgid "\t\t[-f inactive] [-e expire ]\n" msgstr "\t\t[-f inaktiv] [-e utgång ]\n" -#: src/useradd.c:815 src/usermod.c:472 +#: src/useradd.c:821 src/usermod.c:478 #, c-format msgid "%s: error locking group file\n" msgstr "%s: fel under låsning av gruppfilen\n" -#: src/useradd.c:819 src/usermod.c:477 +#: src/useradd.c:825 src/usermod.c:483 #, c-format msgid "%s: error opening group file\n" msgstr "%s: fel under öppning av gruppfilen\n" -#: src/useradd.c:824 src/usermod.c:584 +#: src/useradd.c:830 src/usermod.c:590 #, c-format msgid "%s: error locking shadow group file\n" msgstr "%s: fel under låsning av skuggruppfilen\n" -#: src/useradd.c:829 src/usermod.c:590 +#: src/useradd.c:835 src/usermod.c:596 #, c-format msgid "%s: error opening shadow group file\n" msgstr "%s: fel under öppning av skuggruppfilen\n" -#: src/useradd.c:1001 +#: src/useradd.c:1007 #, c-format msgid "%s: uid %d is not unique\n" msgstr "%s: uid %d är inte unikt\n" -#: src/useradd.c:1031 +#: src/useradd.c:1037 #, c-format msgid "%s: can't get unique uid\n" msgstr "%s: kan inte hitta ett unikt uid\n" -#: src/useradd.c:1139 src/useradd.c:1283 src/usermod.c:1046 src/usermod.c:1057 -#: src/usermod.c:1067 src/usermod.c:1113 src/usermod.c:1157 +#: src/useradd.c:1145 src/useradd.c:1289 src/usermod.c:1052 src/usermod.c:1063 +#: src/usermod.c:1073 src/usermod.c:1119 src/usermod.c:1163 #, c-format msgid "%s: invalid field `%s'\n" msgstr "%s: felaktigt fält \"%s\"\n" -#: src/useradd.c:1153 +#: src/useradd.c:1159 #, c-format msgid "%s: invalid base directory `%s'\n" msgstr "%s: felaktig baskatalog \"%s\"\n" -#: src/useradd.c:1163 +#: src/useradd.c:1169 #, c-format msgid "%s: invalid comment `%s'\n" msgstr "%s: felaktig kommentar \"%s\"\n" -#: src/useradd.c:1173 +#: src/useradd.c:1179 #, c-format msgid "%s: invalid home directory `%s'\n" msgstr "%s: felaktig hemkatalog \"%s\"\n" -#: src/useradd.c:1191 src/usermod.c:1080 +#: src/useradd.c:1197 src/usermod.c:1086 #, c-format msgid "%s: invalid date `%s'\n" msgstr "%s: felaktigt datum \"%s\"\n" -#: src/useradd.c:1203 +#: src/useradd.c:1209 #, c-format msgid "%s: shadow passwords required for -e\n" msgstr "%s: skugglösenord krävs för -e\n" -#: src/useradd.c:1218 +#: src/useradd.c:1224 #, c-format msgid "%s: shadow passwords required for -f\n" msgstr "%s: skugglösenord krävs för -f\n" -#: src/useradd.c:1292 +#: src/useradd.c:1298 #, c-format msgid "%s: invalid shell `%s'\n" msgstr "%s: felaktigt skal \"%s\"\n" -#: src/useradd.c:1333 +#: src/useradd.c:1339 #, c-format msgid "%s: invalid user name `%s'\n" msgstr "%s: felaktigt användar namn \"%s\"\n" -#: src/useradd.c:1369 src/userdel.c:292 src/usermod.c:1225 +#: src/useradd.c:1375 src/userdel.c:298 src/usermod.c:1231 #, c-format msgid "%s: cannot rewrite password file\n" msgstr "%s: kan inte skriva om lösenordsfilen\n" -#: src/useradd.c:1374 src/userdel.c:295 src/usermod.c:1230 +#: src/useradd.c:1380 src/userdel.c:301 src/usermod.c:1236 #, c-format msgid "%s: cannot rewrite shadow password file\n" msgstr "%s: kan inte skriva om skugglösenordsfilen\n" -#: src/useradd.c:1414 src/userdel.c:359 src/usermod.c:1265 +#: src/useradd.c:1420 src/userdel.c:365 src/usermod.c:1271 #, c-format msgid "%s: unable to lock password file\n" msgstr "%s: kan inte låsa lösenordsfilen\n" -#: src/useradd.c:1418 src/userdel.c:363 src/usermod.c:1269 +#: src/useradd.c:1424 src/userdel.c:369 src/usermod.c:1275 #, c-format msgid "%s: unable to open password file\n" msgstr "%s: kan inte öppna lösenordsfilen\n" -#: src/useradd.c:1424 src/userdel.c:368 src/usermod.c:1274 +#: src/useradd.c:1430 src/userdel.c:374 src/usermod.c:1280 #, c-format msgid "%s: cannot lock shadow password file\n" msgstr "%s: kan inte låsa skugglösenordsfilen\n" -#: src/useradd.c:1430 src/userdel.c:373 src/usermod.c:1279 +#: src/useradd.c:1436 src/userdel.c:379 src/usermod.c:1285 #, c-format msgid "%s: cannot open shadow password file\n" msgstr "%s: kan inte öppna skugglösenordsfilen\n" -#: src/useradd.c:1529 src/usermod.c:1366 +#: src/useradd.c:1535 src/usermod.c:1372 #, c-format msgid "%s: error adding authentication method\n" msgstr "%s: fel under tillägning av metod för äkthetsbevisning\n" -#: src/useradd.c:1552 +#: src/useradd.c:1558 #, c-format msgid "%s: error adding new password entry\n" msgstr "%s: fel under tilläggning av ny lösenordsnotering\n" -#: src/useradd.c:1567 +#: src/useradd.c:1573 #, c-format msgid "%s: error updating password dbm entry\n" msgstr "%s: fel under uppdatering av dbm-lösenordsnotering\n" -#: src/useradd.c:1583 src/usermod.c:1425 +#: src/useradd.c:1589 src/usermod.c:1431 #, c-format msgid "%s: error adding new shadow password entry\n" msgstr "%s: fel under tilläggning av ny skugglösenordsnotering\n" -#: src/useradd.c:1599 src/usermod.c:1440 +#: src/useradd.c:1605 src/usermod.c:1446 #, c-format msgid "%s: error updating shadow passwd dbm entry\n" msgstr "%s: fel under uppdatering av dbm-skugglösenordsnotering\n" -#: src/useradd.c:1631 +#: src/useradd.c:1637 #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: kan inte skapa katalog %s\n" -#: src/useradd.c:1708 src/usermod.c:1203 +#: src/useradd.c:1758 src/usermod.c:1209 #, c-format msgid "%s: user %s exists\n" msgstr "%s: användare %s existerar\n" -#: src/useradd.c:1738 +#: src/useradd.c:1770 +#, c-format +msgid "" +"%s: group %s exists - if you want to add this user to that group, use -g.\n" +msgstr "" + +#: src/useradd.c:1801 #, c-format msgid "%s: warning: CREATE_HOME not supported, please use -m instead.\n" msgstr "%s: varning: CREATE_HOME stöds inte, använd -m istället.\n" -#: src/userdel.c:127 +#: src/userdel.c:133 #, c-format msgid "usage: %s [-r] name\n" msgstr "Användning: %s [-r] namn\n" -#: src/userdel.c:178 src/userdel.c:260 +#: src/userdel.c:184 src/userdel.c:266 #, c-format msgid "%s: error updating group entry\n" msgstr "%s: fel under uppdatering av gruppnotering\n" -#: src/userdel.c:188 src/userdel.c:269 +#: src/userdel.c:194 src/userdel.c:275 #, c-format msgid "%s: cannot update dbm group entry\n" msgstr "%s: kan inte uppdatera dbm-gruppnotering\n" -#: src/userdel.c:215 +#: src/userdel.c:221 #, fuzzy, c-format msgid "%s: cannot remove dbm group entry\n" msgstr "%s: kan inte uppdatera dbm-gruppnotering\n" -#: src/userdel.c:300 +#: src/userdel.c:306 #, c-format msgid "%s: cannot rewrite TCFS key file\n" msgstr "%s: kan inte skriva om TCFS-nyckelfilen\n" -#: src/userdel.c:380 +#: src/userdel.c:386 #, c-format msgid "%s: cannot lock TCFS key file\n" msgstr "%s: kan inte låsa TCFS-nyckelfilen\n" -#: src/userdel.c:384 +#: src/userdel.c:390 #, c-format msgid "%s: cannot open TCFS key file\n" msgstr "%s: kan inte öppna TCFS-nyckelfilen\n" -#: src/userdel.c:393 +#: src/userdel.c:399 #, c-format msgid "%s: cannot open group file\n" msgstr "%s: kan inte öppna gruppfilen\n" -#: src/userdel.c:403 +#: src/userdel.c:409 #, c-format msgid "%s: cannot open shadow group file\n" msgstr "%s: kan inte öppna skuggruppfilen\n" -#: src/userdel.c:434 src/userdel.c:449 +#: src/userdel.c:440 src/userdel.c:455 #, c-format msgid "%s: error deleting authentication\n" msgstr "%s: fel under borttagning av metod för äkthetsbevisning\n" -#: src/userdel.c:458 +#: src/userdel.c:464 #, c-format msgid "%s: error deleting password entry\n" msgstr "%s: fel under borttagning av lösenordsnotering\n" -#: src/userdel.c:461 +#: src/userdel.c:467 #, c-format msgid "%s: error deleting shadow password entry\n" msgstr "%s: fel under borttagning av skugglösenordsnotering\n" -#: src/userdel.c:470 +#: src/userdel.c:476 #, c-format msgid "%s: error deleting TCFS entry\n" msgstr "%s: fel under borttagning av TCFS-notering\n" -#: src/userdel.c:483 +#: src/userdel.c:489 #, c-format msgid "%s: error deleting password dbm entry\n" msgstr "%s: fel under borttagning av dbm-lösenordsnotering\n" -#: src/userdel.c:502 +#: src/userdel.c:508 #, c-format msgid "%s: error deleting shadow passwd dbm entry\n" msgstr "%s: fel under borttagning av dbm-skugglösenordsnotering\n" -#: src/userdel.c:543 +#: src/userdel.c:549 #, c-format msgid "%s: user %s is currently logged in\n" msgstr "%s: användare %s är inloggad\n" -#: src/userdel.c:660 +#: src/userdel.c:666 #, c-format msgid "%s: warning: %s not owned by %s, not removing\n" msgstr "%s: varning: %s ägs inte av %s, tar inte bort\n" -#: src/userdel.c:666 +#: src/userdel.c:672 #, c-format msgid "%s: warning: can't remove " msgstr "%s: varning: kan inte ta bort " -#: src/userdel.c:741 src/usermod.c:994 +#: src/userdel.c:791 src/usermod.c:1000 #, c-format msgid "%s: user %s does not exist\n" msgstr "%s: användare %s finns inte\n" -#: src/userdel.c:755 src/usermod.c:1010 +#: src/userdel.c:805 src/usermod.c:1016 #, c-format msgid "%s: user %s is a NIS user\n" msgstr "%s: användare %s är en NIS-användare\n" -#: src/userdel.c:792 +#: src/userdel.c:842 #, c-format msgid "%s: %s not owned by %s, not removing\n" msgstr "%s: %s ägs inte av %s, tar inte bort\n" -#: src/userdel.c:815 +#: src/userdel.c:865 #, c-format msgid "%s: not removing directory %s (would remove home of user %s)\n" msgstr "%s: tar inte bort katalogen %s (skulle ta bort hemkatalogen för %s)\n" -#: src/userdel.c:828 +#: src/userdel.c:878 #, c-format msgid "%s: error removing directory %s\n" msgstr "%s: fel under borttagning av katalogen %s\n" -#: src/usermod.c:317 +#: src/usermod.c:323 msgid "\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n" msgstr "\t\t[-d hem [-m]] [-s skal] [-c kommentar] [-l nytt_namn]\n" -#: src/usermod.c:323 +#: src/usermod.c:329 msgid "[-A {DEFAULT|program},... ] " msgstr "[-A {DEFAULT|program},... ] " -#: src/usermod.c:325 +#: src/usermod.c:331 #, fuzzy msgid "[-p passwd] [-L|-U] name\n" msgstr "[-p passwd] namn\n" -#: src/usermod.c:504 +#: src/usermod.c:510 #, c-format msgid "%s: out of memory in update_group\n" msgstr "%s: slut på minne i update_group\n" -#: src/usermod.c:627 +#: src/usermod.c:633 #, c-format msgid "%s: out of memory in update_gshadow\n" msgstr "%s: slut på minne i update_gshadow\n" -#: src/usermod.c:1180 +#: src/usermod.c:1186 #, c-format msgid "%s: no flags given\n" msgstr "%s: inga flaggor givna\n" -#: src/usermod.c:1187 +#: src/usermod.c:1193 #, c-format msgid "%s: shadow passwords required for -e and -f\n" msgstr "%s: skugglösenord krävs för -e och -f\n" -#: src/usermod.c:1208 +#: src/usermod.c:1214 #, c-format msgid "%s: uid %ld is not unique\n" msgstr "%s: uid %ld är inte unikt\n" -#: src/usermod.c:1356 +#: src/usermod.c:1362 #, c-format msgid "%s: error deleting authentication method\n" msgstr "%s: fel under borttagning av metod för äkthetsbevisning\n" -#: src/usermod.c:1376 +#: src/usermod.c:1382 #, c-format msgid "%s: error changing authentication method\n" msgstr "%s: fel under ändring av metod för äkthetsbevisning\n" -#: src/usermod.c:1393 +#: src/usermod.c:1399 #, c-format msgid "%s: error changing password entry\n" msgstr "%s: fel under ändring av lösenordsnotering\n" -#: src/usermod.c:1399 +#: src/usermod.c:1405 #, c-format msgid "%s: error removing password entry\n" msgstr "%s: fel under borttagning av lösenordsnotering\n" -#: src/usermod.c:1407 +#: src/usermod.c:1413 #, c-format msgid "%s: error adding password dbm entry\n" msgstr "%s: fel under tilläggning av dbm-lösenordsnotering\n" -#: src/usermod.c:1414 +#: src/usermod.c:1420 #, c-format msgid "%s: error removing passwd dbm entry\n" msgstr "%s: fel under borttagning av dbm-lösenordsnotering\n" -#: src/usermod.c:1431 +#: src/usermod.c:1437 #, c-format msgid "%s: error removing shadow password entry\n" msgstr "%s: fel under borttagning av skugglösenordsnotering\n" -#: src/usermod.c:1446 +#: src/usermod.c:1452 #, c-format msgid "%s: error removing shadow passwd dbm entry\n" msgstr "%s: fel under borttagning av dbm-skugglösenordsnotering\n" -#: src/usermod.c:1477 +#: src/usermod.c:1483 #, c-format msgid "%s: directory %s exists\n" msgstr "%s: katalogen %s existerar\n" -#: src/usermod.c:1484 +#: src/usermod.c:1490 #, c-format msgid "%s: can't create %s\n" msgstr "%s: kan inte skapa %s\n" -#: src/usermod.c:1490 +#: src/usermod.c:1496 #, c-format msgid "%s: can't chown %s\n" msgstr "%s: kan inte byta ägare på %s\n" -#: src/usermod.c:1506 +#: src/usermod.c:1512 #, c-format msgid "%s: cannot rename directory %s to %s\n" msgstr "%s: kan inte byta namn på katalogen %s till %s\n" #. better leave it alone -#: src/usermod.c:1603 +#: src/usermod.c:1609 #, c-format msgid "%s: warning: %s not owned by %s\n" msgstr "%s: varning: %s ägs inte av %s\n" -#: src/usermod.c:1609 +#: src/usermod.c:1615 msgid "failed to change mailbox owner" msgstr "kunde inte byta ägare av brevlådan" -#: src/usermod.c:1616 +#: src/usermod.c:1622 msgid "failed to rename mailbox" msgstr "kunde inte byta namn på brevlådan" diff --git a/redhat/Makefile.am b/redhat/Makefile.am deleted file mode 100644 index 4e9ac2fa..00000000 --- a/redhat/Makefile.am +++ /dev/null @@ -1,8 +0,0 @@ -# This is a dummy Makefile.am to get automake work flawlessly, -# and also cooperate to make a distribution for `make dist' - -EXTRA_DIST = README shadow-utils.spec shadow-utils.spec.in \ - shadow-970616-fix.patch shadow-970616-glibc.patch \ - shadow-970616-rh.patch shadow-970616-utuser.patch \ - shadow-970616.login.defs shadow-970616.useradd \ - shadow-utils-970616.spec diff --git a/redhat/Makefile.in b/redhat/Makefile.in deleted file mode 100644 index 7aa97334..00000000 --- a/redhat/Makefile.in +++ /dev/null @@ -1,214 +0,0 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am - -# Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -# This is a dummy Makefile.am to get automake work flawlessly, -# and also cooperate to make a distribution for `make dist' - - -SHELL = @SHELL@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -prefix = @prefix@ -exec_prefix = @exec_prefix@ - -bindir = @bindir@ -sbindir = @sbindir@ -libexecdir = @libexecdir@ -datadir = @datadir@ -sysconfdir = @sysconfdir@ -sharedstatedir = @sharedstatedir@ -localstatedir = @localstatedir@ -libdir = @libdir@ -infodir = @infodir@ -mandir = @mandir@ -includedir = @includedir@ -oldincludedir = /usr/include - -DESTDIR = - -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ - -top_builddir = .. - -ACLOCAL = @ACLOCAL@ -AUTOCONF = @AUTOCONF@ -AUTOMAKE = @AUTOMAKE@ -AUTOHEADER = @AUTOHEADER@ - -INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -transform = @program_transform_name@ - -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -host_alias = @host_alias@ -host_triplet = @host@ -AS = @AS@ -CATALOGS = @CATALOGS@ -CATOBJEXT = @CATOBJEXT@ -CC = @CC@ -CPP = @CPP@ -DATADIRNAME = @DATADIRNAME@ -DLLTOOL = @DLLTOOL@ -GENCAT = @GENCAT@ -GMOFILES = @GMOFILES@ -GMSGFMT = @GMSGFMT@ -GT_NO = @GT_NO@ -GT_YES = @GT_YES@ -INCLUDE_LOCALE_H = @INCLUDE_LOCALE_H@ -INSTOBJEXT = @INSTOBJEXT@ -INTLDEPS = @INTLDEPS@ -INTLLIBS = @INTLLIBS@ -INTLOBJS = @INTLOBJS@ -LD = @LD@ -LIBCRACK = @LIBCRACK@ -LIBCRYPT = @LIBCRYPT@ -LIBMD = @LIBMD@ -LIBPAM = @LIBPAM@ -LIBSKEY = @LIBSKEY@ -LIBTCFS = @LIBTCFS@ -LIBTOOL = @LIBTOOL@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -MAKEINFO = @MAKEINFO@ -MKINSTALLDIRS = @MKINSTALLDIRS@ -MSGFMT = @MSGFMT@ -NM = @NM@ -OBJDUMP = @OBJDUMP@ -PACKAGE = @PACKAGE@ -POFILES = @POFILES@ -POSUB = @POSUB@ -RANLIB = @RANLIB@ -U = @U@ -USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@ -USE_NLS = @USE_NLS@ -VERSION = @VERSION@ -YACC = @YACC@ -l = @l@ - -EXTRA_DIST = README shadow-utils.spec shadow-utils.spec.in shadow-970616-fix.patch shadow-970616-glibc.patch shadow-970616-rh.patch shadow-970616-utuser.patch shadow-970616.login.defs shadow-970616.useradd shadow-utils-970616.spec - -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = ../config.h -CONFIG_CLEAN_FILES = shadow-utils.spec -DIST_COMMON = README Makefile.am Makefile.in shadow-utils.spec.in - - -DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) - -TAR = tar -GZIP_ENV = --best -all: all-redirect -.SUFFIXES: -$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) - cd $(top_srcdir) && $(AUTOMAKE) --gnu --include-deps redhat/Makefile - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status - -shadow-utils.spec: $(top_builddir)/config.status shadow-utils.spec.in - cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status -tags: TAGS -TAGS: - - -distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) - -subdir = redhat - -distdir: $(DISTFILES) - @for file in $(DISTFILES); do \ - d=$(srcdir); \ - if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ - else \ - test -f $(distdir)/$$file \ - || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ - || cp -p $$d/$$file $(distdir)/$$file || :; \ - fi; \ - done -info-am: -info: info-am -dvi-am: -dvi: dvi-am -check-am: all-am -check: check-am -installcheck-am: -installcheck: installcheck-am -install-exec-am: -install-exec: install-exec-am - -install-data-am: -install-data: install-data-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am -install: install-am -uninstall-am: -uninstall: uninstall-am -all-am: Makefile -all-redirect: all-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install -installdirs: - - -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -rm -f Makefile $(CONFIG_CLEAN_FILES) - -rm -f config.cache config.log stamp-h stamp-h[0-9]* - -maintainer-clean-generic: -mostlyclean-am: mostlyclean-generic - -mostlyclean: mostlyclean-am - -clean-am: clean-generic mostlyclean-am - -clean: clean-am - -distclean-am: distclean-generic clean-am - -rm -f libtool - -distclean: distclean-am - -maintainer-clean-am: maintainer-clean-generic distclean-am - @echo "This command is intended for maintainers to use;" - @echo "it deletes files that may require special tools to rebuild." - -maintainer-clean: maintainer-clean-am - -.PHONY: tags distdir info-am info dvi-am dvi check check-am \ -installcheck-am installcheck install-exec-am install-exec \ -install-data-am install-data install-am install uninstall-am uninstall \ -all-redirect all-am all installdirs mostlyclean-generic \ -distclean-generic clean-generic maintainer-clean-generic clean \ -mostlyclean distclean maintainer-clean - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/redhat/README b/redhat/README deleted file mode 100644 index 96739e7f..00000000 --- a/redhat/README +++ /dev/null @@ -1,29 +0,0 @@ -Included here are the patches from the shadow-utils-970616-11.src.rpm -(RedHat 5.0 updates). I'd like to make it possible to build binary -packages for all Linux distributions "out of the box" from the same -upstream sources. This needs more work for RedHat 5.0, and I only have -RedHat 4.2 (hint hint). If you have any suggestions regarding this -package, please contact me. Perhaps the necessary changes can be -included in the standard sources, so that everything can be build with -one simple command (rpm -ta shadow-xxxxxx.tar.gz). - -One suggestion for the shadow-utils-970616-11 patch: instead of adding -new (sometimes quite distribution-specific) options to useradd (and -symlinking adduser -> useradd), I'd suggest to use a program or script -called "adduser" that implements the distribution-specific UID/GID -allocation etc. and runs useradd to do all the dirty work (modifying -password files etc.). Also, please don't change the default behaviour -of useradd, which is to create the home directory only if the -m option -is specified). I'd like to keep useradd simple, and compatible with -other implementations (the user* and group* commands are quite similar -to commands with the same names found on many commercial UN*X systems). - -I'd suggest to take a look at the adduser-3.x package from the Debian -distribution. It's a perl script, which shouldn't be too hard to modify -to suit the requirements of Red Hat, or any other Linux distribution. -It runs programs from the shadow suite to do the actual password file -modifications, is reasonably user friendly, and configurable. - -Comments? - ---marekm diff --git a/redhat/shadow-970616-fix.patch b/redhat/shadow-970616-fix.patch deleted file mode 100644 index 341f11a4..00000000 --- a/redhat/shadow-970616-fix.patch +++ /dev/null @@ -1,256 +0,0 @@ ---- shadow-970616/libmisc/Makefile.in.fix Sun Jun 15 20:05:05 1997 -+++ shadow-970616/libmisc/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -99,13 +99,6 @@ - - default: all - -- --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status -- - mostlyclean-noinstLIBRARIES: - - clean-noinstLIBRARIES: ---- shadow-970616/man/Makefile.in.fix Sun Jun 15 20:05:05 1997 -+++ shadow-970616/man/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -72,12 +72,6 @@ - TAR = tar - default: all - -- --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - install-man: $(MANS) - $(mkinstalldirs) $(mandir)/man8 - $(mkinstalldirs) $(mandir)/man1 ---- shadow-970616/lib/Makefile.in.fix Sun Jun 15 20:05:06 1997 -+++ shadow-970616/lib/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -123,12 +123,6 @@ - default: all - - --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status -- - mostlyclean-noinstLIBRARIES: - - clean-noinstLIBRARIES: ---- shadow-970616/src/useradd.c.fix Tue Dec 30 14:09:29 1997 -+++ shadow-970616/src/useradd.c Tue Dec 30 14:37:22 1997 -@@ -570,8 +570,7 @@ - */ - - static int --get_groups(list) -- char *list; -+get_groups(char *list) - { - char *cp; - const struct group *grp; -@@ -606,7 +605,7 @@ - * GID values, otherwise the string is looked up as is. - */ - -- grp = getgr_nam_gid(*list); -+ grp = getgr_nam_gid(list); - - /* - * There must be a match, either by GID value or by -@@ -1401,25 +1400,6 @@ - Prog); - fail_exit (1); - } --#endif -- if (do_grp_update) { -- if (! gr_close ()) { -- fprintf (stderr, "%s: cannot rewrite group file\n", -- Prog); -- fail_exit (1); -- } -- (void) gr_unlock (); --#ifdef SHADOWGRP -- if (is_shadow_grp && ! sgr_close ()) { -- fprintf (stderr, "%s: cannot rewrite shadow group file\n", -- Prog); -- fail_exit (1); -- } -- if (is_shadow_grp) -- sgr_unlock (); --#endif -- } --#ifdef SHADOWPWD - if (is_shadow_pwd) - spw_unlock (); - #endif -@@ -1758,7 +1738,6 @@ - /* - * Write out the new group file entry. - */ -- - if (! gr_update (&grp)) { - fprintf (stderr, "%s: error adding new group entry\n", Prog); - fail_exit (10); -@@ -1801,6 +1780,8 @@ - #endif /* SHADOWGRP */ - SYSLOG((LOG_INFO, "new group: name=%s, gid=%d\n", - user_name, user_gid)); -+ /* we need to remeber we have to close the group file... */ -+ do_grp_update++; - } - - /* ---- shadow-970616/src/Makefile.in.fix Sun Jun 15 20:05:08 1997 -+++ shadow-970616/src/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -251,12 +251,6 @@ - default: all - - --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status -- - mostlyclean-usbinPROGRAMS: - - clean-usbinPROGRAMS: ---- shadow-970616/contrib/Makefile.in.fix Sun Jun 15 20:05:09 1997 -+++ shadow-970616/contrib/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -60,12 +60,6 @@ - TAR = tar - default: all - -- --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - tags: TAGS - TAGS: - ---- shadow-970616/debian/Makefile.in.fix Sun Jun 15 20:05:09 1997 -+++ shadow-970616/debian/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -64,12 +64,6 @@ - TAR = tar - default: all - -- --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - tags: TAGS - TAGS: - ---- shadow-970616/doc/Makefile.in.fix Sun Jun 15 20:05:09 1997 -+++ shadow-970616/doc/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -61,12 +61,6 @@ - TAR = tar - default: all - -- --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - tags: TAGS - TAGS: - ---- shadow-970616/etc/Makefile.in.fix Sun Jun 15 20:05:09 1997 -+++ shadow-970616/etc/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -60,12 +60,6 @@ - TAR = tar - default: all - -- --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - tags: TAGS - TAGS: - ---- shadow-970616/old/Makefile.in.fix Sun Jun 15 20:05:10 1997 -+++ shadow-970616/old/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -61,12 +61,6 @@ - TAR = tar - default: all - -- --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - tags: TAGS - TAGS: - ---- shadow-970616/shlib/Makefile.in.fix Sun Jun 15 20:05:10 1997 -+++ shadow-970616/shlib/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -60,11 +60,6 @@ - default: all - - --$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in -- cd $(top_srcdir) && automake $(subdir)/Makefile -- --Makefile: $(top_builddir)/config.status Makefile.in -- cd $(top_builddir) && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - tags: TAGS - TAGS: - ---- shadow-970616/configure.in.fix Sun Jun 15 19:42:47 1997 -+++ shadow-970616/configure.in Tue Dec 30 14:09:29 1997 -@@ -38,7 +38,7 @@ - AC_CHECK_HEADERS(gshadow.h shadow.h lastlog.h) - - AC_EGREP_HEADER(ut_host, utmp.h, AC_DEFINE(UT_HOST)) --AC_EGREP_HEADER(ut_name, utmp.h, AC_DEFINE(UT_USER, ut_name)) -+AC_EGREP_HEADER(ut_user, utmp.h, AC_DEFINE(UT_USER, ut_user)) - AC_EGREP_HEADER(ll_host, lastlog.h, AC_DEFINE(HAVE_LL_HOST)) - - dnl Checks for typedefs, structures, and compiler characteristics. ---- shadow-970616/Makefile.in.fix Sun Jun 15 20:05:08 1997 -+++ shadow-970616/Makefile.in Tue Dec 30 14:09:29 1997 -@@ -64,28 +64,6 @@ - TAR = tar - default: all - -- --$(srcdir)/Makefile.in: Makefile.am configure.in -- cd $(srcdir) && automake Makefile -- --# For an explanation of the following Makefile rules, see node --# `Automatic Remaking' in GNU Autoconf documentation. --Makefile: Makefile.in config.status -- CONFIG_FILES=$@ CONFIG_HEADERS= ./config.status --config.status: configure -- ./config.status --recheck --$(srcdir)/configure: configure.in $(ACLOCAL) $(CONFIGURE_DEPENDENCIES) -- cd $(srcdir) && autoconf -- --$(CONFIG_HEADER): stamp-h --stamp-h: $(CONFIG_HEADER_IN) config.status -- CONFIG_FILES= CONFIG_HEADERS=$(CONFIG_HEADER) ./config.status -- @echo timestamp > stamp-h --$(srcdir)/$(CONFIG_HEADER_IN): stamp-h.in --$(srcdir)/stamp-h.in: configure.in $(ACLOCAL) $(ACCONFIG) $(CONFIG_TOP) $(CONFIG_BOT) -- cd $(srcdir) && autoheader -- echo timestamp > $(srcdir)/stamp-h.in -- - # This directory's subdirectories are mostly independent; you can cd - # into them and run `make' without going through this Makefile. - # To change the values of `make' variables: instead of editing Makefiles, diff --git a/redhat/shadow-970616-glibc.patch b/redhat/shadow-970616-glibc.patch deleted file mode 100644 index ecd7039e..00000000 --- a/redhat/shadow-970616-glibc.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- shadow-970616/libmisc/strtoday.c.ewt Thu Nov 13 19:25:25 1997 -+++ shadow-970616/libmisc/strtoday.c Thu Nov 13 19:27:57 1997 -@@ -28,7 +28,7 @@ - */ - - #if !defined(__GLIBC__) --#define _XOPEN_SOURCE -+#define _XOPEN_SOURCE 500 - #endif - - #include diff --git a/redhat/shadow-970616-rh.patch b/redhat/shadow-970616-rh.patch deleted file mode 100644 index 3b3e34d3..00000000 --- a/redhat/shadow-970616-rh.patch +++ /dev/null @@ -1,1242 +0,0 @@ ---- shadow-970616/man/shadowconfig.8.rh Thu May 1 14:18:17 1997 -+++ shadow-970616/man/shadowconfig.8 Fri Dec 12 15:36:29 1997 -@@ -14,7 +14,3 @@ - will print an error message and exit with a nonzero code if it finds - anything awry. If that happens, you should correct the error and run - it again. --.PP --Read --.I /usr/doc/passwd/README.debian.gz --for a brief introduction to shadow passwords and related features. ---- shadow-970616/man/useradd.8.rh Thu May 1 19:15:12 1997 -+++ shadow-970616/man/useradd.8 Fri Dec 12 15:36:29 1997 -@@ -50,13 +50,15 @@ - .RB [ -G - .IR group [,...]] - .RB [ -m " [" -k --.IR skeleton_dir ]] -+.IR skeleton_dir ] " |" " " -M ] - .RB [ -s - .IR shell ] - .br - .RB [ -u - .IR uid " [" - .BR -o ]] -+.RB [ -n ] -+.RB [ -r ] - .I login - .TP 8 - .B useradd -@@ -81,6 +83,8 @@ - The new user account will be entered into the system files as needed, - the home directory will be created, and initial files copied, depending - on the command line options. -+The version provided with Red Hat Linux will create a group for each -+user added to the system, unless \fB-n\fR option is given. - The options which apply to the \fBuseradd\fR command are - .IP "\fB-A {\fImethod\fR|\fBDEFAULT\fR},..." - The value of the user's authentication method. -@@ -128,6 +132,21 @@ - option. - The default is to not create the directory and to not copy any - files. -+.IP \fB-M\fR -+The user home directory will not be created, even if the system -+wide settings from \fI/etc/login.defs\fR is to create home dirs. -+.IP \fB-n\fR -+A group having the same name as the user being added to the system -+will be created by default. This option will turn off this Red Hat -+Linux specific behavior. -+.IP \fB-r\fR -+This flag is used to create a system account. That is, an user with an -+UID lower than value of UID_MIN defined in \fI/etc/login.defs\fR. Note -+that \fBuseradd\fR will not create a home directory for such an user, -+regardless of the default setting in \fI/etc/login.defs\fR. -+You have to specify \fB-m\fR option if you want a home directory -+for a system account to be created. -+This is an option added by Red Hat. - .IP "\fB-s \fIshell\fR" - The name of the user's login shell. - The default is to leave this field blank, which causes the system -@@ -168,19 +187,24 @@ - .SH NOTES - The system administrator is responsible for placing the default - user files in the \fI/etc/skel\fR directory. -+.br -+This version of useradd was modified by Red Hat to suit Red Hat -+user/group convention. - .SH CAVEATS - You may not add a user to an NIS group. - This must be performed on the NIS server. - .SH FILES --/etc/passwd \- user account information -+\fB/etc/passwd\fR \- user account information -+.br -+\fB/etc/shadow\fR \- secure user account information - .br --/etc/shadow \- secure user account information -+\fB/etc/group\fR \- group information - .br --/etc/group \- group information -+\fB/etc/default/useradd\fR \- default information - .br --/etc/default/useradd \- default information -+\fB/etc/login.defs\fR \- system-wide settings - .br --/etc/skel \- directory containing default files -+\fB/etc/skel\fR \- directory containing default files - .SH SEE ALSO - .BR chfn (1), - .BR chsh (1), ---- shadow-970616/man/groupadd.8.rh Thu May 1 19:15:06 1997 -+++ shadow-970616/man/groupadd.8 Fri Dec 12 15:36:29 1997 -@@ -32,7 +32,7 @@ - groupadd \- Create a new group - .SH SYNOPSIS - .B groupadd --[\fB-g\fI gid \fR[\fB-o\fR]] -+[\fB-g\fI gid \fR[\fB-o\fR]] [\fB-r\fR] [\fB-f\fR] - .I group - .SH DESCRIPTION - The \fBgroupadd\fR command -@@ -44,9 +44,29 @@ - The numerical value of the group's ID. - This value must be unique, unless the \fB-o\fR option is used. - The value must be non-negative. --The default is to use the smallest ID value greater than 99 and -+The default is to use the smallest ID value greater than 500 and - greater than every other group. --Values between 0 and 99 are typically reserved for system accounts. -+Values between 0 and 499 are typically reserved for \fIsystem accounts\fR. -+.IP \fB-r\fR -+This flag instructs \fBgroupadd\fR to add a \fIsystem -+account\fR. First available \fIgid\fR lower than 499 will be -+automatically selected unless \fB-g\fR option is given also on the -+command line. -+.br -+This is an option added by Red Hat Software. -+.IP \fB-f\fR -+This is \fIforce\fR flag. This will stop \fBgroupadd\fR exit with -+error when the group about to be added already exists on the -+system. If that is the case, the group won't be altered (or added -+again, for that matter). -+.br -+This option also modifies the way \fB-g\fR option works. When you -+request a \fIgid\fR that it is not unique and you don't give \fB-o\fR -+option too, the group creation will fall back to the standard behavior -+(adding a group as neither \fB-g\fR or \fB-o\fR options were -+specified). -+.br -+This is an option added by Red Hat Software. - .SH FILES - /etc/group \- group account information - .br ---- shadow-970616/lib/getdef.c.rh Thu May 1 19:14:40 1997 -+++ shadow-970616/lib/getdef.c Fri Dec 12 15:36:29 1997 -@@ -61,6 +61,7 @@ - #ifdef HAVE_LIBCRACK - { "CRACKLIB_DICTPATH", NULL }, - #endif -+ { "CREATE_HOME", NULL }, - { "DEFAULT_HOME", NULL }, - { "DIALUPS_CHECK_ENAB", NULL }, - { "ENVIRON_FILE", NULL }, -@@ -171,7 +172,7 @@ - if ((d = def_find(item)) == NULL || d->value == NULL) - return 0; - -- return (strcmp(d->value, "yes") == 0); -+ return (strcasecmp(d->value, "yes") == 0); - } - - ---- shadow-970616/src/useradd.c.rh Sun Jun 1 01:25:40 1997 -+++ shadow-970616/src/useradd.c Fri Dec 12 15:58:04 1997 -@@ -60,7 +60,7 @@ - #define USER_DEFAULTS_FILE "/etc/default/useradd" - #define NEW_USER_FILE "/etc/default/nuaddXXXXXX" - #endif -- -+ - /* - * Needed for MkLinux DR1/2/2.1 - J. - */ -@@ -71,22 +71,22 @@ - /* - * These defaults are used if there is no defaults file. - */ --static gid_t def_group = 1; -+static gid_t def_group = 100; - static char *def_gname = "other"; - static char *def_home = "/home"; --static char *def_shell = ""; -+static char *def_shell = "/dev/null"; - static char *def_template = SKEL_DIR; - #ifdef SHADOWPWD - static long def_inactive = -1; - static char *def_expire = ""; - #endif - --static char def_file[] = USER_DEFAULTS_FILE; -+static char def_file[] = USER_DEFAULTS_FILE; - - #define VALID(s) (strcspn (s, ":\n") == strlen (s)) - - static char *user_name = ""; --static char *user_pass = "!"; -+static char *user_pass = "!!"; - static uid_t user_id; - static gid_t user_gid; - static char *user_comment = ""; -@@ -114,10 +114,13 @@ - sflg = 0, /* shell program for new account */ - cflg = 0, /* comment (GECOS) field for new account */ - mflg = 0, /* create user's home directory if it doesn't exist */ -- kflg = 0, /* specify a directory to fill new user directory */ -+ Mflg = 0, /* do NOT create user's home directory no matter what */ -+ kflg = 0, /* specify a directory to fill new user directory */ - fflg = 0, /* days until account with expired password is locked */ - eflg = 0, /* days since 1970-01-01 when account is locked */ -- Dflg = 0; /* set/show new user default values */ -+ Dflg = 0, /* set/show new user default values */ -+ nflg = 0, /* do not add a group for this user */ -+ rflg = 0; /* create a system account */ - - #ifdef AUTH_METHODS - static int Aflg = 0; /* specify authentication method for user */ -@@ -168,6 +171,7 @@ - * exit status values - */ - #define E_SUCCESS 0 /* success */ -+#define E_LOCKING 1 /* locking error */ - #define E_USAGE 2 /* bad command syntax */ - #define E_BAD_ARG 3 /* invalid argument to option */ - #define E_UID_IN_USE 4 /* uid already in use (and no -o) */ -@@ -177,19 +181,19 @@ - #define E_HOMEDIR 12 /* can't create home directory */ - - #ifdef SVR4 --#define DGROUP "defgroup=" --#define HOME "defparent=" --#define SHELL "defshell=" --#define INACT "definact=" --#define EXPIRE "defexpire=" --#define SKEL "defskel=" -+#define DGROUP "defgroup=" -+#define HOME "defparent=" -+#define SHELL "defshell=" -+#define INACT "definact=" -+#define EXPIRE "defexpire=" -+#define SKEL "defskel=" - #else --#define DGROUP "GROUP=" --#define HOME "HOME=" --#define SHELL "SHELL=" --#define INACT "INACTIVE=" --#define EXPIRE "EXPIRE=" --#define SKEL "SKEL=" -+#define DGROUP "GROUP=" -+#define HOME "HOME=" -+#define SHELL "SHELL=" -+#define INACT "INACTIVE=" -+#define EXPIRE "EXPIRE=" -+#define SKEL "SKEL=" - #endif - - /* -@@ -679,7 +683,7 @@ - #ifdef AUTH_METHODS - fprintf(stderr, "[-A program] "); - #endif -- fprintf(stderr, "[-p passwd] name\n"); -+ fprintf(stderr, "[-p passwd] [-n] [-r] name\n"); - - fprintf(stderr, " %s\t-D [-g group] [-b base] [-s shell]" - #ifdef SHADOWPWD -@@ -771,153 +775,129 @@ - static void - grp_update() - { -- const struct group *grp; -- struct group *ngrp; -+ const struct group *grp; -+ struct group *ngrp; - #ifdef SHADOWGRP -- const struct sgrp *sgrp; -- struct sgrp *nsgrp; -+ const struct sgrp *sgrp; -+ struct sgrp *nsgrp; - #endif - -- /* -- * Lock and open the group file. This will load all of the group -- * entries. -- */ -+ /* -+ * Scan through the entire group file looking for the groups that -+ * the user is a member of. -+ */ - -- if (! gr_lock ()) { -- fprintf (stderr, "%s: error locking group file\n", Prog); -- exit (1); -- } -- if (! gr_open (O_RDWR)) { -- fprintf (stderr, "%s: error opening group file\n", Prog); -- exit (1); -- } --#ifdef SHADOWGRP -- if (is_shadow_grp && ! sgr_lock ()) { -- fprintf (stderr, "%s: error locking shadow group file\n", Prog); -- exit (1); -- } -- if (is_shadow_grp && ! sgr_open (O_RDWR)) { -- fprintf (stderr, "%s: error opening shadow group file\n", Prog); -- exit (1); -- } --#endif -+ for (gr_rewind (), grp = gr_next ();grp;grp = gr_next ()) { - - /* -- * Scan through the entire group file looking for the groups that -- * the user is a member of. -+ * See if the user specified this group as one of their -+ * concurrent groups. - */ - -- for (gr_rewind (), grp = gr_next ();grp;grp = gr_next ()) { -+ if (!is_on_list(user_groups, grp->gr_name)) -+ continue; - -- /* -- * See if the user specified this group as one of their -- * concurrent groups. -- */ -- -- if (!is_on_list(user_groups, grp->gr_name)) -- continue; -- -- /* -- * Make a copy - gr_update() will free() everything -- * from the old entry, and we need it later. -- */ -+ /* -+ * Make a copy - gr_update() will free() everything -+ * from the old entry, and we need it later. -+ */ - -- ngrp = __gr_dup(grp); -- if (!ngrp) { -- exit(13); /* XXX */ -- } -+ ngrp = __gr_dup(grp); -+ if (!ngrp) { -+ exit(13); /* XXX */ -+ } - -- /* -- * Add the username to the list of group members and -- * update the group entry to reflect the change. -- */ -+ /* -+ * Add the username to the list of group members and -+ * update the group entry to reflect the change. -+ */ - -- ngrp->gr_mem = add_list (ngrp->gr_mem, user_name); -- if (! gr_update (ngrp)) { -- fprintf (stderr, "%s: error adding new group entry\n", -- Prog); -- fail_exit (1); -- } -+ ngrp->gr_mem = add_list (ngrp->gr_mem, user_name); -+ if (! gr_update (ngrp)) { -+ fprintf (stderr, "%s: error adding new group entry\n", -+ Prog); -+ fail_exit (1); -+ } - #ifdef NDBM -- /* -- * Update the DBM group file with the new entry as well. -- */ -+ /* -+ * Update the DBM group file with the new entry as well. -+ */ - -- if (! gr_dbm_update (ngrp)) { -- fprintf (stderr, "%s: cannot add new dbm group entry\n", -- Prog); -- fail_exit (1); -- } else -- gr_dbm_added++; --#endif -- SYSLOG((LOG_INFO, "add `%s' to group `%s'\n", -- user_name, ngrp->gr_name)); -- } -+ if (! gr_dbm_update (ngrp)) { -+ fprintf (stderr, "%s: cannot add new dbm group entry\n", -+ Prog); -+ fail_exit (1); -+ } else -+ gr_dbm_added++; -+#endif -+ SYSLOG((LOG_INFO, "add `%s' to group `%s'\n", -+ user_name, ngrp->gr_name)); -+ } - #ifdef NDBM -- endgrent (); -+ endgrent (); - #endif - - #ifdef SHADOWGRP -- if (!is_shadow_grp) -- return; -+ if (!is_shadow_grp) -+ return; - -- /* -- * Scan through the entire shadow group file looking for the groups -- * that the user is a member of. The administrative list isn't -- * modified. -- */ -+ /* -+ * Scan through the entire shadow group file looking for the groups -+ * that the user is a member of. The administrative list isn't -+ * modified. -+ */ - -- for (sgr_rewind (), sgrp = sgr_next ();sgrp;sgrp = sgr_next ()) { -+ for (sgr_rewind (), sgrp = sgr_next ();sgrp;sgrp = sgr_next ()) { - -- /* -- * See if the user specified this group as one of their -- * concurrent groups. -- */ -+ /* -+ * See if the user specified this group as one of their -+ * concurrent groups. -+ */ - -- if (!gr_locate(sgrp->sg_name)) -- continue; -+ if (!gr_locate(sgrp->sg_name)) -+ continue; - -- if (!is_on_list(user_groups, sgrp->sg_name)) -- continue; -+ if (!is_on_list(user_groups, sgrp->sg_name)) -+ continue; - -- /* -- * Make a copy - sgr_update() will free() everything -- * from the old entry, and we need it later. -- */ -+ /* -+ * Make a copy - sgr_update() will free() everything -+ * from the old entry, and we need it later. -+ */ - -- nsgrp = __sgr_dup(sgrp); -- if (!nsgrp) { -- exit(13); /* XXX */ -- } -+ nsgrp = __sgr_dup(sgrp); -+ if (!nsgrp) { -+ exit(13); /* XXX */ -+ } - -- /* -- * Add the username to the list of group members and -- * update the group entry to reflect the change. -- */ -+ /* -+ * Add the username to the list of group members and -+ * update the group entry to reflect the change. -+ */ - -- nsgrp->sg_mem = add_list (nsgrp->sg_mem, user_name); -- if (! sgr_update (nsgrp)) { -- fprintf (stderr, "%s: error adding new group entry\n", -- Prog); -- fail_exit (1); -- } -+ nsgrp->sg_mem = add_list (nsgrp->sg_mem, user_name); -+ if (! sgr_update (nsgrp)) { -+ fprintf (stderr, "%s: error adding new group entry\n", -+ Prog); -+ fail_exit (1); -+ } - #ifdef NDBM -- /* -- * Update the DBM group file with the new entry as well. -- */ -+ /* -+ * Update the DBM group file with the new entry as well. -+ */ - -- if (! sg_dbm_update (nsgrp)) { -- fprintf (stderr, "%s: cannot add new dbm group entry\n", -- Prog); -- fail_exit (1); -- } else -- sg_dbm_added++; -+ if (! sg_dbm_update (nsgrp)) { -+ fprintf (stderr, "%s: cannot add new dbm group entry\n", -+ Prog); -+ fail_exit (1); -+ } else -+ sg_dbm_added++; - #endif /* NDBM */ -- SYSLOG((LOG_INFO, "add `%s' to shadow group `%s'\n", -- user_name, nsgrp->sg_name)); -- } -+ SYSLOG((LOG_INFO, "add `%s' to shadow group `%s'\n", -+ user_name, nsgrp->sg_name)); -+ } - #ifdef NDBM -- endsgent (); -+ endsgent (); - #endif /* NDBM */ - #endif /* SHADOWGRP */ - } -@@ -936,8 +916,13 @@ - const struct passwd *pwd; - uid_t uid_min, uid_max; - -- uid_min = getdef_num("UID_MIN", 100); -- uid_max = getdef_num("UID_MAX", 60000); -+ if (!rflg) { -+ uid_min = getdef_num("UID_MIN", 500); -+ uid_max = getdef_num("UID_MAX", 60000); -+ } else { -+ uid_min = 1; -+ uid_max = 499; -+ } - - /* - * Start with some UID value if the user didn't provide us with -@@ -1003,6 +988,88 @@ - } - } - -+/* -+ * find_new_gid - find the next available GID -+ * -+ * find_new_gid() locates the next highest unused GID in the group -+ * file, or checks the given group ID against the existing ones for -+ * uniqueness. -+ */ -+ -+static void -+find_new_gid() -+{ -+ const struct group *grp; -+ gid_t gid_min, gid_max; -+ -+ if (!rflg) { -+ gid_min = getdef_num("GID_MIN", 500); -+ gid_max = getdef_num("GID_MAX", 60000); -+ } else { -+ gid_min = 1; -+ gid_max = 499; -+ } -+ -+ /* -+ * Start with some GID value if the user didn't provide us with -+ * one already. -+ */ -+ -+ user_gid = gid_min; -+ -+ /* -+ * Search the entire group file, either looking for this -+ * GID (if the user specified one with -g) or looking for the -+ * largest unused value. -+ */ -+ -+#ifdef NO_GETGRENT -+ gr_rewind(); -+ while ((grp = gr_next())) -+#else -+ setgrent(); -+ while ((grp = getgrent())) -+#endif -+ { -+ if (strcmp(user_name, grp->gr_name) == 0) { -+ user_gid = grp->gr_gid; -+ return; -+ } -+ if (grp->gr_gid >= user_gid) { -+ if (grp->gr_gid > gid_max) -+ continue; -+ user_gid = grp->gr_gid + 1; -+ } -+ } -+#ifndef NO_GETGRENT /* RH Linux does have this, so ... */ -+ /* A quick test gets here: if the UID is available -+ * as a GID, go ahead and use it */ -+ if (!getgrgid(user_id)) { -+ user_gid = user_id; -+ return; -+ } -+#endif -+ if (user_gid == gid_max + 1) { -+ for (user_gid = gid_min; user_gid < gid_max; user_gid++) { -+#ifdef NO_GETGRENT -+ gr_rewind(); -+ while ((grp = gr_next()) && grp->gr_gid != user_gid) -+ ; -+ if (!grp) -+ break; -+#else -+ if (!getgrgid(user_gid)) -+ break; -+#endif -+ } -+ if (user_gid == gid_max) { -+ fprintf(stderr, "%s: can't get unique gid (run out of GIDs)\n", -+ Prog); -+ fail_exit(4); -+ } -+ } -+} -+ - #ifdef AUTH_METHODS - /* - * convert_auth - convert the argument list to a authentication list -@@ -1099,9 +1166,9 @@ - int arg; - - #ifdef SHADOWPWD --#define FLAGS "A:Du:og:G:d:s:c:mk:p:f:e:b:" -+#define FLAGS "A:Du:og:G:d:s:c:mMk:p:f:e:b:nr" - #else --#define FLAGS "A:Du:og:G:d:s:c:mk:p:b:" -+#define FLAGS "A:Du:og:G:d:s:c:mMk:p:b:nr" - #endif - while ((arg = getopt(argc, argv, FLAGS)) != EOF) { - #undef FLAGS -@@ -1251,6 +1318,15 @@ - user_id = get_number(optarg); - uflg++; - break; -+ case 'n': -+ nflg++; -+ break; -+ case 'r': -+ rflg++; -+ break; -+ case 'M': -+ Mflg++; -+ break; - default: - usage (); - } -@@ -1261,9 +1337,12 @@ - * Certain options are only valid in combination with others. - * Check it here so that they can be specified in any order. - */ -- if ((oflg && !uflg) || (kflg && !mflg)) -+ if (kflg && !mflg) - usage(); - -+ if (mflg && Mflg) /* the admin is not decided .. create or not ? */ -+ usage(); -+ - /* - * Either -D or username is required. Defaults can be set with -D - * for the -b, -e, -f, -g, -s options only. -@@ -1312,39 +1391,53 @@ - static void - close_files() - { -- if (! pw_close ()) { -- fprintf (stderr, "%s: cannot rewrite password file\n", Prog); -- fail_exit (1); -- } -+ if (! pw_close ()) { -+ fprintf (stderr, "%s: cannot rewrite password file\n", Prog); -+ fail_exit (1); -+ } - #ifdef SHADOWPWD -- if (is_shadow_pwd && ! spw_close ()) { -- fprintf (stderr, "%s: cannot rewrite shadow password file\n", -- Prog); -- fail_exit (1); -+ if (is_shadow_pwd && ! spw_close ()) { -+ fprintf (stderr, "%s: cannot rewrite shadow password file\n", -+ Prog); -+ fail_exit (1); -+ } -+#endif -+ if (do_grp_update) { -+ if (! gr_close ()) { -+ fprintf (stderr, "%s: cannot rewrite group file\n", -+ Prog); -+ fail_exit (1); - } --#endif -- if (do_grp_update) { -- if (! gr_close ()) { -- fprintf (stderr, "%s: cannot rewrite group file\n", -- Prog); -- fail_exit (1); -- } -- (void) gr_unlock (); -+ (void) gr_unlock (); - #ifdef SHADOWGRP -- if (is_shadow_grp && ! sgr_close ()) { -- fprintf (stderr, "%s: cannot rewrite shadow group file\n", -- Prog); -- fail_exit (1); -- } -- if (is_shadow_grp) -- sgr_unlock (); --#endif -+ if (is_shadow_grp && ! sgr_close ()) { -+ fprintf (stderr, "%s: cannot rewrite shadow group file\n", -+ Prog); -+ fail_exit (1); - } -+ if (is_shadow_grp) -+ sgr_unlock (); -+#endif -+ } - #ifdef SHADOWPWD -- if (is_shadow_pwd) -- spw_unlock (); -+ if (is_shadow_pwd) -+ spw_unlock (); - #endif -- (void) pw_unlock (); -+ (void) pw_unlock (); -+ if (! gr_close ()) { -+ fprintf (stderr, "%s: cannot rewrite group file\n", Prog); -+ fail_exit (10); -+ } -+ (void) gr_unlock (); -+#ifdef SHADOWGRP -+ if (is_shadow_grp && ! sgr_close ()) { -+ fprintf (stderr, "%s: cannot rewrite shadow group file\n", -+ Prog); -+ fail_exit (10); -+ } -+ if (is_shadow_grp) -+ sgr_unlock (); -+#endif /* SHADOWGRP */ - } - - /* -@@ -1353,27 +1446,47 @@ - * open_files() opens the two password files. - */ - --static void --open_files() -+static void open_files(void) - { -- if (!pw_lock_first()) { -- fprintf (stderr, "%s: unable to lock password file\n", Prog); -- exit (1); -- } -- if (! pw_open (O_RDWR)) { -- fprintf (stderr, "%s: unable to open password file\n", Prog); -- exit (1); -- } -+ if (!pw_lock_first()) { -+ fprintf (stderr, "%s: unable to lock password file\n", Prog); -+ exit (1); -+ } -+ if (! pw_open (O_RDWR)) { -+ fprintf (stderr, "%s: unable to open password file\n", Prog); -+ exit (1); -+ } - #ifdef SHADOWPWD -- if (is_shadow_pwd && ! spw_lock ()) { -- fprintf (stderr, "%s: cannot lock shadow password file\n", Prog); -- exit (1); -- } -- if (is_shadow_pwd && ! spw_open (O_RDWR)) { -- fprintf (stderr, "%s: cannot open shadow password file\n", Prog); -- exit (1); -- } --#endif -+ if (is_shadow_pwd && ! spw_lock ()) { -+ fprintf (stderr, "%s: cannot lock shadow password file\n", Prog); -+ exit (1); -+ } -+ if (is_shadow_pwd && ! spw_open (O_RDWR)) { -+ fprintf (stderr, "%s: cannot open shadow password file\n", Prog); -+ exit (1); -+ } -+#endif -+ if (! gr_lock ()) { -+ fprintf (stderr, "%s: unable to lock group file\n", Prog); -+ exit (E_LOCKING); -+ } -+ if (! gr_open (O_RDWR)) { -+ fprintf (stderr, "%s: unable to open group file\n", Prog); -+ fail_exit (10); -+ } -+#ifdef SHADOWGRP -+ if (is_shadow_grp && ! sgr_lock ()) { -+ fprintf (stderr, "%s: unable to lock shadow group file\n", -+ Prog); -+ fail_exit (E_LOCKING); -+ } -+ if (is_shadow_grp && ! sgr_open (O_RDWR)) { -+ fprintf (stderr, "%s: unable to open shadow group file\n", -+ Prog); -+ fail_exit (10); -+ } -+#endif /* SHADOWGRP*/ -+ - } - - -@@ -1424,9 +1537,6 @@ - struct spwd spent; - #endif - -- if (! oflg) -- find_new_uid (); -- - #ifdef AUTH_METHODS - if (Aflg) { - convert_auth(user_auth, auth_arg); -@@ -1582,6 +1692,117 @@ - } - } - -+/* a fake something */ -+static char *empty_list = NULL; -+ -+/* -+ * new_grent - initialize the values in a group file entry -+ * -+ * new_grent() takes all of the values that have been entered and -+ * fills in a (struct group) with them. -+ */ -+ -+static void -+new_grent(grent) -+ struct group *grent; -+{ -+ bzero ((char *) grent, sizeof *grent); -+ grent->gr_name = user_name; -+ grent->gr_passwd = "x"; -+ grent->gr_gid = user_gid; -+ grent->gr_mem = &empty_list; -+} -+ -+#ifdef SHADOWGRP -+/* -+ * new_sgent - initialize the values in a shadow group file entry -+ * -+ * new_sgent() takes all of the values that have been entered and -+ * fills in a (struct sgrp) with them. -+ */ -+ -+static void -+new_sgent(sgent) -+ struct sgrp *sgent; -+{ -+ bzero ((char *) sgent, sizeof *sgent); -+ sgent->sg_name = user_name; -+ sgent->sg_passwd = "!"; -+ sgent->sg_adm = &empty_list; -+ sgent->sg_mem = &empty_list; -+} -+#endif /* SHADOWGRP */ -+ -+/* -+ * grp_update - add new group file entries -+ * -+ * grp_update() writes the new records to the group files. -+ */ -+ -+static void grp_add() -+{ -+ struct group grp; -+#ifdef SHADOWGRP -+ struct sgrp sgrp; -+#endif /* SHADOWGRP */ -+ -+ /* -+ * Create the initial entries for this new group. -+ */ -+ -+ new_grent (&grp); -+#ifdef SHADOWGRP -+ new_sgent (&sgrp); -+#endif /* SHADOWGRP */ -+ -+ /* -+ * Write out the new group file entry. -+ */ -+ -+ if (! gr_update (&grp)) { -+ fprintf (stderr, "%s: error adding new group entry\n", Prog); -+ fail_exit (10); -+ } -+#ifdef NDBM -+ -+ /* -+ * Update the DBM group file with the new entry as well. -+ */ -+ -+ if (gr_dbm_present() && ! gr_dbm_update (&grp)) { -+ fprintf (stderr, "%s: cannot add new dbm group entry\n", Prog); -+ fail_exit (10); -+ } -+ endgrent (); -+#endif /* NDBM */ -+ -+#ifdef SHADOWGRP -+ -+ /* -+ * Write out the new shadow group entries as well. -+ */ -+ -+ if (is_shadow_grp && ! sgr_update (&sgrp)) { -+ fprintf (stderr, "%s: error adding new group entry\n", Prog); -+ fail_exit (10); -+ } -+#ifdef NDBM -+ -+ /* -+ * Update the DBM group file with the new entry as well. -+ */ -+ -+ if (is_shadow_grp && sg_dbm_present() && ! sg_dbm_update (&sgrp)) { -+ fprintf (stderr, "%s: cannot add new dbm group entry\n", Prog); -+ fail_exit (10); -+ } -+ endsgent (); -+#endif /* NDBM */ -+#endif /* SHADOWGRP */ -+ SYSLOG((LOG_INFO, "new group: name=%s, gid=%d\n", -+ user_name, user_gid)); -+} -+ - /* - * main - useradd command - */ -@@ -1591,76 +1812,100 @@ - int argc; - char **argv; - { -- /* -- * Get my name so that I can use it to report errors. -- */ -+ /* -+ * Get my name so that I can use it to report errors. -+ */ - -- Prog = Basename(argv[0]); -+ Prog = Basename(argv[0]); - -- openlog(Prog, LOG_PID|LOG_CONS|LOG_NOWAIT, LOG_AUTH); -+ openlog(Prog, LOG_PID|LOG_CONS|LOG_NOWAIT, LOG_AUTH); - - #ifdef SHADOWPWD -- is_shadow_pwd = (access(SHADOW_FILE, 0) == 0); -+ is_shadow_pwd = (access(SHADOW_FILE, 0) == 0); - #endif - #ifdef SHADOWGRP -- is_shadow_grp = (access(SGROUP_FILE, 0) == 0); -+ is_shadow_grp = (access(SGROUP_FILE, 0) == 0); - #endif - -- /* -- * The open routines for the NDBM files don't use read-write -- * as the mode, so we have to clue them in. -- */ -+ /* -+ * The open routines for the NDBM files don't use read-write -+ * as the mode, so we have to clue them in. -+ */ - - #ifdef NDBM -- pw_dbm_mode = O_RDWR; -+ pw_dbm_mode = O_RDWR; - #ifdef SHADOWPWD -- sp_dbm_mode = O_RDWR; -+ sp_dbm_mode = O_RDWR; - #endif -- gr_dbm_mode = O_RDWR; -+ gr_dbm_mode = O_RDWR; - #ifdef SHADOWGRP -- sg_dbm_mode = O_RDWR; -+ sg_dbm_mode = O_RDWR; - #endif - #endif -- get_defaults(); -+ get_defaults(); - -- process_flags(argc, argv); -+ process_flags(argc, argv); - -- /* -- * See if we are messing with the defaults file, or creating -- * a new user. -- */ -+ if (!rflg) /* for system accounts defaults are ignored -+ * == do not create */ -+ if (getdef_bool("CREATE_HOME")) -+ mflg = 1; - -- if (Dflg) { -- if (gflg || bflg || fflg || eflg || sflg) -- exit (set_defaults () ? 1:0); -+ if (Mflg) /* absolutely sure that we do not create home dirs */ -+ mflg = 0; -+ /* -+ * See if we are messing with the defaults file, or creating -+ * a new user. -+ */ - -- show_defaults (); -- exit (0); -- } -+ if (Dflg) { -+ if (gflg || bflg || fflg || eflg || sflg) -+ exit (set_defaults () ? 1:0); - -- /* -- * Start with a quick check to see if the user exists. -- */ -+ show_defaults (); -+ exit (0); -+ } - -- if (getpwnam(user_name)) { -- fprintf(stderr, "%s: user %s exists\n", Prog, user_name); -- exit(E_NAME_IN_USE); -- } -+ /* -+ * Start with a quick check to see if the user exists. -+ */ - -- /* -- * Do the hard stuff - open the files, create the user entries, -- * create the home directory, then close and update the files. -- */ -- -- open_files (); -+ if (getpwnam(user_name)) { -+ if (!oflg) { -+ fprintf(stderr, "%s: user %s exists\n", Prog, user_name); -+ exit(E_NAME_IN_USE); -+ } else { -+ exit (E_SUCCESS); -+ } -+ } - -- usr_update (); -+ /* -+ * Do the hard stuff - open the files, create the user entries, -+ * create the home directory, then close and update the files. -+ */ -+ -+ open_files (); -+ -+ /* first, seek for a valid uid to use for this user. -+ * We do this because later we can use the uid we found as -+ * gid too ... --rh */ -+ if (! uflg) -+ find_new_uid (); -+ -+ /* do we have to add a group for that user ? */ -+ if (! (nflg || gflg)) { -+ find_new_gid(); -+ grp_add(); -+ } -+ -+ usr_update (); -+ -+ if (mflg) { -+ create_home (); -+ copy_tree (def_template, user_home, user_id, user_gid); -+ } -+ close_files (); - -- if (mflg) { -- create_home (); -- copy_tree (def_template, user_home, user_id, user_gid); -- } -- close_files (); -- exit(E_SUCCESS); -- /*NOTREACHED*/ -+ exit(E_SUCCESS); -+ /*NOTREACHED*/ - } ---- shadow-970616/src/groupadd.c.rh Thu May 1 19:07:11 1997 -+++ shadow-970616/src/groupadd.c Fri Dec 12 15:36:29 1997 -@@ -61,6 +61,11 @@ - oflg = 0, /* permit non-unique group ID to be specified with -g */ - gflg = 0; /* ID value for the new group */ - -+/* For adding "system" accounts */ -+static int system_flag = 0; -+static int force_flag = 0; -+#define MIN_GID 10 -+ - #ifdef NDBM - extern int gr_dbm_mode; - extern int sg_dbm_mode; -@@ -75,7 +80,7 @@ - static void - usage() - { -- fprintf (stderr, "usage: groupadd [-g gid [-o]] group\n"); -+ fprintf (stderr, "usage: groupadd [-g gid [-o]] [-r] [-f] group\n"); - exit (2); - } - -@@ -202,8 +207,13 @@ - const struct group *grp; - gid_t gid_min, gid_max; - -- gid_min = getdef_num("GID_MIN", 100); -- gid_max = getdef_num("GID_MAX", 60000); -+ if (!system_flag) { -+ gid_min = getdef_num("GID_MIN", 500); -+ gid_max = getdef_num("GID_MAX", 60000); -+ } else { -+ gid_min = MIN_GID; -+ gid_max = getdef_num("GID_MIN", 499); -+ } - - /* - * Start with some GID value if the user didn't provide us with -@@ -227,16 +237,34 @@ - while ((grp = getgrent())) { - #endif - if (strcmp(group_name, grp->gr_name) == 0) { -+ if (!force_flag) { - fprintf(stderr, "%s: name %s is not unique\n", - Prog, group_name); - fail_exit(9); -+ } else { -+ fail_exit(0); -+ } - } - if (gflg && group_id == grp->gr_gid) { -+ if (!force_flag) { - fprintf(stderr, "%s: gid %ld is not unique\n", - Prog, (long) group_id); - fail_exit(4); -+ } else { -+ /* we invalidate the gflg and search again */ -+ gflg = 0; -+ if (oflg) -+ oflg = 0; -+ /* now, start at the begining... */ -+#ifdef NO_GETGRENT -+ gr_rewind(); -+#else -+ setgrent(); -+#endif -+ continue; -+ } - } -- if (! gflg && grp->gr_gid >= group_id) { -+ if (!gflg && grp->gr_gid >= group_id) { - if (grp->gr_gid > gid_max) - continue; - group_id = grp->gr_gid + 1; -@@ -298,42 +326,49 @@ - process_flags(argc, argv) - int argc; - char **argv; --{ -- extern int optind; -- extern char *optarg; -- char *end; -- int arg; -+ { -+ extern int optind; -+ extern char *optarg; -+ char *end; -+ int arg; - -- while ((arg = getopt (argc, argv, "og:")) != EOF) { -+ while ((arg = getopt (argc, argv, "og:rf")) != EOF) { - switch (arg) { -- case 'g': -- gflg++; -- if (! isdigit (optarg[0])) -- usage (); -- -- group_id = strtol (optarg, &end, 10); -- if (*end != '\0') { -- fprintf (stderr, "%s: invalid group %s\n", -- Prog, optarg); -- fail_exit (3); -- } -- break; -- case 'o': -- if (! gflg) -- usage (); -- -- oflg++; -- break; -- default: -- usage (); -+ case 'g': -+ gflg++; -+ if (! isdigit (optarg[0])) -+ usage (); -+ -+ group_id = strtol (optarg, &end, 10); -+ if (*end != '\0') { -+ fprintf (stderr, "%s: invalid group %s\n", -+ Prog, optarg); -+ fail_exit (3); -+ } -+ break; -+ case 'o': -+ if (! gflg) -+ usage (); -+ -+ oflg++; -+ break; -+ case 'r': /* "system" group */ -+ system_flag++; -+ break; -+ case 'f': /* "force" - don't exit with error if group already exist */ -+ force_flag++; -+ break; -+ -+ default: -+ usage (); - } -- } -- if (optind != argc - 1) -+ } -+ if (optind != argc - 1) - usage (); - -- group_name = argv[argc - 1]; -- check_new_name (); --} -+ group_name = argv[argc - 1]; -+ check_new_name (); -+ } - - /* - * close_files - close all of the files that were opened -@@ -448,8 +483,12 @@ - */ - - if (getgrnam(group_name)) { -+ if ( !force_flag) { - fprintf (stderr, "%s: group %s exists\n", Prog, group_name); - exit(9); -+ } else { -+ exit(0); -+ } - } - - /* diff --git a/redhat/shadow-970616-utuser.patch b/redhat/shadow-970616-utuser.patch deleted file mode 100644 index 2c27cb25..00000000 --- a/redhat/shadow-970616-utuser.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- shadow-970616/configure.in.ewt Thu Nov 13 16:43:25 1997 -+++ shadow-970616/configure.in Thu Nov 13 16:43:34 1997 -@@ -38,7 +38,8 @@ - AC_CHECK_HEADERS(gshadow.h shadow.h lastlog.h) - - AC_EGREP_HEADER(ut_host, utmp.h, AC_DEFINE(UT_HOST)) --AC_EGREP_HEADER(ut_name, utmp.h, AC_DEFINE(UT_USER, ut_name)) -+AC_EGREP_HEADER(ut_name, utmp.h, AC_DEFINE(UT_USER, ut_user), -+ AC_EGREP_HEADER(ut_name, utmp.h, AC_DEFINE(UT_USER, ut_name))) - AC_EGREP_HEADER(ll_host, lastlog.h, AC_DEFINE(HAVE_LL_HOST)) - - dnl Checks for typedefs, structures, and compiler characteristics. diff --git a/redhat/shadow-970616.login.defs b/redhat/shadow-970616.login.defs deleted file mode 100644 index 6f578df7..00000000 --- a/redhat/shadow-970616.login.defs +++ /dev/null @@ -1,57 +0,0 @@ -# *REQUIRED* -# Directory where mailboxes reside, _or_ name of file, relative to the -# home directory. If you _do_ define both, MAIL_DIR takes precedence. -# QMAIL_DIR is for Qmail -# -#QMAIL_DIR Maildir -MAIL_DIR /var/spool/mail -#MAIL_FILE .mail - -# Password aging controls: -# -# PASS_MAX_DAYS Maximum number of days a password may be used. -# PASS_MIN_DAYS Minimum number of days allowed between password changes. -# PASS_MIN_LEN Minimum acceptable password length. -# PASS_WARN_AGE Number of days warning given before a password expires. -# -PASS_MAX_DAYS 99999 -PASS_MIN_DAYS 0 -PASS_MIN_LEN 5 -PASS_WARN_AGE 7 - -# -# Min/max values for automatic uid selection in useradd -# -UID_MIN 500 -UID_MAX 60000 - -# -# Min/max values for automatic gid selection in groupadd -# -GID_MIN 500 -GID_MAX 60000 - -# -# Require password before chfn/chsh can make any changes. -# -CHFN_AUTH yes - -# -# Don't allow users to change their "real name" using chfn. -# -CHFN_RESTRICT yes - -# -# If defined, this command is run when removing a user. -# It should remove any at/cron/print jobs etc. owned by -# the user to be removed (passed as the first argument). -# -#USERDEL_CMD /usr/sbin/userdel_local - -# -# If useradd should create home directories for users by default -# On RH systems, we do. This option is ORed with the -m flag on -# useradd command line. -# -CREATE_HOME yes - diff --git a/redhat/shadow-970616.useradd b/redhat/shadow-970616.useradd deleted file mode 100644 index ae81dbb3..00000000 --- a/redhat/shadow-970616.useradd +++ /dev/null @@ -1,7 +0,0 @@ -# useradd defaults file -GROUP=100 -HOME=/home -INACTIVE=-1 -EXPIRE= -SHELL=/bin/bash -SKEL=/etc/skel diff --git a/redhat/shadow-utils-970616.spec b/redhat/shadow-utils-970616.spec deleted file mode 100644 index 4fc4dc1c..00000000 --- a/redhat/shadow-utils-970616.spec +++ /dev/null @@ -1,137 +0,0 @@ -Summary: Shadow password file utilities for Linux -Name: shadow-utils -Version: 970616 -Release: 11 -Source0: ftp://ftp.ists.pwr.wroc.pl/pub/linux/shadow/beta/shadow-970616.tar.gz -Source1: shadow-970616.login.defs -Source2: shadow-970616.useradd -Patch0: shadow-970616-rh.patch -Patch1: shadow-970616-utuser.patch -Patch2: shadow-970616-glibc.patch -Patch3: shadow-970616-fix.patch -Copyright: BSD -Group: Utilities/System -BuildRoot: /var/tmp/shadow-utils -Obsoletes: adduser - -%changelog -* Tue Dec 30 1997 Cristian Gafton -- updated the spec file -- updated the patch so that new accounts created on shadowed system won't - confuse pam_pwdb anymore ('!!' default password instead on '!') -- fixed a bug that made useradd -G segfault -- the check for the ut_user is now patched into configure - -* Thu Nov 13 1997 Erik Troan -- added patch for XOPEN oddities in glibc headers -- check for ut_user before checking for ut_name -- this works around some - confusion on glibc 2.1 due to the utmpx header not defining the ut_name - compatibility stuff. I used a gross sed hack here because I couldn't make - automake work properly on the sparc (this could be a glibc 2.0.99 problem - though). The utuser patch works fine, but I don't apply it. -- sleep after running autoconf - -* Thu Nov 06 1997 Cristian Gafton -- added forgot lastlog command to the spec file - -* Mon Oct 26 1997 Cristian Gafton -- obsoletes adduser - -* Thu Oct 23 1997 Cristian Gafton -- modified groupadd; updated the patch - -* Fri Sep 12 1997 Cristian Gafton -- updated to 970616 -- changed useradd to meet RH specs -- fixed some bugs - -* Tue Jun 17 1997 Erik Troan -- built against glibc - -%description -This package includes the programs necessary to convert standard -UNIX password files to the shadow password format, as well as -programs for command-line management of the user's accounts. - - 'pwconv' converts everything to the shadow password format. - - 'pwunconv' unconverts from shadow passwords, generating a file - in the current directory called npasswd that is a standard UNIX - password file. - - 'pwck' checks the integrity of the password and shadow files. - - 'lastlog' prints out the last login times of all users. - - 'useradd', 'userdel' and 'usermod' for accounts management. - - 'groupadd', 'groupdel' and 'groupmod' for group management. - -A number of man pages are also included that relate to these utilities, -and shadow passwords in general. - -%prep -# This is just a few of the core utilities from the shadow suite... -# packaged up for use w/PAM -%setup -n shadow-970616 -%patch -p1 -b .rh -#%patch1 -p1 -b .utname -%patch2 -p1 -b .xopen -%patch3 -p1 -b .fix - -%build -autoheader -autoconf -sleep 2 -CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=/usr -make - -%install -rm -rf $RPM_BUILD_ROOT -mkdir -p $RPM_BUILD_ROOT/usr -make install prefix=/$RPM_BUILD_ROOT/usr -mkdir -p $RPM_BUILD_ROOT/etc/default -install -m 0600 -o root $RPM_SOURCE_DIR/shadow-970616.useradd $RPM_BUILD_ROOT/etc/default/useradd -install -m 0644 -o root $RPM_SOURCE_DIR/shadow-970616.login.defs $RPM_BUILD_ROOT/etc/login.defs -install -m 0500 -o root src/pwconv $RPM_BUILD_ROOT/usr/sbin -install -m 0500 -o root src/pwunconv $RPM_BUILD_ROOT/usr/sbin -ln -s pwconv $RPM_BUILD_ROOT/usr/sbin/pwconv5 -install -m 0644 -o root man/pw*conv.8 $RPM_BUILD_ROOT/usr/man/man8 -ln -s pwconv.8 $RPM_BUILD_ROOT/usr/man/man8/pwconv5.8 -ln -s useradd $RPM_BUILD_ROOT/usr/sbin/adduser -ln -s useradd.8 $RPM_BUILD_ROOT/usr/man/man8/adduser.8 - -%files -%doc doc/ANNOUNCE doc/CHANGES doc/HOWTO -%doc doc/LICENSE doc/README doc/README.linux -%dir /etc/default -/usr/sbin/adduser -/usr/sbin/useradd -/usr/sbin/usermod -/usr/sbin/userdel -/usr/sbin/groupadd -/usr/sbin/groupdel -/usr/sbin/groupmod -/usr/sbin/grpck -/usr/sbin/pwck -/usr/bin/chage -/usr/bin/gpasswd -/usr/sbin/lastlog -# /usr/sbin/vipw -/usr/sbin/chpasswd -/usr/sbin/newusers -/usr/sbin/pw*conv* -/usr/man/man1/chage.1 -/usr/man/man1/gpasswd.1 -/usr/man/man3/shadow.3 -/usr/man/man5/shadow.5 -/usr/man/man8/adduser.8 -/usr/man/man8/chpasswd.8 -/usr/man/man8/group*.8 -/usr/man/man8/user*.8 -/usr/man/man8/pwck.8 -/usr/man/man8/grpck.8 -/usr/man/man8/newusers.8 -# /usr/man/man8/shadowconfig.8 -/usr/man/man8/pw*conv*.8 -# /usr/man/man8/vipw.8 -/usr/man/man8/lastlog.8 -%config /etc/login.defs -%config /etc/default/useradd - -%clean -rm -rf $RPM_BUILD_ROOT diff --git a/redhat/shadow-utils.spec.in b/redhat/shadow-utils.spec.in deleted file mode 100644 index 017100bf..00000000 --- a/redhat/shadow-utils.spec.in +++ /dev/null @@ -1,154 +0,0 @@ -# shadow-utils.spec generated automatically from shadow-utils.spec.in -# $Id: shadow-utils.spec.in,v 1.3 2000/09/02 18:40:43 marekm Exp $ - -# FIXME - this is out of date, please update for current Red Hat - -Summary: Shadow password file utilities for Linux -Name: shadow-utils -Version: @VERSION@ -Release: 1 -Copyright: Free -Group: Utilities/System -Source: ftp://ftp.ists.pwr.wroc.pl/pub/linux/shadow/shadow-@VERSION@.tar.gz -BuildRoot: /var/tmp/shadow-utils -Packager: Timo Karjalainen -# Obsoletes: adduser - -%description -This package includes the programs necessary to convert traditional -V7 UNIX password files to the SVR4 shadow password format and additional -tools to work with shadow passwords. - - 'pwconv' converts everything to the shadow password format. - - 'pwunconv' converts back to non-shadow passwords. - - 'pwck' checks the integrity of the password and shadow files. - - 'lastlog' prints out the last login times of all users. - - 'useradd', 'userdel', 'usermod' to manage user accounts. - - 'groupadd', 'groupdel', 'groupmod' to manage groups. - -A number of man pages are also included that relate to these utilities, -and shadow passwords in general. - -%changelog - -* Sun Dec 14 1997 Marek Michalkiewicz - -- Lots of changes, see doc/CHANGES for more details - -* Sun Jun 08 1997 Timo Karjalainen - -- Initial release - -%prep -# This is just a few of the core utilities from the shadow suite... -# packaged up for use w/PAM -%setup -n shadow-@VERSION@ - -%build -# shared lib support is untested, so... -CFLAGS="$RPM_OPT_FLAGS" ./configure --disable-shared --prefix=/usr --exec-prefix=/usr -make - -%install -if [ -d $RPM_BUILD_ROOT ] ; then - rm -rf $RPM_BUILD_ROOT -fi -mkdir -p $RPM_BUILD_ROOT/usr -# neato trick, heh ? :-) -./configure --prefix=$RPM_BUILD_ROOT/usr -make install -mkdir -p $RPM_BUILD_ROOT/etc/default - -# FIXME -#install -m 0600 -o root $RPM_SOURCE_DIR/shadow-970616.useradd $RPM_BUILD_ROOT/etc/default/useradd -#install -m 0644 -o root $RPM_SOURCE_DIR/shadow-970616.login.defs $RPM_BUILD_ROOT/etc/login.defs -#ln -s useradd $RPM_BUILD_ROOT/usr/sbin/adduser -#ln -s useradd.8 $RPM_BUILD_ROOT/usr/man/man8/adduser.8 - -#make prefix=$RPM_BUILD_ROOT/usr exec_prefix=$RPM_BUILD_ROOT/usr install -#touch $RPM_BUILD_ROOT/etc/{login.defs,default/useradd} -#chmod 640 $RPM_BUILD_ROOT/etc/{login.defs,default/useradd} -#chown root $RPM_BUILD_ROOT/etc/{login.defs,default/useradd} -#chgrp root $RPM_BUILD_ROOT/etc/{login.defs,default/useradd} - -%clean -rm -rf $RPM_BUILD_ROOT - -%files -%doc doc/ANNOUNCE doc/CHANGES doc/HOWTO -%doc doc/LICENSE doc/README doc/README.linux -%dir /etc/default -%config /etc/default/useradd -# %config /etc/limits -# %config /etc/login.access -%config /etc/login.defs -# %config /etc/limits -# %config /etc/porttime -# %config /etc/securetty -# %config /etc/shells -# %config /etc/suauth -# /bin/login -# /bin/su -/usr/bin/chage -# /usr/bin/chfn -# /usr/bin/chsh -# /usr/bin/expiry -# /usr/bin/faillog -/usr/bin/gpasswd -/usr/bin/lastlog -# /usr/bin/newgrp -# /usr/bin/passwd -# /usr/bin/sg -/usr/man/man1/chage.1 -# /usr/man/man1/chfn.1 -# /usr/man/man1/chsh.1 -/usr/man/man1/gpasswd.1 -# /usr/man/man1/login.1 -# /usr/man/man1/passwd.1 -# /usr/man/man1/sg.1 -# /usr/man/man1/su.1 -/usr/man/man3/shadow.3 -# /usr/man/man5/faillog.5 -# /usr/man/man5/limits.5 -# /usr/man/man5/login.access.5 -# /usr/man/man5/login.defs.5 -# /usr/man/man5/passwd.5 -# /usr/man/man5/porttime.5 -/usr/man/man5/shadow.5 -# /usr/man/man5/suauth.5 -# /usr/man/man8/adduser.8 -/usr/man/man8/chpasswd.8 -# /usr/man/man8/faillog.8 -/usr/man/man8/groupadd.8 -/usr/man/man8/groupdel.8 -/usr/man/man8/groupmod.8 -/usr/man/man8/grpck.8 -/usr/man/man8/lastlog.8 -# /usr/man/man8/logoutd.8 -/usr/man/man8/newusers.8 -/usr/man/man8/pwck.8 -/usr/man/man8/pwconv.8 -# /usr/man/man8/shadowconfig.8 -/usr/man/man8/useradd.8 -/usr/man/man8/userdel.8 -/usr/man/man8/usermod.8 -# /usr/man/man8/vigr.8 -# /usr/man/man8/vipw.8 -# /usr/sbin/adduser -/usr/sbin/chpasswd -/usr/sbin/groupadd -/usr/sbin/groupdel -/usr/sbin/groupmod -/usr/sbin/grpck -/usr/sbin/grpconv -/usr/sbin/grpunconv -# /usr/sbin/logoutd -/usr/sbin/newusers -/usr/sbin/pwck -/usr/sbin/pwconv -/usr/sbin/pwunconv -# /usr/sbin/shadowconfig -/usr/sbin/useradd -/usr/sbin/userdel -/usr/sbin/usermod -# /usr/sbin/vigr -# /usr/sbin/vipw diff --git a/shadow-utils.spec.in b/shadow-utils.spec.in new file mode 100644 index 00000000..e1b3f63e --- /dev/null +++ b/shadow-utils.spec.in @@ -0,0 +1,93 @@ +# shadow-utils.spec generated automatically from shadow-utils.spec.in +# $Id: shadow-utils.spec.in,v 1.2 2000/10/10 15:29:55 kloczek Exp $ + +Summary: Shadow password file utilities for Linux +Name: shadow-utils +Version: @VERSION@ +Release: 1 +Copyright: Free +Group: Utilities/System +Source: ftp://ftp.pld.org.pl/software/shadow/%{name}-%{version}.tar.gz +BuildRoot: %{_tmppath}/%{name}-%{version}-root +Obsoletes: adduser + +%description +This package includes the programs necessary to convert traditional +V7 UNIX password files to the SVR4 shadow password format and additional +tools to work with shadow passwords. + - 'pwconv' converts everything to the shadow password format. + - 'pwunconv' converts back to non-shadow passwords. + - 'pwck' checks the integrity of the password and shadow files. + - 'lastlog' prints out the last login times of all users. + - 'useradd', 'userdel', 'usermod' to manage user accounts. + - 'groupadd', 'groupdel', 'groupmod' to manage groups. + +A number of man pages are also included that relate to these utilities, +and shadow passwords in general. + +%prep +%setup + +%build +%configure \ + --disable-shared \ + --prefix=/usr \ + --exec-prefix=/usr +make + +%install +rm -rf $RPM_BUILD_ROOT + +make install DESTDIR=$RPM_BUILD_ROOT + +mkdir -p $RPM_BUILD_ROOT/etc/default + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%doc doc/ANNOUNCE doc/CHANGES doc/HOWTO +%doc doc/LICENSE doc/README doc/README.linux +%dir /etc/default +%config /etc/default/useradd +%config /etc/login.defs +%{_bindir}/chage +%{_bindir}/gpasswd +%{_bindir}/lastlog +%{_mandir}/man1/chage.1* +%{_mandir}/man1/gpasswd.1* +%{_mandir}/man3/shadow.3* +%{_mandir}/man5/shadow.5* +%{_mandir}/man8/chpasswd.8* +%{_mandir}/man8/groupadd.8* +%{_mandir}/man8/groupdel.8* +%{_mandir}/man8/groupmod.8* +%{_mandir}/man8/grpck.8* +%{_mandir}/man8/lastlog.8* +%{_mandir}/man8/newusers.8* +%{_mandir}/man8/pwck.8* +%{_mandir}/man8/pwconv.8* +%{_mandir}/man8/useradd.8* +%{_mandir}/man8/userdel.8* +%{_mandir}/man8/usermod.8* +%{_sbindir}/chpasswd +%{_sbindir}/groupadd +%{_sbindir}/groupdel +%{_sbindir}/groupmod +%{_sbindir}/grpck +%{_sbindir}/grpconv +%{_sbindir}/grpunconv +%{_sbindir}/newusers +%{_sbindir}/pwck +%{_sbindir}/pwconv +%{_sbindir}/pwunconv +%{_sbindir}/useradd +%{_sbindir}/userdel +%{_sbindir}/usermod + +%changelog +* Sun Dec 14 1997 Marek Michalkiewicz +- Lots of changes, see doc/CHANGES for more details + +* Sun Jun 08 1997 Timo Karjalainen +- Initial release diff --git a/src/Makefile.am b/src/Makefile.am index db8203fd..13a406ac 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -25,14 +25,11 @@ DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@ # and installation would be much simpler (just two directories, # $prefix/bin and $prefix/sbin, no install-data hacks...) -bin_PROGRAMS = login \ - su -ubin_PROGRAMS = faillog lastlog \ - chage chfn chsh expiry gpasswd newgrp passwd +bin_PROGRAMS = login su +ubin_PROGRAMS = faillog lastlog chage chfn chsh expiry gpasswd newgrp passwd usbin_PROGRAMS = chpasswd dpasswd groupadd groupdel groupmod \ - logoutd mkpasswd newusers \ - useradd userdel usermod grpck pwck vipw \ - grpconv grpunconv pwconv pwunconv + logoutd mkpasswd newusers useradd userdel usermod grpck \ + pwck vipw grpconv grpunconv pwconv pwunconv EXTRA_DIST = shadowconfig.sh @@ -82,9 +79,17 @@ shlibs = ../lib/libshadow.la LDADD = ${shlibs} ../libmisc/libmisc.a ../lib/libshadow.a @INTLLIBS@ @LIBCRYPT@ @LIBTCFS@ @LIBSKEY@ @LIBMD@ INCLUDES = -I${top_srcdir}/lib -I$(top_srcdir)/libmisc -chfn_LDADD = ${LDADD} @LIBPAM@ -chsh_LDADD = ${LDADD} @LIBPAM@ -login_LDADD = ${LDADD} @LIBPAM@ -passwd_LDADD = ${LDADD} @LIBCRACK@ @LIBPAM@ -su_LDADD = ${LDADD} @LIBPAM@ - +chfn_LDADD = $(LDADD) @LIBPAM@ +chsh_LDADD = $(LDADD) @LIBPAM@ +login_LDADD = $(LDADD) @LIBPAM@ +passwd_LDADD = $(LDADD) @LIBCRACK@ @LIBPAM@ +su_LDADD = $(LDADD) @LIBPAM@ +chage_LDADD = $(LDADD) @LIBPAM@ +chpasswd_LDADD = $(LDADD) @LIBPAM@ +groupadd_LDADD = $(LDADD) @LIBPAM@ +groupdel_LDADD = $(LDADD) @LIBPAM@ +groupmod_LDADD = $(LDADD) @LIBPAM@ +newusers_LDADD = $(LDADD) @LIBPAM@ +useradd_LDADD = $(LDADD) @LIBPAM@ +userdel_LDADD = $(LDADD) @LIBPAM@ +usermod_LDADD = $(LDADD) @LIBPAM@ diff --git a/src/Makefile.in b/src/Makefile.in index 773a3b3c..609c6885 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -1,4 +1,4 @@ -# Makefile.in generated automatically by automake 1.4 from Makefile.am +# Makefile.in generated automatically by automake 1.4a from Makefile.am # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation @@ -43,9 +43,10 @@ AUTOMAKE = @AUTOMAKE@ AUTOHEADER = @AUTOHEADER@ INSTALL = @INSTALL@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) +INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_FLAG = transform = @program_transform_name@ NORMAL_INSTALL = : @@ -73,7 +74,6 @@ INSTOBJEXT = @INSTOBJEXT@ INTLDEPS = @INTLDEPS@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ -LD = @LD@ LIBCRACK = @LIBCRACK@ LIBCRYPT = @LIBCRYPT@ LIBMD = @LIBMD@ @@ -86,7 +86,6 @@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ -NM = @NM@ OBJDUMP = @OBJDUMP@ PACKAGE = @PACKAGE@ POFILES = @POFILES@ @@ -125,11 +124,9 @@ DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@ # and installation would be much simpler (just two directories, # $prefix/bin and $prefix/sbin, no install-data hacks...) -bin_PROGRAMS = login su - -ubin_PROGRAMS = faillog lastlog chage chfn chsh expiry gpasswd newgrp passwd - -usbin_PROGRAMS = chpasswd dpasswd groupadd groupdel groupmod logoutd mkpasswd newusers useradd userdel usermod grpck pwck vipw grpconv grpunconv pwconv pwunconv +bin_PROGRAMS = login su +ubin_PROGRAMS = faillog lastlog chage chfn chsh expiry gpasswd newgrp passwd +usbin_PROGRAMS = chpasswd dpasswd groupadd groupdel groupmod logoutd mkpasswd newusers useradd userdel usermod grpck pwck vipw grpconv grpunconv pwconv pwunconv EXTRA_DIST = shadowconfig.sh @@ -168,11 +165,20 @@ shlibs = ../lib/libshadow.la LDADD = ${shlibs} ../libmisc/libmisc.a ../lib/libshadow.a @INTLLIBS@ @LIBCRYPT@ @LIBTCFS@ @LIBSKEY@ @LIBMD@ INCLUDES = -I${top_srcdir}/lib -I$(top_srcdir)/libmisc -chfn_LDADD = ${LDADD} @LIBPAM@ -chsh_LDADD = ${LDADD} @LIBPAM@ -login_LDADD = ${LDADD} @LIBPAM@ -passwd_LDADD = ${LDADD} @LIBCRACK@ @LIBPAM@ -su_LDADD = ${LDADD} @LIBPAM@ +chfn_LDADD = $(LDADD) @LIBPAM@ +chsh_LDADD = $(LDADD) @LIBPAM@ +login_LDADD = $(LDADD) @LIBPAM@ +passwd_LDADD = $(LDADD) @LIBCRACK@ @LIBPAM@ +su_LDADD = $(LDADD) @LIBPAM@ +chage_LDADD = $(LDADD) @LIBPAM@ +chpasswd_LDADD = $(LDADD) @LIBPAM@ +groupadd_LDADD = $(LDADD) @LIBPAM@ +groupdel_LDADD = $(LDADD) @LIBPAM@ +groupmod_LDADD = $(LDADD) @LIBPAM@ +newusers_LDADD = $(LDADD) @LIBPAM@ +useradd_LDADD = $(LDADD) @LIBPAM@ +userdel_LDADD = $(LDADD) @LIBPAM@ +usermod_LDADD = $(LDADD) @LIBPAM@ mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = ../config.h CONFIG_CLEAN_FILES = @@ -224,7 +230,6 @@ lastlog_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ lastlog_LDFLAGS = chage_SOURCES = chage.c chage_OBJECTS = chage.o -chage_LDADD = $(LDADD) chage_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a chage_LDFLAGS = @@ -263,7 +268,6 @@ passwd_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ passwd_LDFLAGS = chpasswd_SOURCES = chpasswd.c chpasswd_OBJECTS = chpasswd.o -chpasswd_LDADD = $(LDADD) chpasswd_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a chpasswd_LDFLAGS = @@ -275,19 +279,16 @@ dpasswd_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ dpasswd_LDFLAGS = groupadd_SOURCES = groupadd.c groupadd_OBJECTS = groupadd.o -groupadd_LDADD = $(LDADD) groupadd_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a groupadd_LDFLAGS = groupdel_SOURCES = groupdel.c groupdel_OBJECTS = groupdel.o -groupdel_LDADD = $(LDADD) groupdel_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a groupdel_LDFLAGS = groupmod_SOURCES = groupmod.c groupmod_OBJECTS = groupmod.o -groupmod_LDADD = $(LDADD) groupmod_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a groupmod_LDFLAGS = @@ -305,25 +306,21 @@ mkpasswd_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ mkpasswd_LDFLAGS = newusers_SOURCES = newusers.c newusers_OBJECTS = newusers.o -newusers_LDADD = $(LDADD) newusers_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a newusers_LDFLAGS = useradd_SOURCES = useradd.c useradd_OBJECTS = useradd.o -useradd_LDADD = $(LDADD) useradd_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a useradd_LDFLAGS = userdel_SOURCES = userdel.c userdel_OBJECTS = userdel.o -userdel_LDADD = $(LDADD) userdel_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a userdel_LDFLAGS = usermod_SOURCES = usermod.c usermod_OBJECTS = usermod.o -usermod_LDADD = $(LDADD) usermod_DEPENDENCIES = ../lib/libshadow.la ../libmisc/libmisc.a \ ../lib/libshadow.a usermod_LDFLAGS = @@ -381,7 +378,7 @@ DIST_COMMON = Makefile.am Makefile.in DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) -TAR = tar +TAR = gtar GZIP_ENV = --best SOURCES = login.c su.c groups.c id.c sulogin.c faillog.c lastlog.c chage.c chfn.c chsh.c expiry.c gpasswd.c newgrp.c passwd.c chpasswd.c dpasswd.c groupadd.c groupdel.c groupmod.c logoutd.c mkpasswd.c newusers.c useradd.c userdel.c usermod.c grpck.c pwck.c vipw.c grpconv.c grpunconv.c pwconv.c pwunconv.c OBJECTS = login.o su.o groups.o id.o sulogin.o faillog.o lastlog.o chage.o chfn.o chsh.o expiry.o gpasswd.o newgrp.o passwd.o chpasswd.o dpasswd.o groupadd.o groupdel.o groupmod.o logoutd.o mkpasswd.o newusers.o useradd.o userdel.o usermod.o grpck.o pwck.o vipw.o grpconv.o grpunconv.o pwconv.o pwunconv.o @@ -411,8 +408,8 @@ install-binPROGRAMS: $(bin_PROGRAMS) $(mkinstalldirs) $(DESTDIR)$(bindir) @list='$(bin_PROGRAMS)'; for p in $$list; do \ if test -f $$p; then \ - echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ - $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ + $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(bindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ else :; fi; \ done @@ -445,8 +442,8 @@ install-ubinPROGRAMS: $(ubin_PROGRAMS) $(mkinstalldirs) $(DESTDIR)$(ubindir) @list='$(ubin_PROGRAMS)'; for p in $$list; do \ if test -f $$p; then \ - echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(ubindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ - $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(ubindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(ubindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ + $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(ubindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ else :; fi; \ done @@ -470,8 +467,8 @@ install-usbinPROGRAMS: $(usbin_PROGRAMS) $(mkinstalldirs) $(DESTDIR)$(usbindir) @list='$(usbin_PROGRAMS)'; for p in $$list; do \ if test -f $$p; then \ - echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(usbindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ - $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $$p $(DESTDIR)$(usbindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ + echo " $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(usbindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`"; \ + $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) $(INSTALL_STRIP_FLAG) $$p $(DESTDIR)$(usbindir)/`echo $$p|sed 's/$(EXEEXT)$$//'|sed '$(transform)'|sed 's/$$/$(EXEEXT)/'`; \ else :; fi; \ done @@ -684,105 +681,13 @@ distdir: $(DISTFILES) @for file in $(DISTFILES); do \ d=$(srcdir); \ if test -d $$d/$$file; then \ - cp -pr $$/$$file $(distdir)/$$file; \ + cp -pr $$d/$$file $(distdir)/$$file; \ else \ test -f $(distdir)/$$file \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || cp -p $$d/$$file $(distdir)/$$file || :; \ fi; \ done -chage.o: chage.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwio.h \ - ../lib/shadowio.h -chfn.o: chfn.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwio.h \ - ../lib/getdef.h ../lib/pwauth.h -chpasswd.o: chpasswd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwio.h \ - ../lib/shadowio.h -chsh.o: chsh.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwio.h \ - ../lib/getdef.h ../lib/pwauth.h -dpasswd.o: dpasswd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/dialup.h -expiry.o: expiry.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -faillog.o: faillog.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/faillog.h -gpasswd.o: gpasswd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/groupio.h \ - ../lib/sgroupio.h -groupadd.o: groupadd.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/prototypes.h ../libmisc/chkname.h \ - ../lib/getdef.h ../lib/groupio.h ../lib/sgroupio.h -groupdel.o: groupdel.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/groupio.h \ - ../lib/sgroupio.h -groupmod.o: groupmod.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../libmisc/chkname.h \ - ../lib/groupio.h ../lib/sgroupio.h -groups.o: groups.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -grpck.o: grpck.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../libmisc/chkname.h \ - ../lib/commonio.h ../lib/groupio.h ../lib/sgroupio.h -grpconv.o: grpconv.c ../config.h ../lib/prototypes.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/groupio.h ../lib/sgroupio.h \ - ../lib/rcsid.h -grpunconv.o: grpunconv.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/groupio.h \ - ../lib/sgroupio.h -id.o: id.c ../config.h ../lib/rcsid.h ../lib/defines.h ../lib/gshadow_.h -lastlog.o: lastlog.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -login.o: login.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/faillog.h \ - ../libmisc/failure.h ../lib/pwauth.h ../lib/getdef.h \ - ../lib/dialchk.h -logoutd.o: logoutd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -mkpasswd.o: mkpasswd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h -newgrp.o: newgrp.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h -newusers.o: newusers.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h \ - ../lib/pwio.h ../lib/groupio.h ../lib/shadowio.h -passwd.o: passwd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwauth.h \ - ../lib/shadowio.h ../lib/pwio.h ../lib/getdef.h -pwck.o: pwck.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../libmisc/chkname.h \ - ../lib/commonio.h ../lib/pwio.h ../lib/shadowio.h -pwconv.o: pwconv.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwio.h \ - ../lib/shadowio.h ../lib/getdef.h -pwunconv.o: pwunconv.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/prototypes.h ../lib/pwio.h \ - ../lib/shadowio.h -sulogin.o: sulogin.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h \ - ../lib/pwauth.h -su.o: su.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/pwauth.h \ - ../lib/getdef.h -useradd.o: useradd.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../libmisc/chkname.h \ - ../lib/pwauth.h ../lib/faillog.h ../lib/groupio.h \ - ../lib/sgroupio.h ../lib/pwio.h ../lib/shadowio.h \ - ../lib/getdef.h -userdel.o: userdel.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../lib/getdef.h \ - ../lib/pwauth.h ../lib/groupio.h ../lib/pwio.h \ - ../lib/shadowio.h ../lib/sgroupio.h -usermod.o: usermod.c ../config.h ../lib/rcsid.h ../lib/prototypes.h \ - ../lib/defines.h ../lib/gshadow_.h ../libmisc/chkname.h \ - ../lib/faillog.h ../lib/pwauth.h ../lib/getdef.h \ - ../lib/groupio.h ../lib/sgroupio.h ../lib/pwio.h \ - ../lib/shadowio.h -vipw.o: vipw.c ../config.h ../lib/rcsid.h ../lib/defines.h \ - ../lib/gshadow_.h ../lib/prototypes.h ../lib/pwio.h \ - ../lib/shadowio.h ../lib/groupio.h ../lib/sgroupio.h info-am: info: info-am @@ -811,7 +716,7 @@ uninstall: uninstall-am all-am: Makefile $(PROGRAMS) $(HEADERS) all-redirect: all-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install + $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install installdirs: $(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(ubindir) \ $(DESTDIR)$(usbindir) diff --git a/src/chage.c b/src/chage.c index fd1e5d64..7932356b 100644 --- a/src/chage.c +++ b/src/chage.c @@ -30,7 +30,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: chage.c,v 1.18 2000/09/02 18:40:43 marekm Exp $") +RCSID(PKG_VER "$Id: chage.c,v 1.19 2000/10/09 18:39:50 kloczek Exp $") #include #include @@ -43,6 +43,12 @@ RCSID(PKG_VER "$Id: chage.c,v 1.18 2000/09/02 18:40:43 marekm Exp $") #include +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + /* * chage depends on some form of aging being present. It makes no sense * to have a program that has no input. @@ -345,6 +351,13 @@ list_fields(void) #endif } +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + /* * chage - change a user's password aging information * @@ -390,6 +403,11 @@ main(int argc, char **argv) const struct passwd *pw; struct passwd pwent; char name[BUFSIZ]; +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif sanitize_env(); setlocale(LC_ALL, ""); @@ -405,6 +423,38 @@ main(int argc, char **argv) Prog = Basename(argv[0]); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("chage", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + OPENLOG("chage"); #ifdef NDBM #ifdef SHADOWPWD @@ -790,6 +840,25 @@ main(int argc, char **argv) } cleanup(2); SYSLOG((LOG_INFO, AGE_CHANGED, name)); +#ifdef USE_PAM + if (!lflg) { + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ + closelog(); exit(0); /*NOTREACHED*/ diff --git a/src/chpasswd.c b/src/chpasswd.c index dc46498f..72f748ea 100644 --- a/src/chpasswd.c +++ b/src/chpasswd.c @@ -43,7 +43,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: chpasswd.c,v 1.10 2000/08/26 18:27:18 marekm Exp $") +RCSID(PKG_VER "$Id: chpasswd.c,v 1.12 2000/10/09 19:02:20 kloczek Exp $") #include #include "prototypes.h" @@ -55,6 +55,12 @@ RCSID(PKG_VER "$Id: chpasswd.c,v 1.10 2000/08/26 18:27:18 marekm Exp $") #include "shadowio.h" #endif +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + static char *Prog; static int eflg = 0; #ifdef SHADOWPWD @@ -77,6 +83,13 @@ usage(void) exit(1); } +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + int main(int argc, char **argv) { @@ -97,6 +110,11 @@ main(int argc, char **argv) int line = 0; long now = time ((long *) 0) / (24L*3600L); int ok; +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif Prog = Basename(argv[0]); @@ -104,6 +122,38 @@ main(int argc, char **argv) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + /* XXX - use getopt() */ if (!(argc == 1 || (argc == 2 && !strcmp(argv[1], "-e")))) usage(); @@ -284,5 +334,22 @@ main(int argc, char **argv) } pw_unlock(); +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ + return (0); } diff --git a/src/groupadd.c b/src/groupadd.c index cdf92334..b1e77c08 100644 --- a/src/groupadd.c +++ b/src/groupadd.c @@ -30,7 +30,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: groupadd.c,v 1.16 2000/09/02 18:40:43 marekm Exp $") +RCSID(PKG_VER "$Id: groupadd.c,v 1.18 2000/10/09 19:02:20 kloczek Exp $") #include #include @@ -49,6 +49,12 @@ RCSID(PKG_VER "$Id: groupadd.c,v 1.16 2000/09/02 18:40:43 marekm Exp $") #ifdef SHADOWGRP #include "sgroupio.h" +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + static int is_shadow_grp; #endif @@ -470,6 +476,13 @@ fail_exit(int code) exit (code); } +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + /* * main - groupadd command */ @@ -477,6 +490,11 @@ fail_exit(int code) int main(int argc, char **argv) { +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif /* * Get my name so that I can use it to report errors. @@ -488,6 +506,38 @@ main(int argc, char **argv) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + OPENLOG(Prog); #ifdef SHADOWGRP @@ -532,6 +582,23 @@ main(int argc, char **argv) grp_update(); close_files(); + +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ exit(E_SUCCESS); /*NOTREACHED*/ } diff --git a/src/groupdel.c b/src/groupdel.c index 7ddc3922..1a928215 100644 --- a/src/groupdel.c +++ b/src/groupdel.c @@ -30,7 +30,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: groupdel.c,v 1.12 2000/09/02 18:40:43 marekm Exp $") +RCSID(PKG_VER "$Id: groupdel.c,v 1.14 2000/10/09 19:02:20 kloczek Exp $") #include #include @@ -39,6 +39,12 @@ RCSID(PKG_VER "$Id: groupdel.c,v 1.12 2000/09/02 18:40:43 marekm Exp $") #include #include +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + #include "prototypes.h" #include "defines.h" @@ -249,6 +255,13 @@ group_busy(gid_t gid) exit(E_GROUP_BUSY); } +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + /* * main - groupdel command * @@ -263,6 +276,11 @@ int main(int argc, char **argv) { struct group *grp; +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif /* * Get my name so that I can use it to report errors. @@ -274,6 +292,38 @@ main(int argc, char **argv) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + if (argc != 2) usage (); @@ -346,6 +396,23 @@ main(int argc, char **argv) grp_update (); close_files (); + +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ exit(errors == 0 ? E_SUCCESS : E_GRP_UPDATE); /*NOTREACHED*/ } diff --git a/src/groupmod.c b/src/groupmod.c index 6fc9bbd9..bc1417e0 100644 --- a/src/groupmod.c +++ b/src/groupmod.c @@ -30,7 +30,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: groupmod.c,v 1.14 2000/09/02 18:40:44 marekm Exp $") +RCSID(PKG_VER "$Id: groupmod.c,v 1.16 2000/10/09 19:02:20 kloczek Exp $") #include #include @@ -38,6 +38,12 @@ RCSID(PKG_VER "$Id: groupmod.c,v 1.14 2000/09/02 18:40:44 marekm Exp $") #include #include +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + #include "prototypes.h" #include "chkname.h" #include "defines.h" @@ -446,6 +452,13 @@ open_files(void) #endif /* SHADOWGRP */ } +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + /* * main - groupmod command * @@ -463,6 +476,11 @@ int main(int argc, char **argv) { struct group *grp; +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif /* * Get my name so that I can use it to report errors. @@ -474,6 +492,38 @@ main(int argc, char **argv) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + OPENLOG(Prog); #ifdef SHADOWGRP @@ -543,6 +593,23 @@ main(int argc, char **argv) grp_update (); close_files (); + +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ exit(E_SUCCESS); /*NOTREACHED*/ } diff --git a/src/newusers.c b/src/newusers.c index fd313c4b..85bf49f5 100644 --- a/src/newusers.c +++ b/src/newusers.c @@ -36,7 +36,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: newusers.c,v 1.11 2000/08/26 18:27:18 marekm Exp $") +RCSID(PKG_VER "$Id: newusers.c,v 1.13 2000/10/09 19:02:20 kloczek Exp $") #include #include @@ -47,6 +47,12 @@ RCSID(PKG_VER "$Id: newusers.c,v 1.11 2000/08/26 18:27:18 marekm Exp $") #include #include +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + static char *Prog; #include "getdef.h" @@ -321,6 +327,13 @@ add_passwd(struct passwd *pwd, const char *passwd) #endif } +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + int main(int argc, char **argv) { @@ -334,13 +347,50 @@ main(int argc, char **argv) int line = 0; uid_t uid; gid_t gid; +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif Prog = Basename(argv[0]); setlocale(LC_ALL, ""); bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); - + +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + if (argc > 1 && argv[1][0] == '-') usage (); @@ -563,6 +613,23 @@ main(int argc, char **argv) #endif (void) pw_unlock (); +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ + exit (0); /*NOTREACHED*/ } diff --git a/src/useradd.c b/src/useradd.c index 880d854e..fe0885d8 100644 --- a/src/useradd.c +++ b/src/useradd.c @@ -30,7 +30,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: useradd.c,v 1.18 2000/09/02 18:40:44 marekm Exp $") +RCSID(PKG_VER "$Id: useradd.c,v 1.21 2000/10/09 20:03:12 kloczek Exp $") #include "prototypes.h" #include "defines.h" @@ -45,6 +45,12 @@ RCSID(PKG_VER "$Id: useradd.c,v 1.18 2000/09/02 18:40:44 marekm Exp $") #include #include +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + #include "pwauth.h" #if HAVE_LASTLOG_H #include @@ -1642,6 +1648,13 @@ create_home(void) } } +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + /* * main - useradd command */ @@ -1649,6 +1662,11 @@ create_home(void) int main(int argc, char **argv) { +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif /* * Get my name so that I can use it to report errors. */ @@ -1659,6 +1677,38 @@ main(int argc, char **argv) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + OPENLOG(Prog); #ifdef SHADOWPWD @@ -1709,6 +1759,19 @@ main(int argc, char **argv) exit(E_NAME_IN_USE); } + /* + * Don't blindly overwrite a group when a user is added... + * If you already have a group username, and want to add the user + * to that group, use useradd -g username username. + * --bero + */ + if (! (nflg || gflg)) { + if (getgrnam(user_name)) { + fprintf(stderr, _("%s: group %s exists - if you want to add this user to that group, use -g.\n"), Prog, user_name); + exit(E_NAME_IN_USE); + } + } + /* * Do the hard stuff - open the files, create the user entries, * create the home directory, then close and update the files. @@ -1741,6 +1804,23 @@ main(int argc, char **argv) close_files (); +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ + exit(E_SUCCESS); /*NOTREACHED*/ } diff --git a/src/userdel.c b/src/userdel.c index 7637a4f1..88214490 100644 --- a/src/userdel.c +++ b/src/userdel.c @@ -30,7 +30,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: userdel.c,v 1.17 2000/09/02 18:40:44 marekm Exp $") +RCSID(PKG_VER "$Id: userdel.c,v 1.19 2000/10/09 19:02:20 kloczek Exp $") #include #include @@ -41,6 +41,12 @@ RCSID(PKG_VER "$Id: userdel.c,v 1.17 2000/09/02 18:40:44 marekm Exp $") #include #include +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + #include "prototypes.h" #include "defines.h" #include "getdef.h" @@ -669,6 +675,13 @@ remove_mailbox(void) } #endif +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + /* * main - userdel command */ @@ -679,6 +692,11 @@ main(int argc, char **argv) struct passwd *pwd; int arg; int errors = 0; +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif /* * Get my name so that I can use it to report errors. @@ -690,6 +708,38 @@ main(int argc, char **argv) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + OPENLOG(Prog); #ifdef SHADOWPWD @@ -841,6 +891,23 @@ main(int argc, char **argv) close_files (); +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ + exit(errors ? E_HOMEDIR : E_SUCCESS); /*NOTREACHED*/ } diff --git a/src/usermod.c b/src/usermod.c index 447e3c64..f038754c 100644 --- a/src/usermod.c +++ b/src/usermod.c @@ -30,7 +30,7 @@ #include #include "rcsid.h" -RCSID(PKG_VER "$Id: usermod.c,v 1.19 2000/09/02 18:40:44 marekm Exp $") +RCSID(PKG_VER "$Id: usermod.c,v 1.21 2000/10/09 19:02:20 kloczek Exp $") #include #include @@ -42,6 +42,12 @@ RCSID(PKG_VER "$Id: usermod.c,v 1.19 2000/09/02 18:40:44 marekm Exp $") #include #include +#ifdef USE_PAM +#include +#include +#include +#endif /* USE_PAM */ + #include "prototypes.h" #include "defines.h" #include "chkname.h" @@ -1618,6 +1624,13 @@ move_mailbox(void) } #endif +#ifdef USE_PAM +static struct pam_conv conv = { + misc_conv, + NULL +}; +#endif /* USE_PAM */ + /* * main - usermod command */ @@ -1626,6 +1639,11 @@ int main(int argc, char **argv) { int grp_err = 0; +#ifdef USE_PAM + pam_handle_t *pamh = NULL; + struct passwd *pampw; + int retval; +#endif /* * Get my name so that I can use it to report errors. @@ -1636,6 +1654,38 @@ main(int argc, char **argv) bindtextdomain(PACKAGE, LOCALEDIR); textdomain(PACKAGE); +#ifdef USE_PAM + retval = PAM_SUCCESS; + + pampw = getpwuid(getuid()); + if (pampw == NULL) { + retval = PAM_USER_UNKNOWN; + } + + if (retval == PAM_SUCCESS) { + retval = pam_start("shadow", pampw->pw_name, &conv, &pamh); + } + + if (retval == PAM_SUCCESS) { + retval = pam_authenticate(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval == PAM_SUCCESS) { + retval = pam_acct_mgmt(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM authentication failed\n"), Prog); + exit (1); + } +#endif /* USE_PAM */ + OPENLOG(Prog); #ifdef SHADOWPWD @@ -1700,6 +1750,23 @@ main(int argc, char **argv) if (grp_err) exit(E_GRP_UPDATE); +#ifdef USE_PAM + if (retval == PAM_SUCCESS) { + retval = pam_chauthtok(pamh, 0); + if (retval != PAM_SUCCESS) { + pam_end(pamh, retval); + } + } + + if (retval != PAM_SUCCESS) { + fprintf (stderr, _("%s: PAM chauthtok failed\n"), Prog); + exit (1); + } + + if (retval == PAM_SUCCESS) + pam_end(pamh, PAM_SUCCESS); +#endif /* USE_PAM */ + exit(E_SUCCESS); /*NOTREACHED*/ } diff --git a/stamp-h.in b/stamp-h.in index 9788f702..e69de29b 100644 --- a/stamp-h.in +++ b/stamp-h.in @@ -1 +0,0 @@ -timestamp -- 2.40.0