[svn-upgrade] Integrating new upstream version, shadow (20001012)

This commit is contained in:
nekral-guest
2007-10-07 11:44:38 +00:00
parent d6e9891ad7
commit 4e3fe42600
159 changed files with 6400 additions and 12724 deletions

290
ChangeLog Normal file
View File

@ -0,0 +1,290 @@
2000-10-12 Tomasz K<>oczko <kloczek@pld.org.pl>
* 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 <kloczek@pld.org.pl>
* po/ChangeLog: - add empty file (gettext requires this).
2000-10-10 Arkadiusz Mi<4D>kiewicz <misiek@pld.org.pl>
* README: typos fixed
2000-10-10 Tomasz K<>oczko <kloczek@pld.org.pl>
* 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 <kloczek@pld.org.pl>
* 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 <kloczek@pld.org.pl>
* autogen.sh:
- added autogen.sh script which prepare raw source code from cvs to use.
2000-10-04 Tomasz K<>oczko <kloczek@pld.org.pl>
* 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 <kloczek@pld.org.pl>
* po/cs.po, configure.in:
- added cs translation (Jiri Pavlovsky <Jiri.Pavlovsky@ff.cuni.cz>).
2000-09-05 Marek Micha<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* acconfig.h: *** empty log message ***
1997-12-14 Marek Micha<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* man/chpasswd.8, man/pwconv.8, man/pwunconv.8, man/su.1, man/Makefile.am:
*** empty log message ***
1997-06-16 Marek Micha<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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<68>kiewicz <marekm@linux.org.pl>
* 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.

View File

@ -1,6 +1,8 @@
## Process this file with automake to produce Makefile.in ## Process this file with automake to produce Makefile.in
EXTRA_DIST = NEWS README TODO shadow-utils.spec.in
AUTOMAKE_OPTIONS = 1.0 foreign AUTOMAKE_OPTIONS = 1.0 foreign
SUBDIRS = intl po man lib libmisc src \ SUBDIRS = intl po man lib libmisc src \
contrib debian doc etc redhat # old contrib debian doc etc

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -46,9 +46,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -76,7 +77,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -89,7 +89,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -102,22 +101,25 @@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
l = @l@ l = @l@
EXTRA_DIST = NEWS README TODO shadow-utils.spec.in
AUTOMAKE_OPTIONS = 1.0 foreign 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 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = config.h CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES = shadow-utils.spec
DIST_COMMON = ./stamp-h.in ABOUT-NLS Makefile.am Makefile.in acconfig.h \ DIST_COMMON = README ./stamp-h.in ABOUT-NLS ChangeLog Makefile.am \
aclocal.m4 config.guess config.h.in config.sub configure configure.in \ Makefile.in NEWS TODO acconfig.h aclocal.m4 config.guess config.h.in \
install-sh ltconfig ltmain.sh missing mkinstalldirs config.sub configure configure.in install-sh ltconfig ltmain.sh missing \
mkinstalldirs shadow-utils.spec.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
@ -163,6 +165,8 @@ distclean-hdr:
-rm -f config.h -rm -f config.h
maintainer-clean-hdr: 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 # This directory's subdirectories are mostly independent; you can cd
# into them and run `make' without going through this Makefile. # into them and run `make' without going through this Makefile.
@ -294,7 +298,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -336,7 +340,7 @@ uninstall: uninstall-recursive
all-am: Makefile config.h all-am: Makefile config.h
all-redirect: all-recursive-am all-redirect: all-recursive-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs-recursive installdirs: installdirs-recursive
installdirs-am: installdirs-am:

View File

@ -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 <baggins@pld.org.pl>,
- many small fixes and improvments in automake (mow "make dist"
works correctly),
- added cs translation (Jiri Pavlovsky <Jiri.Pavlovsky@ff.cuni.cz>).
shadow-20000826 => shadow-20000902 shadow-20000826 => shadow-20000902
@ -691,4 +706,3 @@ shadow-3.3.2 => shadow-3.3.2-951106
shadow-3.3.2 shadow-3.3.2
Original version, received directly from the author. Original version, received directly from the author.

28
README Normal file
View File

@ -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 <kloczek@pld.org.pl>

7
TODO Normal file
View File

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

64
aclocal.m4 vendored
View File

@ -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 Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
dnl This file is free software; the Free Software Foundation 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_DEFUN(AM_INIT_AUTOMAKE,
[AC_REQUIRE([AC_PROG_INSTALL]) [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] PACKAGE=[$1]
AC_SUBST(PACKAGE) AC_SUBST(PACKAGE)
VERSION=[$2] VERSION=[$2]
@ -249,7 +251,7 @@ LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \
LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \
DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \
${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ ${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]) || AC_MSG_ERROR([libtool configure failed])
# Reload cache, that may have been modified by ltconfig # 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 AC_REQUIRE([AC_PROG_LN_S])dnl
dnl dnl
case "$target" in
NONE) lt_target="$host" ;;
*) lt_target="$target" ;;
esac
# Check for any special flags to pass to ltconfig. # 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_shared" = no && libtool_flags="$libtool_flags --disable-shared"
test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" 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 # Some flags need to be propagated to the compiler or linker for good
# libtool support. # libtool support.
case "$host" in case "$lt_target" in
*-*-irix6*) *-*-irix6*)
# Find out which ABI we are using. # Find out which ABI we are using.
echo '[#]line __oline__ "configure"' > conftest.$ac_ext echo '[#]line __oline__ "configure"' > conftest.$ac_ext
@ -515,7 +527,6 @@ else
AC_MSG_RESULT(no) AC_MSG_RESULT(no)
fi fi
test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
AC_SUBST(LD)
AC_PROG_LD_GNU AC_PROG_LD_GNU
]) ])
@ -561,14 +572,13 @@ else
fi]) fi])
NM="$ac_cv_path_NM" NM="$ac_cv_path_NM"
AC_MSG_RESULT([$NM]) AC_MSG_RESULT([$NM])
AC_SUBST(NM)
]) ])
# AC_CHECK_LIBM - check for math library # AC_CHECK_LIBM - check for math library
AC_DEFUN(AC_CHECK_LIBM, AC_DEFUN(AC_CHECK_LIBM,
[AC_REQUIRE([AC_CANONICAL_HOST])dnl [AC_REQUIRE([AC_CANONICAL_HOST])dnl
LIBM= LIBM=
case "$host" in case "$lt_target" in
*-*-beos* | *-*-cygwin*) *-*-beos* | *-*-cygwin*)
# These system don't have libm # These system don't have libm
;; ;;
@ -583,31 +593,35 @@ esac
]) ])
# AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl convenience library, adds --enable-ltdl-convenience to # the libltdl convenience library and INCLTDL to the include flags for
# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor # the libltdl header and adds --enable-ltdl-convenience to the
# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed # configure arguments. Note that LIBLTDL and INCLTDL are not
# to be `${top_builddir}/libltdl'. Make sure you start DIR with # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not
# '${top_builddir}/' (note the single quotes!) if your package is not # provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed
# flat, and, if you're not using automake, define top_builddir as # with '${top_builddir}/' and INCLTDL will be prefixed with
# appropriate in the Makefiles. # '${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 AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
case "$enable_ltdl_convenience" in case "$enable_ltdl_convenience" in
no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;;
"") enable_ltdl_convenience=yes "") enable_ltdl_convenience=yes
ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;;
esac esac
LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la
INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
]) ])
# AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for
# the libltdl installable library, and adds --enable-ltdl-install to # the libltdl installable library and INCLTDL to the include flags for
# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor # the libltdl header and adds --enable-ltdl-install to the configure
# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed # arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is
# to be `${top_builddir}/libltdl'. Make sure you start DIR with # AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed
# '${top_builddir}/' (note the single quotes!) if your package is not # libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will
# flat, and, if you're not using automake, define top_builddir as # be prefixed with '${top_builddir}/' and INCLTDL will be prefixed
# appropriate in the Makefiles. # 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. # 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_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl
AC_CHECK_LIB(ltdl, main, 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 if test x"$enable_ltdl_install" = x"yes"; then
ac_configure_args="$ac_configure_args --enable-ltdl-install" ac_configure_args="$ac_configure_args --enable-ltdl-install"
LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la
INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl'])
else else
ac_configure_args="$ac_configure_args --enable-ltdl-install=no" ac_configure_args="$ac_configure_args --enable-ltdl-install=no"
LIBLTDL="-lltdl" LIBLTDL="-lltdl"

312
config.guess vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh #! /bin/sh
# Attempt to guess a canonical system name. # 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. # Free Software Foundation, Inc.
# #
# This file is free software; you can redistribute it and/or modify it # 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. # the same distribution terms that you use for the rest of that program.
# Written by Per Bothner <bothner@cygnus.com>. # Written by Per Bothner <bothner@cygnus.com>.
# The master version of this file is at the FSF in /home/gd/gnu/lib. # Please send patches to <config-patches@gnu.org>.
# Please send patches to the Autoconf mailing list <autoconf@gnu.org>.
# #
# This script attempts to guess a canonical system name similar 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 # 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. # Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in 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:*:*) alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` 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. # A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r. # 1.2 uses "1.2" for uname -r.
cat <<EOF >$dummy.s cat <<EOF >$dummy.s
.data
\$Lformat:
.byte 37,100,45,37,120,10,0 # "%d-%x\n"
.text
.globl main .globl main
.align 4
.ent main .ent main
main: main:
.frame \$30,0,\$26,0 .frame \$30,16,\$26,0
.prologue 0 ldgp \$29,0(\$27)
.long 0x47e03d80 # implver $0 .prologue 1
lda \$2,259 .long 0x47e03d80 # implver \$0
.long 0x47e20c21 # amask $2,$1 lda \$2,-1
srl \$1,8,\$2 .long 0x47e20c21 # amask \$2,\$1
sll \$2,2,\$2 lda \$16,\$Lformat
sll \$0,3,\$0 mov \$0,\$17
addl \$1,\$0,\$0 not \$1,\$18
addl \$2,\$0,\$0 jsr \$26,printf
ret \$31,(\$26),1 ldgp \$29,0(\$26)
mov 0,\$16
jsr \$26,exit
.end main .end main
EOF EOF
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then if test "$?" = 0 ; then
./$dummy case `./$dummy` in
case "$?" in 0-0)
7)
UNAME_MACHINE="alpha" UNAME_MACHINE="alpha"
;; ;;
15) 1-0)
UNAME_MACHINE="alphaev5" UNAME_MACHINE="alphaev5"
;; ;;
14) 1-1)
UNAME_MACHINE="alphaev56" UNAME_MACHINE="alphaev56"
;; ;;
10) 1-101)
UNAME_MACHINE="alphapca56" UNAME_MACHINE="alphapca56"
;; ;;
16) 2-303)
UNAME_MACHINE="alphaev6" UNAME_MACHINE="alphaev6"
;; ;;
2-307)
UNAME_MACHINE="alphaev67"
;;
esac esac
fi fi
rm -f $dummy.s $dummy rm -f $dummy.s $dummy
@ -129,9 +175,6 @@ EOF
Amiga*:UNIX_System_V:4.0:*) Amiga*:UNIX_System_V:4.0:*)
echo m68k-cbm-sysv4 echo m68k-cbm-sysv4
exit 0;; exit 0;;
amiga:NetBSD:*:*)
echo m68k-cbm-netbsd${UNAME_RELEASE}
exit 0 ;;
amiga:OpenBSD:*:*) amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE} echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
@ -156,12 +199,12 @@ EOF
wgrisc:OpenBSD:*:*) wgrisc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE} echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
*:OS/390:*:*)
echo i370-ibm-openedition
exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE} echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;; exit 0;;
arm32:NetBSD:*:*)
echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
SR2?01:HI-UX/MPP:*:*) SR2?01:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp echo hppa1.1-hitachi-hiuxmpp
exit 0;; exit 0;;
@ -218,15 +261,12 @@ EOF
aushp:SunOS:*:*) aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE} echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
atari*:NetBSD:*:*)
echo m68k-atari-netbsd${UNAME_RELEASE}
exit 0 ;;
atari*:OpenBSD:*:*) atari*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE} echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
# The situation for MiNT is a little confusing. The machine name # The situation for MiNT is a little confusing. The machine name
# can be virtually everything (everything which is not # 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" # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
# to the lowercase version "mint" (or "freemint"). Finally # to the lowercase version "mint" (or "freemint"). Finally
# the system name "TOS" denotes a system which is actually not # the system name "TOS" denotes a system which is actually not
@ -250,15 +290,9 @@ EOF
*:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
echo m68k-unknown-mint${UNAME_RELEASE} echo m68k-unknown-mint${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
sun3*:NetBSD:*:*)
echo m68k-sun-netbsd${UNAME_RELEASE}
exit 0 ;;
sun3*:OpenBSD:*:*) sun3*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE} echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
mac68k:NetBSD:*:*)
echo m68k-apple-netbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:OpenBSD:*:*) mac68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE} echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
@ -271,9 +305,6 @@ EOF
powerpc:machten:*:*) powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE} echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
macppc:NetBSD:*:*)
echo powerpc-apple-netbsd${UNAME_RELEASE}
exit 0 ;;
RISC*:Mach:*:*) RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3 echo mips-dec-mach_bsd4.3
exit 0 ;; exit 0 ;;
@ -289,6 +320,7 @@ EOF
mips:*:*:UMIPS | mips:*:*:RISCos) mips:*:*:UMIPS | mips:*:*:RISCos)
sed 's/^ //' << EOF >$dummy.c sed 's/^ //' << EOF >$dummy.c
#ifdef __cplusplus #ifdef __cplusplus
#include <stdio.h> /* for printf() prototype */
int main (int argc, char *argv[]) { int main (int argc, char *argv[]) {
#else #else
int main (argc, argv) int argc; char *argv[]; { int main (argc, argv) int argc; char *argv[]; {
@ -328,15 +360,18 @@ EOF
AViiON:dgux:*:*) AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures # DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p` UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \ then
-o ${TARGET_BINARY_INTERFACE}x = x ] ; then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
[ ${TARGET_BINARY_INTERFACE}x = x ]
then
echo m88k-dg-dgux${UNAME_RELEASE} echo m88k-dg-dgux${UNAME_RELEASE}
else else
echo m88k-dg-dguxbcs${UNAME_RELEASE} echo m88k-dg-dguxbcs${UNAME_RELEASE}
fi
else
echo i586-dg-dgux${UNAME_RELEASE}
fi fi
else echo i586-dg-dgux${UNAME_RELEASE}
fi
exit 0 ;; exit 0 ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3) M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3 echo m88k-dolphin-sysv3
@ -402,7 +437,7 @@ EOF
ibmrt:4.4BSD:*|romp-ibm:BSD:*) ibmrt:4.4BSD:*|romp-ibm:BSD:*)
echo romp-ibm-bsd4.4 echo romp-ibm-bsd4.4
exit 0 ;; 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 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
exit 0 ;; # report: romp-ibm BSD 4.3 exit 0 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*) *:BOSX:*:*)
@ -423,6 +458,8 @@ EOF
9000/[34]?? ) HP_ARCH=m68k ;; 9000/[34]?? ) HP_ARCH=m68k ;;
9000/[678][0-9][0-9]) 9000/[678][0-9][0-9])
sed 's/^ //' << EOF >$dummy.c sed 's/^ //' << EOF >$dummy.c
#define _HPUX_SOURCE
#include <stdlib.h> #include <stdlib.h>
#include <unistd.h> #include <unistd.h>
@ -453,7 +490,7 @@ EOF
exit (0); exit (0);
} }
EOF 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 rm -f $dummy.c $dummy
esac esac
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
@ -547,10 +584,13 @@ EOF
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
exit 0 ;; exit 0 ;;
CRAY*TS:*:*:*) CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE} echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
exit 0 ;; exit 0 ;;
CRAY*T3E:*:*:*) 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 ;; exit 0 ;;
CRAY-2:*:*:*) CRAY-2:*:*:*)
echo cray2-cray-unicos echo cray2-cray-unicos
@ -563,13 +603,10 @@ EOF
F301:UNIX_System_V:*:*) F301:UNIX_System_V:*:*)
echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'` echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
exit 0 ;; exit 0 ;;
hp3[0-9][05]:NetBSD:*:*)
echo m68k-hp-netbsd${UNAME_RELEASE}
exit 0 ;;
hp300:OpenBSD:*:*) hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE} echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;; 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} echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
sparc*:BSD/OS:*:*) sparc*:BSD/OS:*:*)
@ -579,17 +616,8 @@ EOF
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
exit 0 ;; exit 0 ;;
*:FreeBSD:*:*) *: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/[-(].*//'` echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit 0 ;; exit 0 ;;
*:NetBSD:*:*)
echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
*:OpenBSD:*:*) *:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;; exit 0 ;;
@ -618,12 +646,6 @@ EOF
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;; exit 0 ;;
*:Linux:*:*) *: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 # 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 # first see if it will tell us. cd to the root directory to prevent
@ -636,12 +658,43 @@ EOF
s/ .*// s/ .*//
p'` p'`
case "$ld_supported_emulations" in case "$ld_supported_emulations" in
i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;; *ia64)
i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;; echo "${UNAME_MACHINE}-unknown-linux"
sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; exit 0
armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; ;;
m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; i?86linux)
elf32ppc) 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 # Determine Lib Version
cat >$dummy.c <<EOF cat >$dummy.c <<EOF
#include <features.h> #include <features.h>
@ -668,49 +721,61 @@ EOF
if test "$?" = 0 ; then if test "$?" = 0 ; then
LIBC="libc1" LIBC="libc1"
fi fi
fi fi
rm -f $dummy.c $dummy rm -f $dummy.c $dummy
echo powerpc-unknown-linux-gnu${LIBC} ; exit 0 ;; echo powerpc-unknown-linux-gnu${LIBC}
exit 0
;;
esac esac
if test "${UNAME_MACHINE}" = "alpha" ; then if test "${UNAME_MACHINE}" = "alpha" ; then
sed 's/^ //' <<EOF >$dummy.s cat <<EOF >$dummy.s
.globl main .data
.ent main \$Lformat:
main: .byte 37,100,45,37,120,10,0 # "%d-%x\n"
.frame \$30,0,\$26,0
.prologue 0 .text
.long 0x47e03d80 # implver $0 .globl main
lda \$2,259 .align 4
.long 0x47e20c21 # amask $2,$1 .ent main
srl \$1,8,\$2 main:
sll \$2,2,\$2 .frame \$30,16,\$26,0
sll \$0,3,\$0 ldgp \$29,0(\$27)
addl \$1,\$0,\$0 .prologue 1
addl \$2,\$0,\$0 .long 0x47e03d80 # implver \$0
ret \$31,(\$26),1 lda \$2,-1
.end main .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 EOF
LIBC="" LIBC=""
$CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null
if test "$?" = 0 ; then if test "$?" = 0 ; then
./$dummy case `./$dummy` in
case "$?" in 0-0)
7)
UNAME_MACHINE="alpha" UNAME_MACHINE="alpha"
;; ;;
15) 1-0)
UNAME_MACHINE="alphaev5" UNAME_MACHINE="alphaev5"
;; ;;
14) 1-1)
UNAME_MACHINE="alphaev56" UNAME_MACHINE="alphaev56"
;; ;;
10) 1-101)
UNAME_MACHINE="alphapca56" UNAME_MACHINE="alphapca56"
;; ;;
16) 2-303)
UNAME_MACHINE="alphaev6" UNAME_MACHINE="alphaev6"
;; ;;
2-307)
UNAME_MACHINE="alphaev67"
;;
esac esac
objdump --private-headers $dummy | \ objdump --private-headers $dummy | \
@ -724,6 +789,7 @@ EOF
elif test "${UNAME_MACHINE}" = "mips" ; then elif test "${UNAME_MACHINE}" = "mips" ; then
cat >$dummy.c <<EOF cat >$dummy.c <<EOF
#ifdef __cplusplus #ifdef __cplusplus
#include <stdio.h> /* for printf() prototype */
int main (int argc, char *argv[]) { int main (int argc, char *argv[]) {
#else #else
int main (argc, argv) int argc; char *argv[]; { int main (argc, argv) int argc; char *argv[]; {
@ -739,6 +805,8 @@ EOF
EOF EOF
$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0
rm -f $dummy.c $dummy rm -f $dummy.c $dummy
elif test "${UNAME_MACHINE}" = "s390"; then
echo s390-ibm-linux && exit 0
else else
# Either a pre-BFD a.out linker (linux-gnuoldld) # Either a pre-BFD a.out linker (linux-gnuoldld)
# or one that does not give us useful --help. # or one that does not give us useful --help.
@ -760,6 +828,7 @@ EOF
cat >$dummy.c <<EOF cat >$dummy.c <<EOF
#include <features.h> #include <features.h>
#ifdef __cplusplus #ifdef __cplusplus
#include <stdio.h> /* for printf() prototype */
int main (int argc, char *argv[]) { int main (int argc, char *argv[]) {
#else #else
int main (argc, argv) int argc; char *argv[]; { int main (argc, argv) int argc; char *argv[]; {
@ -797,19 +866,21 @@ EOF
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;; exit 0 ;;
i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) 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 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 else
echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
fi fi
exit 0 ;; exit 0 ;;
i?86:*:5:7*) i?86:*:5:7*)
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` # Fixed at (any) Pentium or better
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 UNAME_MACHINE=i586
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) && UNAME_MACHINE=i586 if [ ${UNAME_SYSTEM} = "UnixWare" ] ; then
(/bin/uname -X|egrep '^Machine.*Pent.*II' >/dev/null) && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-sco-sysv${UNAME_RELEASE}uw${UNAME_VERSION}
(/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) && UNAME_MACHINE=i585 else
echo ${UNAME_MACHINE}-${UNAME_SYSTEM}${UNAME_VERSION}-sysv${UNAME_RELEASE} echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
fi
exit 0 ;; exit 0 ;;
i?86:*:3.2:*) i?86:*:3.2:*)
if test -f /usr/options/cb.name; then if test -f /usr/options/cb.name; then
@ -829,7 +900,11 @@ EOF
echo ${UNAME_MACHINE}-pc-sysv32 echo ${UNAME_MACHINE}-pc-sysv32
fi fi
exit 0 ;; exit 0 ;;
i?86:*DOS:*:*)
echo ${UNAME_MACHINE}-pc-msdosdjgpp
exit 0 ;;
pc:*:*:*) pc:*:*:*)
# Left here for compatibility:
# uname -m prints for DJGPP always 'pc', but it prints nothing about # uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386. # the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp echo i386-pc-msdosdjgpp
@ -943,6 +1018,27 @@ EOF
*:Rhapsody:*:*) *:Rhapsody:*:*)
echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
exit 0 ;; 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 esac
#echo '(No uname command or uname output not recognized.)' 1>&2 #echo '(No uname command or uname output not recognized.)' 1>&2

95
config.sub vendored
View File

@ -1,6 +1,8 @@
#! /bin/sh #! /bin/sh
# Configuration validation subroutine script, version 1.1. # 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. # This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME 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. # 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 # configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program. # the same distribution terms that you use for the rest of that program.
# Written by Per Bothner <bothner@cygnus.com>.
# Please send patches to <config-patches@gnu.org>.
#
# Configuration subroutine to validate and canonicalize a configuration type. # Configuration subroutine to validate and canonicalize a configuration type.
# Supply the specified configuration type as an argument. # Supply the specified configuration type as an argument.
# If it is invalid, we print an error message on stderr and exit with code 1. # 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. # Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in case $maybe_os in
linux-gnu*) nto-qnx* | linux-gnu*)
os=-$maybe_os os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;; ;;
@ -105,7 +110,7 @@ case $os in
-scout) -scout)
;; ;;
-wrs) -wrs)
os=vxworks os=-vxworks
basic_machine=$1 basic_machine=$1
;; ;;
-hiux*) -hiux*)
@ -156,27 +161,34 @@ case $os in
-psos*) -psos*)
os=-psos os=-psos
;; ;;
-mint | -mint[0-9]*)
basic_machine=m68k-atari
os=-mint
;;
esac esac
# Decode aliases for certain CPU-COMPANY combinations. # Decode aliases for certain CPU-COMPANY combinations.
case $basic_machine in case $basic_machine in
# Recognize the basic CPU types without company name. # Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below. # 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 \ | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \
| 580 | i960 | h8300 \ | 580 | i960 | h8300 \
| x86 | ppcbe | mipsbe | mipsle | shbe | shle | armbe | armle \
| hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ | 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 \ | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \
| 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \
| mips64orion | mips64orionel | mipstx39 | mipstx39el \ | mips64orion | mips64orionel | mipstx39 | mipstx39el \
| mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \
| mips64vr5000 | miprs64vr5000el \ | mips64vr5000 | miprs64vr5000el | mcore \
| sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \
| thumb | d10v) | thumb | d10v | fr30 | avr)
basic_machine=$basic_machine-unknown 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' # We use `pc' rather than `unknown'
@ -191,23 +203,28 @@ case $basic_machine in
exit 1 exit 1
;; ;;
# Recognize the basic CPU types with company name. # 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]* \ | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
| power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \
| xmp-* | ymp-* \ | xmp-* | ymp-* \
| hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \ | x86-* | ppcbe-* | mipsbe-* | mipsle-* | shbe-* | shle-* | armbe-* | armle-* \
| alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \ | 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-* \ | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \
| clipper-* | orion-* \ | clipper-* | orion-* \
| sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
| sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \
| mips64el-* | mips64orion-* | mips64orionel-* \ | mips64el-* | mips64orion-* | mips64orionel-* \
| mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \
| mipstx39-* | mipstx39el-* \ | mipstx39-* | mipstx39el-* | mcore-* \
| f301-* | armv*-* | t3e-* \ | f301-* | armv*-* | s390-* | sv1-* | t3e-* \
| m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ | 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 # Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS. # for a CPU type and a company and sometimes even an OS.
@ -425,7 +442,6 @@ case $basic_machine in
;; ;;
i370-ibm* | ibm*) i370-ibm* | ibm*)
basic_machine=i370-ibm basic_machine=i370-ibm
os=-mvs
;; ;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2? # I'm not sure what "Sysv32" means. Should this be sysv3.2?
i[34567]86v32) i[34567]86v32)
@ -488,7 +504,7 @@ case $basic_machine in
miniframe) miniframe)
basic_machine=m68000-convergent basic_machine=m68000-convergent
;; ;;
*mint | *MiNT) *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
basic_machine=m68k-atari basic_machine=m68k-atari
os=-mint os=-mint
;; ;;
@ -506,6 +522,10 @@ case $basic_machine in
mips3*) mips3*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
;; ;;
mmix*)
basic_machine=mmix-knuth
os=-mmixware
;;
monitor) monitor)
basic_machine=m68k-rom68k basic_machine=m68k-rom68k
os=-coff os=-coff
@ -514,6 +534,10 @@ case $basic_machine in
basic_machine=i386-unknown basic_machine=i386-unknown
os=-msdos os=-msdos
;; ;;
mvs)
basic_machine=i370-ibm
os=-mvs
;;
ncr3000) ncr3000)
basic_machine=i486-ncr basic_machine=i486-ncr
os=-sysv4 os=-sysv4
@ -523,7 +547,7 @@ case $basic_machine in
os=-netbsd os=-netbsd
;; ;;
netwinder) netwinder)
basic_machine=armv4l-corel basic_machine=armv4l-rebel
os=-linux os=-linux
;; ;;
news | news700 | news800 | news900) news | news700 | news800 | news900)
@ -574,6 +598,9 @@ case $basic_machine in
np1) np1)
basic_machine=np1-gould basic_machine=np1-gould
;; ;;
nsr-tandem)
basic_machine=nsr-tandem
;;
op50n-* | op60c-*) op50n-* | op60c-*)
basic_machine=hppa1.1-oki basic_machine=hppa1.1-oki
os=-proelf os=-proelf
@ -718,6 +745,10 @@ case $basic_machine in
sun386 | sun386i | roadrunner) sun386 | sun386i | roadrunner)
basic_machine=i386-sun basic_machine=i386-sun
;; ;;
sv1)
basic_machine=sv1-cray
os=-unicos
;;
symmetry) symmetry)
basic_machine=i386-sequent basic_machine=i386-sequent
os=-dynix os=-dynix
@ -907,12 +938,25 @@ case $os in
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ | -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. # 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* \ -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
| -windows* | -osx | -abug | -netware* | -os9* | -beos* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* \
| -macos* | -mpw* | -magic* | -mon960* | -lnews*) | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
;; ;;
-mac*) -mac*)
os=`echo $os | sed -e 's|mac|macos|'` os=`echo $os | sed -e 's|mac|macos|'`
@ -926,6 +970,12 @@ case $os in
-sunos6*) -sunos6*)
os=`echo $os | sed -e 's|sunos6|solaris3|'` os=`echo $os | sed -e 's|sunos6|solaris3|'`
;; ;;
-opened*)
os=-openedition
;;
-wince*)
os=-wince
;;
-osfrose*) -osfrose*)
os=-osfrose os=-osfrose
;; ;;
@ -950,6 +1000,9 @@ case $os in
-ns2 ) -ns2 )
os=-nextstep2 os=-nextstep2
;; ;;
-nsk)
os=-nsk
;;
# Preserve the version number of sinix5. # Preserve the version number of sinix5.
-sinix5.*) -sinix5.*)
os=`echo $os | sed -e 's|sinix|sysv|'` os=`echo $os | sed -e 's|sinix|sysv|'`
@ -1012,7 +1065,7 @@ case $basic_machine in
*-acorn) *-acorn)
os=-riscix1.2 os=-riscix1.2
;; ;;
arm*-corel) arm*-rebel)
os=-linux os=-linux
;; ;;
arm*-semi) arm*-semi)
@ -1186,7 +1239,7 @@ case $basic_machine in
-genix*) -genix*)
vendor=ns vendor=ns
;; ;;
-mvs*) -mvs* | -opened*)
vendor=ibm vendor=ibm
;; ;;
-ptx*) -ptx*)

751
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
AC_INIT(lib/dialchk.c) AC_INIT(lib/dialchk.c)
AM_INIT_AUTOMAKE(shadow, 20000902) AM_INIT_AUTOMAKE(shadow, 20001012)
AM_CONFIG_HEADER(config.h) AM_CONFIG_HEADER(config.h)
dnl Some hacks... dnl Some hacks...
@ -9,8 +9,6 @@ test "$prefix" = "/usr" && exec_prefix=""
test "$CFLAGS" = "" && CFLAGS="-O2 -Wall" test "$CFLAGS" = "" && CFLAGS="-O2 -Wall"
test "$LDFLAGS" = "" && LDFLAGS="-s" test "$LDFLAGS" = "" && LDFLAGS="-s"
ALL_LINGUAS="el fr pl sv"
dnl Checks for programs. dnl Checks for programs.
AC_PROG_CC AC_PROG_CC
AC_ISC_POSIX AC_ISC_POSIX
@ -298,14 +296,13 @@ AC_SUBST(LTLIBOBJS)
dnl LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/.lo/g'` dnl LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/.lo/g'`
dnl AC_SUBST(LTALLOCA) dnl AC_SUBST(LTALLOCA)
ALL_LINGUAS="cs el fr pl sv"
AM_GNU_GETTEXT AM_GNU_GETTEXT
dnl AC_LINK_FILES($nls_cv_header_libgt, $nls_cv_header_intl)
AC_OUTPUT(libmisc/Makefile man/Makefile man/pl/Makefile AC_OUTPUT(libmisc/Makefile man/Makefile man/pl/Makefile
lib/Makefile src/Makefile Makefile lib/Makefile src/Makefile Makefile
contrib/Makefile debian/Makefile doc/Makefile etc/Makefile contrib/Makefile debian/Makefile doc/Makefile etc/Makefile
intl/Makefile intl/po2tbl.sed po/Makefile.in intl/Makefile intl/po2tbl.sed po/Makefile.in
etc/pam.d/Makefile old/Makefile etc/pam.d/Makefile old/Makefile
redhat/Makefile redhat/shadow-utils.spec, shadow-utils.spec,
echo timestamp > stamp-h) echo timestamp > stamp-h)

View File

@ -2,5 +2,5 @@
# and also cooperate to make a distribution for `make dist' # and also cooperate to make a distribution for `make dist'
EXTRA_DIST = README adduser.c adduser-old.c adduser.sh adduser2.sh \ EXTRA_DIST = README adduser.c adduser-old.c adduser.sh adduser2.sh \
atudel groupmems.shar pwdauth.c rpasswd.c shadow-anonftp.patch \ atudel groupmems.shar pwdauth.c shadow-anonftp.patch \
udbachk.v012.tgz udbachk.tgz

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -105,7 +104,7 @@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
l = @l@ 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 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h CONFIG_HEADER = ../config.h
@ -115,7 +114,7 @@ DIST_COMMON = README Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
@ -138,7 +137,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -167,7 +166,7 @@ uninstall: uninstall-am
all-am: Makefile all-am: Makefile
all-redirect: all-am all-redirect: all-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs:

View File

@ -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 <adam@shack.com>. */
/* Rewritten by Joshua Cowan <jcowan@hermit.reslife.okstate.edu>. */
/* 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 <stdio.h>
#include <getopt.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <syslog.h>
#include <ctype.h>
#include <pwd.h>
#include <stdarg.h>
#include <sys/types.h>
#include <sys/wait.h>
/* 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);
}
}

BIN
contrib/udbachk.tgz Normal file

Binary file not shown.

Binary file not shown.

70
debian/FILES vendored
View File

@ -1,70 +0,0 @@
groups
groups.1
id
id.1
pw_auth.3
scologin
shadow.3
sulogin
sulogin.8
login faillog
login faillog.5
login faillog.8
login lastlog
login lastlog.8
login login
login login.1
login login.access.5
login login.defs.5
login logoutd
login logoutd.8
login newgrp
login newgrp.1
login porttime.5
passwd chage
passwd chage.1
passwd chfn
passwd chfn.1
passwd chpasswd
passwd chpasswd.8
passwd chsh
passwd chsh.1
passwd dpasswd
passwd dpasswd.8
passwd expiry
passwd gpasswd
passwd gpasswd.1
passwd groupadd
passwd groupadd.8
passwd groupdel
passwd groupdel.8
passwd groupmod
passwd groupmod.8
passwd grpck
passwd grpck.8
passwd grpconv
passwd grpunconv
passwd mkpasswd
passwd mkpasswd.8
passwd newusers
passwd newusers.8
passwd passwd
passwd passwd.1
passwd passwd.5
passwd pwauth.8
passwd pwck
passwd pwck.8
passwd pwconv
passwd pwconv.8
passwd pwunconv
passwd pwunconv.8
passwd shadow.5
passwd useradd
passwd useradd.8
passwd userdel
passwd userdel.8
passwd usermod
passwd usermod.8
secure-su su
secure-su su.1
secure-su suauth.5

2
debian/Makefile.am vendored
View File

@ -1,7 +1,7 @@
# This is a dummy Makefile.am to get automake work flawlessly, # This is a dummy Makefile.am to get automake work flawlessly,
# and also cooperate to make a distribution for `make dist' # and also cooperate to make a distribution for `make dist'
EXTRA_DIST = FILES changelog checksums control control.gnu control.linux \ EXTRA_DIST = changelog checksums control control.gnu control.linux \
login.conffiles login.copyright login.postinst login.postrm login.preinst \ login.conffiles login.copyright login.postinst login.postrm login.preinst \
login.prerm logoutd.init passwd.conffiles passwd.copyright \ login.prerm logoutd.init passwd.conffiles passwd.copyright \
passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules \ passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules \

15
debian/Makefile.in vendored
View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -105,7 +104,7 @@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
l = @l@ l = @l@
EXTRA_DIST = FILES changelog checksums control control.gnu control.linux login.conffiles login.copyright login.postinst login.postrm login.preinst login.prerm logoutd.init passwd.conffiles passwd.copyright passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules secure-su.README secure-su.conffiles secure-su.copyright secure-su.postrm secure-su.preinst securetty tar.c EXTRA_DIST = changelog checksums control control.gnu control.linux login.conffiles login.copyright login.postinst login.postrm login.preinst login.prerm logoutd.init passwd.conffiles passwd.copyright passwd.cron passwd.init passwd.postinst passwd.postrm porttime rules secure-su.README secure-su.conffiles secure-su.copyright secure-su.postrm secure-su.preinst securetty tar.c
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h CONFIG_HEADER = ../config.h
@ -115,7 +114,7 @@ DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
@ -138,7 +137,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -167,7 +166,7 @@ uninstall: uninstall-am
all-am: Makefile all-am: Makefile
all-redirect: all-am all-redirect: all-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs:

View File

@ -11,9 +11,9 @@ Keywords: login passwd security shadow
Author: jfh@austin.ibm.com (Julianne F. Haugh) Author: jfh@austin.ibm.com (Julianne F. Haugh)
Maintained-by: kloczek@rudy.mif.pg.gda.pl (Tomasz Kloczko) Maintained-by: kloczek@rudy.mif.pg.gda.pl (Tomasz Kloczko)
marekm@linux.org.pl (Marek Michalkiewicz) - previous maintainer 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 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 ? Original-site: ftp.uu.net ?
Platforms: Linux, SunOS, ... Platforms: Linux, SunOS, ...
Copying-policy: FRS Copying-policy: FRS

View File

@ -1,7 +1,7 @@
# This is a dummy Makefile.am to get automake work flawlessly, # This is a dummy Makefile.am to get automake work flawlessly,
# and also cooperate to make a distribution for `make dist' # 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.limits README.linux README.mirrors README.nls README.pam \
README.platforms README.shadow-paper README.sun4 \ README.platforms README.shadow-paper README.sun4 \
WISHLIST console.c.spec.txt cracklib26.diff WISHLIST console.c.spec.txt cracklib26.diff

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -105,7 +104,7 @@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
l = @l@ 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 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h CONFIG_HEADER = ../config.h
@ -115,7 +114,7 @@ DIST_COMMON = README INSTALL Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
@ -138,7 +137,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -167,7 +166,7 @@ uninstall: uninstall-am
all-am: Makefile all-am: Makefile
all-redirect: all-am all-redirect: all-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs:

View File

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

View File

@ -1,7 +1,6 @@
# This is a dummy Makefile.am to get automake work flawlessly, # This is a dummy Makefile.am to get automake work flawlessly,
# and also cooperate to make a distribution for `make dist' # and also cooperate to make a distribution for `make dist'
EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux \ EXTRA_DIST = limits login.access login.defs login.defs.hurd login.defs.linux
shells suauth
SUBDIRS = pam.d SUBDIRS = pam.d

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -105,8 +104,7 @@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
l = @l@ 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 SUBDIRS = pam.d
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
@ -117,7 +115,7 @@ DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
@ -226,7 +224,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -265,7 +263,7 @@ uninstall: uninstall-recursive
all-am: Makefile all-am: Makefile
all-redirect: all-recursive all-redirect: all-recursive
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs-recursive installdirs: installdirs-recursive
installdirs-am: installdirs-am:

View File

@ -1,4 +1,4 @@
# This is a dummy Makefile.am to get automake work flawlessly, # This is a dummy Makefile.am to get automake work flawlessly,
# and also cooperate to make a distribution for `make dist' # and also cooperate to make a distribution for `make dist'
EXTRA_DIST = passwd su EXTRA_DIST = passwd su shadow

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -49,9 +49,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -79,7 +80,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -92,7 +92,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -105,7 +104,7 @@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
l = @l@ l = @l@
EXTRA_DIST = passwd su EXTRA_DIST = passwd su shadow
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../../config.h CONFIG_HEADER = ../../config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
@ -114,7 +113,7 @@ DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
@ -137,7 +136,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -166,7 +165,7 @@ uninstall: uninstall-am
all-am: Makefile all-am: Makefile
all-redirect: all-am all-redirect: all-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs:

View File

@ -1,5 +1,3 @@
#%PAM-1.0 #%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 # /etc/pam.d/passwd - sample PAM config file for the `passwd' service
password required pam_unix_passwd.so password required pam_unix_passwd.so

6
etc/pam.d/shadow Normal file
View File

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

View File

@ -1,6 +1,4 @@
#%PAM-1.0 #%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 # /etc/pam.d/su - sample PAM config file for the `su' service
auth sufficient pam_rootok.so auth sufficient pam_rootok.so
auth required pam_unix_auth.so auth required pam_unix_auth.so

View File

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

View File

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

View File

@ -114,26 +114,26 @@ install-exec: all
if test "$(PACKAGE)" = "gettext" \ if test "$(PACKAGE)" = "gettext" \
&& test '@INTLOBJS@' = '$(GETTOBJS)'; then \ && test '@INTLOBJS@' = '$(GETTOBJS)'; then \
if test -r $(MKINSTALLDIRS); then \ if test -r $(MKINSTALLDIRS); then \
$(MKINSTALLDIRS) $(libdir) $(includedir); \ $(MKINSTALLDIRS) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
else \ else \
$(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \ $(top_srcdir)/mkinstalldirs $(DESTDIR)$(libdir) $(DESTDIR)$(includedir); \
fi; \ fi; \
$(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \ $(INSTALL_DATA) intlh.inst $(DESTDIR)$(includedir)/libintl.h; \
$(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \ $(INSTALL_DATA) libintl.a $(DESTDIR)$(libdir)/libintl.a; \
else \ else \
: ; \ : ; \
fi fi
install-data: all install-data: all
if test "$(PACKAGE)" = "gettext"; then \ if test "$(PACKAGE)" = "gettext"; then \
if test -r $(MKINSTALLDIRS); then \ if test -r $(MKINSTALLDIRS); then \
$(MKINSTALLDIRS) $(gettextsrcdir); \ $(MKINSTALLDIRS) $(DESTDIR)$(gettextsrcdir); \
else \ else \
$(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ $(top_srcdir)/mkinstalldirs $(DESTDIR)$(gettextsrcdir); \
fi; \ fi; \
$(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \ $(INSTALL_DATA) VERSION $(DESTDIR)$(gettextsrcdir)/VERSION; \
dists="$(DISTFILES.common)"; \ dists="$(DISTFILES.common)"; \
for file in $$dists; do \ for file in $$dists; do \
$(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \ $(INSTALL_DATA) $(srcdir)/$$file $(DESTDIR)$(gettextsrcdir)/$$file; \
done; \ done; \
else \ else \
: ; \ : ; \
@ -145,7 +145,7 @@ installcheck:
uninstall: uninstall:
dists="$(DISTFILES.common)"; \ dists="$(DISTFILES.common)"; \
for file in $$dists; do \ for file in $$dists; do \
rm -f $(gettextsrcdir)/$$file; \ rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
done done
info dvi: info dvi:

View File

@ -21,11 +21,11 @@
#include <sys/types.h> #include <sys/types.h>
#if defined __GNUC__ && !defined C_ALLOCA #ifdef __GNUC__
# define alloca __builtin_alloca # define alloca __builtin_alloca
# define HAVE_ALLOCA 1 # define HAVE_ALLOCA 1
#else #else
# if (defined HAVE_ALLOCA_H || defined _LIBC) && !defined C_ALLOCA # if defined HAVE_ALLOCA_H || defined _LIBC
# include <alloca.h> # include <alloca.h>
# else # else
# ifdef _AIX # ifdef _AIX
@ -217,24 +217,6 @@ struct block_list
# define DCGETTEXT dcgettext__ # define DCGETTEXT dcgettext__
#endif #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 /* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY
locale. */ locale. */
char * char *
@ -259,12 +241,9 @@ DCGETTEXT (domainname, msgid, category)
if (msgid == NULL) if (msgid == NULL)
return 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 /* 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 CATEGORY is not LC_MESSAGES this might not make much sense but the
definition left this undefined. */ defintion left this undefined. */
if (domainname == NULL) if (domainname == NULL)
domainname = _nl_current_default_domain; domainname = _nl_current_default_domain;
@ -294,7 +273,7 @@ DCGETTEXT (domainname, msgid, category)
size_t path_max; size_t path_max;
char *ret; char *ret;
path_max = (unsigned int) PATH_MAX; path_max = (unsigned) PATH_MAX;
path_max += 2; /* The getcwd docs say to do this. */ path_max += 2; /* The getcwd docs say to do this. */
dirname = (char *) alloca (path_max + dirname_len); 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 /* 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) while (1)
{ {
/* Make CATEGORYVALUE point to the next element of the list. */ /* Make CATEGORYVALUE point to the next element of the list. */
@ -360,15 +339,6 @@ DCGETTEXT (domainname, msgid, category)
while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') while (categoryvalue[0] != '\0' && categoryvalue[0] != ':')
*cp++ = *categoryvalue++; *cp++ = *categoryvalue++;
*cp = '\0'; *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 /* 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; struct loaded_l10nfile *domain_file;
const char *msgid; const char *msgid;
{ {
size_t act = 0; size_t top, act, bottom;
size_t top, bottom;
struct loaded_domain *domain; struct loaded_domain *domain;
if (domain_file->decided == 0) if (domain_file->decided == 0)

View File

@ -43,17 +43,6 @@
/* @@ end of prolog @@ */ /* @@ 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 int
_nl_explode_name (name, language, modifier, territory, codeset, _nl_explode_name (name, language, modifier, territory, codeset,
normalized_codeset, special, sponsor, revision) normalized_codeset, special, sponsor, revision)
@ -85,7 +74,9 @@ _nl_explode_name (name, language, modifier, territory, codeset,
mask = 0; mask = 0;
syntax = undecided; syntax = undecided;
*language = cp = name; *language = cp = name;
cp = _nl_find_language (*language); while (cp[0] != '\0' && cp[0] != '_' && cp[0] != '@'
&& cp[0] != '+' && cp[0] != ',')
++cp;
if (*language == cp) if (*language == cp)
/* This does not make sense: language has to be specified. Use /* This does not make sense: language has to be specified. Use

View File

@ -33,9 +33,9 @@
/* Defines the so called `hashpjw' function by P.J. Weinberger /* Defines the so called `hashpjw' function by P.J. Weinberger
[see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools,
1986, 1987 Bell Telephone Laboratories, Inc.] */ 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) hash_string (str_param)
const char *str_param; const char *str_param;
{ {
@ -47,8 +47,8 @@ hash_string (str_param)
while (*str != '\0') while (*str != '\0')
{ {
hval <<= 4; hval <<= 4;
hval += (unsigned long int) *str++; hval += (unsigned long) *str++;
g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4)); g = hval & ((unsigned long) 0xf << (HASHWORDBITS - 4));
if (g != 0) if (g != 0)
{ {
hval ^= g >> (HASHWORDBITS - 8); hval ^= g >> (HASHWORDBITS - 8);

View File

@ -352,7 +352,7 @@ _nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language,
names. */ names. */
const char * const char *
_nl_normalize_codeset (codeset, name_len) _nl_normalize_codeset (codeset, name_len)
const char *codeset; const unsigned char *codeset;
size_t name_len; size_t name_len;
{ {
int len = 0; int len = 0;

View File

@ -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)); size_t name_len));
extern struct loaded_l10nfile * extern struct loaded_l10nfile *
@ -74,5 +74,3 @@ extern int _nl_explode_name PARAMS ((char *name, const char **language,
const char **special, const char **special,
const char **sponsor, const char **sponsor,
const char **revision)); const char **revision));
extern char *_nl_find_language PARAMS ((const char *name));

View File

@ -31,13 +31,8 @@
# include <unistd.h> # include <unistd.h>
#endif #endif
#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ #if (defined HAVE_MMAP && defined HAVE_MUNMAP) || defined _LIBC
|| (defined _LIBC && defined _POSIX_MAPPED_FILES)
# include <sys/mman.h> # include <sys/mman.h>
# undef HAVE_MMAP
# define HAVE_MMAP 1
#else
# undef HAVE_MMAP
#endif #endif
#include "gettext.h" #include "gettext.h"
@ -73,7 +68,10 @@ _nl_load_domain (domain_file)
size_t size; size_t size;
struct stat st; struct stat st;
struct mo_file_header *data = (struct mo_file_header *) -1; 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; int use_mmap = 0;
#endif
struct loaded_domain *domain; struct loaded_domain *domain;
domain_file->decided = 1; domain_file->decided = 1;
@ -101,7 +99,8 @@ _nl_load_domain (domain_file)
return; 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 /* 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. */ this first. If not available or it failed we try to load it. */
data = (struct mo_file_header *) mmap (NULL, size, PROT_READ, 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) if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED)
{ {
/* The magic number is wrong: not a message catalog file. */ /* 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) if (use_mmap)
munmap ((caddr_t) data, size); munmap ((caddr_t) data, size);
else else
@ -166,7 +166,10 @@ _nl_load_domain (domain_file)
domain = (struct loaded_domain *) domain_file->data; domain = (struct loaded_domain *) domain_file->data;
domain->data = (char *) data; domain->data = (char *) data;
#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
|| defined _LIBC
domain->use_mmap = use_mmap; domain->use_mmap = use_mmap;
#endif
domain->mmap_size = size; domain->mmap_size = size;
domain->must_swap = data->magic != _MAGIC; 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)); ((char *) data + W (domain->must_swap, data->hash_tab_offset));
break; break;
default: default:
/* This is an invalid revision. */ /* This is an illegal revision. */
#ifdef HAVE_MMAP #if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \
|| defined _LIBC
if (use_mmap) if (use_mmap)
munmap ((caddr_t) data, size); munmap ((caddr_t) data, size);
else else
@ -208,11 +212,9 @@ internal_function
_nl_unload_domain (domain) _nl_unload_domain (domain)
struct loaded_domain *domain; struct loaded_domain *domain;
{ {
#ifdef _POSIX_MAPPED_FILES
if (domain->use_mmap) if (domain->use_mmap)
munmap ((caddr_t) domain->data, domain->mmap_size); munmap ((caddr_t) domain->data, domain->mmap_size);
else else
#endif /* _POSIX_MAPPED_FILES */
free ((void *) domain->data); free ((void *) domain->data);
free (domain); free (domain);

View File

@ -80,9 +80,7 @@ void free ();
file and the name space must not be polluted. */ file and the name space must not be polluted. */
# define strcasecmp __strcasecmp # define strcasecmp __strcasecmp
# ifndef mempcpy # define mempcpy __mempcpy
# define mempcpy __mempcpy
# endif
# define HAVE_MEMPCPY 1 # define HAVE_MEMPCPY 1
/* We need locking here since we can be called from different places. */ /* We need locking here since we can be called from different places. */
@ -91,9 +89,6 @@ void free ();
__libc_lock_define_initialized (static, lock); __libc_lock_define_initialized (static, lock);
#endif #endif
#ifndef internal_function
# define internal_function
#endif
/* For those loosing systems which don't have `alloca' we have to add /* For those loosing systems which don't have `alloca' we have to add
some additional code emulating it. */ some additional code emulating it. */
@ -130,15 +125,6 @@ struct block_list
# define alloca(size) (malloc (size)) # define alloca(size) (malloc (size))
#endif /* have alloca */ #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 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 b) these fields must be usable as file names and so must not
be that long be that long
*/ */
char buf[BUFSIZ]; unsigned char buf[BUFSIZ];
char *alias; unsigned char *alias;
char *value; unsigned char *value;
char *cp; unsigned char *cp;
if (fgets (buf, sizeof buf, fp) == NULL) if (fgets (buf, sizeof buf, fp) == NULL)
/* EOF reached. */ /* EOF reached. */

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -45,9 +45,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -75,7 +76,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -88,7 +88,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -177,7 +176,7 @@ strstr.c
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
SOURCES = $(libshadow_a_SOURCES) $(libshadow_la_SOURCES) SOURCES = $(libshadow_a_SOURCES) $(libshadow_la_SOURCES)
OBJECTS = $(libshadow_a_OBJECTS) $(libshadow_la_OBJECTS) OBJECTS = $(libshadow_a_OBJECTS) $(libshadow_la_OBJECTS)
@ -310,50 +309,13 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \ || cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \ fi; \
done 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-am:
info: info-am info: info-am
@ -379,7 +341,7 @@ uninstall: uninstall-am
all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(HEADERS) all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(HEADERS)
all-redirect: all-am all-redirect: all-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs:
$(mkinstalldirs) $(DESTDIR)$(libdir) $(mkinstalldirs) $(DESTDIR)$(libdir)

View File

@ -10,11 +10,50 @@ localedir = $(datadir)/locale
INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib
DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@ DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@
libmisc_a_SOURCES = addgrps.c age.c basename.c chkname.c chkshell.c \ libmisc_a_SOURCES = \
chowndir.c chowntty.c console.c copydir.c entry.c env.c failure.c \ addgrps.c \
fields.c getdate.y hushed.c isexpired.c limits.c list.c log.c \ age.c \
login_access.c login_desrpc.c login_krb.c loginprompt.c mail.c motd.c \ basename.c \
myname.c obscure.c pam_pass.c pwd2spwd.c pwdcheck.c pwd_init.c rlogin.c \ chkname.c \
salt.c setugid.c setup.c setupenv.c shell.c strtoday.c suauth.c sub.c \ chkshell.c \
sulog.c ttytype.c tz.c ulimit.c utmp.c valid.c xmalloc.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

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -45,9 +45,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -75,7 +76,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -88,7 +88,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -112,7 +111,7 @@ localedir = $(datadir)/locale
INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib INCLUDES = -I$(top_srcdir)/libmisc -I$(top_srcdir)/lib
DEFS = -DLOCALEDIR=\"$(localedir)\" -I. -I$(srcdir) -I.. @DEFS@ 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 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h 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 \ 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 \ 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 \ 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 \ myname.o obscure.o pam_pass.o pwd2spwd.o pwd_init.o rlogin.o salt.o \
salt.o setugid.o setup.o setupenv.o shell.o strtoday.o suauth.o sub.o \ setugid.o setup.o setupenv.o shell.o strtoday.o suauth.o sub.o sulog.o \
sulog.o ttytype.o tz.o ulimit.o utmp.o valid.o xmalloc.o ttytype.o tz.o ulimit.o utmp.o valid.o xmalloc.o
AR = ar AR = ar
CFLAGS = @CFLAGS@ CFLAGS = @CFLAGS@
COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_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) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
SOURCES = $(libmisc_a_SOURCES) SOURCES = $(libmisc_a_SOURCES)
OBJECTS = $(libmisc_a_OBJECTS) OBJECTS = $(libmisc_a_OBJECTS)
@ -255,104 +254,13 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
|| cp -p $$d/$$file $(distdir)/$$file || :; \ || cp -p $$d/$$file $(distdir)/$$file || :; \
fi; \ fi; \
done 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-am:
info: info-am info: info-am
@ -376,7 +284,7 @@ uninstall: uninstall-am
all-am: Makefile $(LIBRARIES) $(HEADERS) all-am: Makefile $(LIBRARIES) $(HEADERS)
all-redirect: all-am all-redirect: all-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs:

View File

@ -1,69 +0,0 @@
#include <config.h>
#include "rcsid.h"
RCSID("$Id$")
#include "prototypes.h"
#include "defines.h"
#include <pwd.h>
#include "pwauth.h"
#ifdef HAVE_SHADOW_H
#include <shadow.h>
#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 */
}

235
ltconfig
View File

@ -53,7 +53,7 @@ fi
# Find the correct PATH separator. Usually this is `:', but # Find the correct PATH separator. Usually this is `:', but
# DJGPP uses `;' like DOS. # 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`} UNAME=${UNAME-`uname 2>/dev/null`}
case X$UNAME in case X$UNAME in
*-DOS) PATH_SEPARATOR=';' ;; *-DOS) PATH_SEPARATOR=';' ;;
@ -63,9 +63,9 @@ fi
# The HP-UX ksh and POSIX shell print the target directory to stdout # The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set. # 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 # 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 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, ... # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
@ -169,10 +169,10 @@ progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'`
# Constants: # Constants:
PROGRAM=ltconfig PROGRAM=ltconfig
PACKAGE=libtool PACKAGE=libtool
VERSION=1.3.3 VERSION=1.3.5
TIMESTAMP=" (1.385.2.181 1999/07/02 15:49:11)" TIMESTAMP=" (1.385.2.206 2000/05/27 11:12:27)"
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.c 1>&5' ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.c $LIBS 1>&5' ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
rm="rm -f" rm="rm -f"
help="Try \`$progname --help' for more information." 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. # Only set LANG and LC_ALL to C if already set.
# These must not be set unconditionally because not all systems understand # These must not be set unconditionally because not all systems understand
# e.g. LANG=C (notably SCO). # e.g. LANG=C (notably SCO).
if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi
if test "${LANG+set}" = set; then LANG=C; export LANG; fi if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi
if test -n "$cache_file" && test -r "$cache_file"; then if test -n "$cache_file" && test -r "$cache_file"; then
echo "loading cache $cache_file within ltconfig" echo "loading cache $cache_file within ltconfig"
@ -462,7 +462,7 @@ aix3*)
# AIX sometimes has problems with the GCC collect2 program. For some # AIX sometimes has problems with the GCC collect2 program. For some
# reason, if we set the COLLECT_NAMES environment variable, the problems # reason, if we set the COLLECT_NAMES environment variable, the problems
# vanish in a puff of smoke. # vanish in a puff of smoke.
if test "${COLLECT_NAMES+set}" != set; then if test "X${COLLECT_NAMES+set}" != Xset; then
COLLECT_NAMES= COLLECT_NAMES=
export COLLECT_NAMES export COLLECT_NAMES
fi fi
@ -663,7 +663,7 @@ if test "$with_gcc" = yes; then
link_static_flag='-static' link_static_flag='-static'
case "$host_os" in case "$host_os" in
beos* | irix5* | irix6* | osf3* | osf4*) beos* | irix5* | irix6* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes. # PIC is the default for these OSes.
;; ;;
aix*) aix*)
@ -718,7 +718,7 @@ else
# We can build DLLs from non-PIC. # We can build DLLs from non-PIC.
;; ;;
osf3* | osf4*) osf3* | osf4* | osf5*)
# All OSF/1 code is PIC. # All OSF/1 code is PIC.
wl='-Wl,' wl='-Wl,'
link_static_flag='-non_shared' link_static_flag='-non_shared'
@ -1164,15 +1164,21 @@ EOF
# Extract the symbol export list from an `--export-all' def file, # Extract the symbol export list from an `--export-all' def file,
# then regenerate the def file from the symbol export list, so that # then regenerate the def file from the symbol export list, so that
# the compiled dll only exports the symbol export list. # 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~ 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)~ 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~ $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~ archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
_lt_hint=1; _lt_hint=1;
for symbol in `cat $export_symbols`; do cat $export_symbols | while read symbol; do
echo " \$symbol @ \$_lt_hint ; " >> $objdir/$soname-def; 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`; _lt_hint=`expr 1 + \$_lt_hint`;
done~ 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~ 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*) 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_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' archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
else else
@ -1196,7 +1202,7 @@ EOF
fi fi
;; ;;
solaris*) solaris* | sysv5*)
if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
ld_shlibs=no ld_shlibs=no
cat <<EOF 1>&2 cat <<EOF 1>&2
@ -1244,7 +1250,12 @@ EOF
whole_archive_flag_spec= 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 esac
fi fi
@ -1405,7 +1416,7 @@ else
old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def' old_archive_from_new_cmds='emximp -o $objdir/$libname.a $objdir/$libname.def'
;; ;;
osf3* | osf4*) osf3*)
if test "$with_gcc" = yes; then if test "$with_gcc" = yes; then
allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' 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' 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=: 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*) sco3.2v5*)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
hardcode_shlibpath_var=no hardcode_shlibpath_var=no
@ -1449,7 +1478,13 @@ else
;; ;;
sysv4) 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' runpath_var='LD_RUN_PATH'
hardcode_shlibpath_var=no hardcode_shlibpath_var=no
hardcode_direct=no #Motorola manual says yes, but my tests say they lie hardcode_direct=no #Motorola manual says yes, but my tests say they lie
@ -1461,6 +1496,18 @@ else
export_dynamic_flag_spec='-Bexport' 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*) uts4*)
archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts' archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_flag_spec='-L$libdir'
@ -1474,16 +1521,30 @@ else
;; ;;
sysv4*MP*) sysv4*MP*)
if test -d /usr/nec ;then 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 $linkopts'
archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs' hardcode_shlibpath_var=no
hardcode_shlibpath_var=no runpath_var=LD_RUN_PATH
runpath_var=LD_RUN_PATH hardcode_runpath_var=yes
hardcode_runpath_var=yes ld_shlibs=yes
ld_shlibs=yes
fi fi
;; ;;
sysv4.2uw2*)
archive_cmds='$LD -G -o $lib $libobjs $deplibs $linkopts'
hardcode_direct=yes
hardcode_minus_L=no
hardcode_shlibpath_var=no
hardcode_runpath_var=yes
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
;;
*) *)
ld_shlibs=no ld_shlibs=no
;; ;;
@ -1589,11 +1650,11 @@ void nm_test_func(){}
main(){nm_test_var='a';nm_test_func();return(0);} main(){nm_test_var='a';nm_test_func();return(0);}
EOF EOF
echo "$progname:1592: checking if global_symbol_pipe works" >&5 echo "$progname:1653: 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 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. # Now try to grab the symbols.
nlist=conftest.nm 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. # Try sorting and uniquifying the output.
if sort "$nlist" | uniq > "$nlist"T; then if sort "$nlist" | uniq > "$nlist"T; then
@ -1645,7 +1706,7 @@ EOF
save_CFLAGS="$CFLAGS" save_CFLAGS="$CFLAGS"
LIBS="conftstm.$objext" LIBS="conftstm.$objext"
CFLAGS="$CFLAGS$no_builtin_flag" 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 pipe_works=yes
else else
echo "$progname: failed program was:" >&5 echo "$progname: failed program was:" >&5
@ -1787,8 +1848,9 @@ beos*)
bsdi4*) bsdi4*)
version_type=linux version_type=linux
library_names_spec='${libname}.so$major ${libname}.so' need_version=no
soname_spec='${libname}.so' 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' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' 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 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_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" 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 # 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 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
# libtool to hard-code these into programs # libtool to hard-code these into programs
@ -1841,10 +1904,9 @@ freebsd*)
need_version=yes need_version=yes
;; ;;
esac esac
finish_cmds='PATH="\$PATH:/sbin" OBJFORMAT="'"$objformat"'" ldconfig -m $libdir'
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
case "$host_os" in case "$host_os" in
freebsd2* | freebsd3.[01]*) freebsd2* | freebsd3.[01]* | freebsdelf3.[01]*)
shlibpath_overrides_runpath=yes shlibpath_overrides_runpath=yes
;; ;;
*) # from 3.2 on *) # from 3.2 on
@ -1875,6 +1937,14 @@ hpux9* | hpux10* | hpux11*)
soname_spec='${libname}${release}.sl$major' soname_spec='${libname}${release}.sl$major'
# HP-UX runs *really* slowly unless shared libraries are mode 555. # HP-UX runs *really* slowly unless shared libraries are mode 555.
postinstall_cmds='chmod 555 $lib' 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*) irix5* | irix6*)
@ -1896,8 +1966,6 @@ irix5* | irix6*)
*-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;;
*) libsuff= shlibsuff= libmagic=never-match;; *) libsuff= shlibsuff= libmagic=never-match;;
esac 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 esac
shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
@ -1924,9 +1992,7 @@ linux-gnu*)
finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
shlibpath_overrides_runpath=no shlibpath_overrides_runpath=no
deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' deplibs_check_method=pass_all
file_magic_cmd=/usr/bin/file
file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so`
if test -f /lib/ld.so.1; then if test -f /lib/ld.so.1; then
dynamic_linker='GNU ld.so' dynamic_linker='GNU ld.so'
@ -1972,7 +2038,7 @@ os2*)
shlibpath_var=LIBPATH shlibpath_var=LIBPATH
;; ;;
osf3* | osf4*) osf3* | osf4* | osf5*)
version_type=osf version_type=osf
need_version=no need_version=no
soname_spec='${libname}${release}.so' soname_spec='${libname}${release}.so'
@ -1987,6 +2053,14 @@ osf3* | osf4*)
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" 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*) sco3.2v5*)
version_type=osf version_type=osf
soname_spec='${libname}${release}.so$major' soname_spec='${libname}${release}.so$major'
@ -2027,6 +2101,10 @@ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
soname_spec='${libname}${release}.so$major' soname_spec='${libname}${release}.so$major'
shlibpath_var=LD_LIBRARY_PATH shlibpath_var=LD_LIBRARY_PATH
case "$host_vendor" in 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) ncr)
deplibs_check_method='pass_all' deplibs_check_method='pass_all'
;; ;;
@ -2167,7 +2245,7 @@ else
if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then if eval "test \"`echo '$''{'lt_cv_dlopen'+set}'`\" != set"; then
lt_cv_dlopen=no lt_cv_dlopen_libs= lt_cv_dlopen=no lt_cv_dlopen_libs=
echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 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_%'` ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
@ -2175,17 +2253,20 @@ else
ac_save_LIBS="$LIBS" ac_save_LIBS="$LIBS"
LIBS="-ldl $LIBS" LIBS="-ldl $LIBS"
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 2178 "ltconfig" #line 2256 "ltconfig"
/* Override any gcc2 internal prototype to avoid an error. */ /* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2 /* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */ builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char dlopen(); char dlopen();
int main() { int main() {
dlopen() dlopen()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo $progname:2188: \"$ac_link\") 1>&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* rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes" eval "ac_cv_lib_$ac_lib_var=yes"
else else
@ -2204,18 +2285,21 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
else else
echo "$ac_t""no" 1>&6 echo "$ac_t""no" 1>&6
echo $ac_n "checking for dlopen""... $ac_c" 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 if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 2212 "ltconfig" #line 2293 "ltconfig"
/* System header to define __stub macros and hopefully few prototypes, /* System header to define __stub macros and hopefully few prototypes,
which can conflict with char dlopen(); below. */ which can conflict with char dlopen(); below. */
#include <assert.h> #include <assert.h>
/* Override any gcc2 internal prototype to avoid an error. */ /* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2 /* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */ builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char dlopen(); char dlopen();
int main() { int main() {
@ -2231,7 +2315,7 @@ dlopen();
; return 0; } ; return 0; }
EOF 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* rm -rf conftest*
eval "ac_cv_func_dlopen=yes" eval "ac_cv_func_dlopen=yes"
else else
@ -2248,7 +2332,7 @@ if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then
else else
echo "$ac_t""no" 1>&6 echo "$ac_t""no" 1>&6
echo $ac_n "checking for dld_link in -ldld""... $ac_c" 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_%'` ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
@ -2256,17 +2340,20 @@ else
ac_save_LIBS="$LIBS" ac_save_LIBS="$LIBS"
LIBS="-ldld $LIBS" LIBS="-ldld $LIBS"
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 2259 "ltconfig" #line 2343 "ltconfig"
/* Override any gcc2 internal prototype to avoid an error. */ /* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2 /* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */ builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char dld_link(); char dld_link();
int main() { int main() {
dld_link() dld_link()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo $progname:2269: \"$ac_link\") 1>&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* rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes" eval "ac_cv_lib_$ac_lib_var=yes"
else else
@ -2285,18 +2372,21 @@ if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
else else
echo "$ac_t""no" 1>&6 echo "$ac_t""no" 1>&6
echo $ac_n "checking for shl_load""... $ac_c" 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 if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 2293 "ltconfig" #line 2380 "ltconfig"
/* System header to define __stub macros and hopefully few prototypes, /* System header to define __stub macros and hopefully few prototypes,
which can conflict with char shl_load(); below. */ which can conflict with char shl_load(); below. */
#include <assert.h> #include <assert.h>
/* Override any gcc2 internal prototype to avoid an error. */ /* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2 /* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */ builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char shl_load(); char shl_load();
int main() { int main() {
@ -2312,7 +2402,7 @@ shl_load();
; return 0; } ; return 0; }
EOF 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* rm -rf conftest*
eval "ac_cv_func_shl_load=yes" eval "ac_cv_func_shl_load=yes"
else else
@ -2330,7 +2420,7 @@ if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then
else else
echo "$ac_t""no" 1>&6 echo "$ac_t""no" 1>&6
echo $ac_n "checking for shl_load in -ldld""... $ac_c" 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_%'` ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'`
if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
@ -2338,18 +2428,21 @@ else
ac_save_LIBS="$LIBS" ac_save_LIBS="$LIBS"
LIBS="-ldld $LIBS" LIBS="-ldld $LIBS"
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 2341 "ltconfig" #line 2431 "ltconfig"
#include "confdefs.h" #include "confdefs.h"
/* Override any gcc2 internal prototype to avoid an error. */ /* Override any gcc2 internal prototype to avoid an error. */
/* We use char because int might match the return type of a gcc2 /* We use char because int might match the return type of a gcc2
builtin and then its argument prototype would still apply. */ builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char shl_load(); char shl_load();
int main() { int main() {
shl_load() shl_load()
; return 0; } ; return 0; }
EOF EOF
if { (eval echo $progname:2352: \"$ac_link\") 1>&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* rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes" eval "ac_cv_lib_$ac_lib_var=yes"
else else
@ -2392,17 +2485,17 @@ fi
for ac_hdr in dlfcn.h; do for ac_hdr in dlfcn.h; do
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 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 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 2400 "ltconfig" #line 2493 "ltconfig"
#include <$ac_hdr> #include <$ac_hdr>
int fnord = 0; int fnord = 0;
EOF EOF
ac_try="$ac_compile conftest.$ac_ext >/dev/null 2>conftest.out" ac_try="$ac_compile >/dev/null 2>conftest.out"
{ (eval echo $progname:2405: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } { (eval echo $progname:2498: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
if test -z "$ac_err"; then if test -z "$ac_err"; then
rm -rf conftest* rm -rf conftest*
@ -2430,7 +2523,7 @@ done
LIBS="$lt_cv_dlopen_libs $LIBS" LIBS="$lt_cv_dlopen_libs $LIBS"
echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 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 if test "${lt_cv_dlopen_self+set}" = set; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
@ -2438,7 +2531,7 @@ else
lt_cv_dlopen_self=cross lt_cv_dlopen_self=cross
else else
cat > conftest.c <<EOF cat > conftest.c <<EOF
#line 2441 "ltconfig" #line 2534 "ltconfig"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
#include <dlfcn.h> #include <dlfcn.h>
@ -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); } if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); }
EOF 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 then
lt_cv_dlopen_self=yes lt_cv_dlopen_self=yes
else else
@ -2503,7 +2596,7 @@ echo "$ac_t""$lt_cv_dlopen_self" 1>&6
if test "$lt_cv_dlopen_self" = yes; then if test "$lt_cv_dlopen_self" = yes; then
LDFLAGS="$LDFLAGS $link_static_flag" LDFLAGS="$LDFLAGS $link_static_flag"
echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 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 if test "${lt_cv_dlopen_self_static+set}" = set; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
@ -2511,7 +2604,7 @@ else
lt_cv_dlopen_self_static=cross lt_cv_dlopen_self_static=cross
else else
cat > conftest.c <<EOF cat > conftest.c <<EOF
#line 2514 "ltconfig" #line 2607 "ltconfig"
#if HAVE_DLFCN_H #if HAVE_DLFCN_H
#include <dlfcn.h> #include <dlfcn.h>
@ -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); } if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); }
EOF 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 then
lt_cv_dlopen_self_static=yes lt_cv_dlopen_self_static=yes
else else
@ -2649,7 +2742,7 @@ case "$ltmain" in
# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh. # NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
# #
# Copyright (C) 1996-1999 Free Software Foundation, Inc. # Copyright (C) 1996-1999 Free Software Foundation, Inc.
# Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996 # Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
# #
# This program is free software; you can redistribute it and/or modify # 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 # 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 # The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set. # 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 ### BEGIN LIBTOOL CONFIG
EOF EOF
@ -2938,7 +3031,7 @@ case "$ltmain" in
# AIX sometimes has problems with the GCC collect2 program. For some # AIX sometimes has problems with the GCC collect2 program. For some
# reason, if we set the COLLECT_NAMES environment variable, the problems # reason, if we set the COLLECT_NAMES environment variable, the problems
# vanish in a puff of smoke. # vanish in a puff of smoke.
if test "${COLLECT_NAMES+set}" != set; then if test "X${COLLECT_NAMES+set}" != Xset; then
COLLECT_NAMES= COLLECT_NAMES=
export COLLECT_NAMES export COLLECT_NAMES
fi fi
@ -2948,6 +3041,10 @@ EOF
# Append the ltmain.sh script. # Append the ltmain.sh script.
sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1) 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" chmod +x "$ofile"
;; ;;

125
ltmain.sh
View File

@ -54,8 +54,8 @@ modename="$progname"
# Constants. # Constants.
PROGRAM=ltmain.sh PROGRAM=ltmain.sh
PACKAGE=libtool PACKAGE=libtool
VERSION=1.3.3 VERSION=1.3.5
TIMESTAMP=" (1.385.2.181 1999/07/02 15:49:11)" TIMESTAMP=" (1.385.2.206 2000/05/27 11:12:27)"
default_mode= default_mode=
help="Try \`$progname --help' for more information." help="Try \`$progname --help' for more information."
@ -435,7 +435,7 @@ compiler."
fbsd_hideous_sh_bug=$base_compile fbsd_hideous_sh_bug=$base_compile
# All platforms use -DPIC, to notify preprocessed assembler code. # 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 if test "$build_old_libs" = yes; then
lo_libobj="$libobj" lo_libobj="$libobj"
dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
@ -521,9 +521,17 @@ compiler."
exit $error exit $error
fi 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 # Now arrange that obj and lo_libobj become the same file
$show "$LN_S $obj $lo_libobj" $show "(cd $xdir && $LN_S $baseobj $libobj)"
if $run $LN_S $obj $lo_libobj; then if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
exit 0 exit 0
else else
error=$? error=$?
@ -613,8 +621,6 @@ compiler."
# libtool link mode # libtool link mode
link) link)
modename="$modename: link" modename="$modename: link"
C_compiler="$CC" # save it, to compile generated C sources
CC="$nonopt"
case "$host" in case "$host" in
*-*-cygwin* | *-*-mingw* | *-*-os2*) *-*-cygwin* | *-*-mingw* | *-*-os2*)
# It is impossible to link a dll without this setting, and # It is impossible to link a dll without this setting, and
@ -802,8 +808,8 @@ compiler."
allow_undefined=yes allow_undefined=yes
;; ;;
esac esac
compile_command="$CC" compile_command="$nonopt"
finalize_command="$CC" finalize_command="$nonopt"
compile_rpath= compile_rpath=
finalize_rpath= finalize_rpath=
@ -1650,7 +1656,7 @@ compiler."
# Check that each of the things are valid numbers. # Check that each of the things are valid numbers.
case "$current" in 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: CURRENT \`$current' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2 $echo "$modename: \`$vinfo' is not valid version information" 1>&2
@ -1659,7 +1665,7 @@ compiler."
esac esac
case "$revision" in 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: REVISION \`$revision' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2 $echo "$modename: \`$vinfo' is not valid version information" 1>&2
@ -1668,7 +1674,7 @@ compiler."
esac esac
case "$age" in 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: AGE \`$age' is not a nonnegative integer" 1>&2
$echo "$modename: \`$vinfo' is not valid version information" 1>&2 $echo "$modename: \`$vinfo' is not valid version information" 1>&2
@ -1789,6 +1795,10 @@ compiler."
*-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*) *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)
# these systems don't actually have a c library (as such)! # 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. # Add libc to deplibs on all other systems.
deplibs="$deplibs -lc" deplibs="$deplibs -lc"
@ -1851,7 +1861,7 @@ compiler."
int main() { return 0; } int main() { return 0; }
EOF EOF
$rm conftest $rm conftest
$C_compiler -o conftest conftest.c $deplibs $CC -o conftest conftest.c $deplibs
if test $? -eq 0 ; then if test $? -eq 0 ; then
ldd_output=`ldd conftest` ldd_output=`ldd conftest`
for i in $deplibs; do for i in $deplibs; do
@ -1884,7 +1894,7 @@ EOF
# If $name is empty we are operating on a -L argument. # If $name is empty we are operating on a -L argument.
if test "$name" != "" ; then if test "$name" != "" ; then
$rm conftest $rm conftest
$C_compiler -o conftest conftest.c $i $CC -o conftest conftest.c $i
# Did it work? # Did it work?
if test $? -eq 0 ; then if test $? -eq 0 ; then
ldd_output=`ldd conftest` ldd_output=`ldd conftest`
@ -2047,12 +2057,19 @@ EOF
done done
# Ensure that we have .o objects for linkers which dislike .lo # 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 for obj in $libobjs; do
oldobj=`$echo "X$obj" | $Xsed -e "$lo2o"` xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
if test ! -f $oldobj; then if test "X$xdir" = "X$obj"; then
$show "${LN_S} $obj $oldobj" xdir="."
$run ${LN_S} $obj $oldobj || exit $? 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 fi
done done
@ -2311,8 +2328,16 @@ EOF
# Just create a symlink. # Just create a symlink.
$show $rm $libobj $show $rm $libobj
$run $rm $libobj $run $rm $libobj
$show "$LN_S $obj $libobj" xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
$run $LN_S $obj $libobj || exit $? 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 fi
if test -n "$gentop"; then 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 # linked before any other PIC object. But we must not use
# pic_flag when linking with -static. The problem exists in # pic_flag when linking with -static. The problem exists in
# FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
*-*-freebsd2*|*-*-freebsd3.0*) *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
case "$compile_command " in case "$compile_command " in
*" -static "*) ;; *" -static "*) ;;
*) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";; *) 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
esac esac
# Now compile the dynamic symbol file. # Now compile the dynamic symbol file.
$show "(cd $output_objdir && $C_compiler -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")" $show "(cd $output_objdir && $CC -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 $? $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
# Clean up the generated files. # Clean up the generated files.
$show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T" $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 # The HP-UX ksh and POSIX shell print the target directory to stdout
# if CDPATH is set. # 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\" relink_command=\"$relink_command\"
@ -2865,7 +2895,7 @@ else
fi" fi"
else else
echo >> $output "\ echo >> $output "\
program='$outputname$exeext' program='$outputname'
progdir=\"\$thisdir/$objdir\" progdir=\"\$thisdir/$objdir\"
" "
fi fi
@ -2901,13 +2931,21 @@ else
# Run the actual program with our arguments. # Run the actual program with our arguments.
" "
case $host in case $host in
*-*-cygwin* | *-*-mingw | *-*-os2*)
# win32 systems need to use the prog path for dll # win32 systems need to use the prog path for dll
# lookup to work # lookup to work
*-*-cygwin*)
$echo >> $output "\
exec \$progdir/\$program \${1+\"\$@\"}
"
;;
# Backslashes separate directories on plain windows
*-*-mingw | *-*-os2*)
$echo >> $output "\ $echo >> $output "\
exec \$progdir\\\\\$program \${1+\"\$@\"} exec \$progdir\\\\\$program \${1+\"\$@\"}
" "
;; ;;
*) *)
$echo >> $output "\ $echo >> $output "\
# Export the path to the program. # 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 if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
eval cmds=\"$old_archive_from_new_cmds\" eval cmds=\"$old_archive_from_new_cmds\"
else 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 # not to build a shared library, and have fallen back to building
# static libs even though --disable-static was passed! # static libs even though --disable-static was passed!
for oldobj in $oldobjs; do for oldobj in $oldobjs; do
if test ! -f $oldobj; then if test ! -f $oldobj; then
obj=`$echo "X$oldobj" | $Xsed -e "$o2lo"` xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'`
$show "${LN_S} $obj $oldobj" if test "X$xdir" = "X$oldobj"; then
$run ${LN_S} $obj $oldobj || exit $? 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 fi
done done
@ -3417,7 +3462,11 @@ libdir='$install_libdir'\
if test "$finalize" = yes && test -z "$run"; then if test "$finalize" = yes && test -z "$run"; then
tmpdir="/tmp" tmpdir="/tmp"
test -n "$TMPDIR" && tmpdir="$TMPDIR" 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 : if $mkdir -p "$tmpdir" && chmod 700 "$tmpdir"; then :
else else
$echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2
@ -3672,8 +3721,10 @@ libdir='$install_libdir'\
done done
if test -z "$run"; then if test -z "$run"; then
# Export the shlibpath_var. if test -n "$shlibpath_var"; then
eval "export $shlibpath_var" # Export the shlibpath_var.
eval "export $shlibpath_var"
fi
# Restore saved enviroment variables # Restore saved enviroment variables
if test "${save_LC_ALL+set}" = set; then if test "${save_LC_ALL+set}" = set; then
@ -3690,8 +3741,10 @@ libdir='$install_libdir'\
exit 1 exit 1
else else
# Display what would be done. # Display what would be done.
eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" if test -n "$shlibpath_var"; then
$echo "export $shlibpath_var" eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
$echo "export $shlibpath_var"
fi
$echo "$cmd$args" $echo "$cmd$args"
exit 0 exit 0
fi fi

View File

@ -3,18 +3,49 @@ AUTOMAKE_OPTIONS = 1.0 foreign
SUBDIRS = pl SUBDIRS = pl
man_MANS = chage.1 chfn.1 chsh.1 gpasswd.1 \ man_MANS = \
login.1 newgrp.1 passwd.1 su.1 \ chage.1 \
shadow.3 \ chfn.1 \
dialups.5 faillog.5 limits.5 login.access.5 login.defs.5 \ chsh.1 \
passwd.5 porttime.5 shadow.5 suauth.5 \ gpasswd.1 \
chpasswd.8 dpasswd.8 faillog.8 \ login.1 \
groupadd.8 groupdel.8 groupmod.8 \ newgrp.1 \
grpck.8 lastlog.8 logoutd.8 mkpasswd.8 newusers.8 \ passwd.1 \
pwck.8 pwconv.8 shadowconfig.8 \ su.1 \
useradd.8 userdel.8 usermod.8 vipw.8 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 # subdirectories for translated manual pages
SUBDIRS = pl SUBDIRS = pl

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -46,9 +46,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -76,7 +77,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -89,7 +89,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -107,10 +106,10 @@ AUTOMAKE_OPTIONS = 1.0 foreign
# subdirectories for translated manual pages # subdirectories for translated manual pages
SUBDIRS = pl 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 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../config.h CONFIG_HEADER = ../config.h
CONFIG_CLEAN_FILES = CONFIG_CLEAN_FILES =
@ -126,7 +125,7 @@ DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
@ -375,7 +374,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -414,7 +413,7 @@ uninstall: uninstall-recursive
all-am: Makefile $(MANS) all-am: Makefile $(MANS)
all-redirect: all-recursive all-redirect: all-recursive
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs-recursive installdirs: installdirs-recursive
installdirs-am: installdirs-am:
$(mkinstalldirs) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man3 \ $(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 \ installdirs mostlyclean-generic distclean-generic clean-generic \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean 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. # 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. # Otherwise a system limit (for SysV at least) may be exceeded.

View File

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

View File

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

View File

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

View File

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

View File

@ -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 <bcollins@debian.org>

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -1,13 +1,7 @@
AUTOMAKE_OPTIONS = 1.0 foreign
manpldir = $(mandir)/pl mandir = @mandir@/pl
manpl1dir = $(manpldir)/man1
manpl3dir = $(manpldir)/man3
manpl5dir = $(manpldir)/man5
manpl8dir = $(manpldir)/man8
man_MANS = \
manpl1_DATA = \
chage.1 \ chage.1 \
chfn.1 \ chfn.1 \
chsh.1 \ chsh.1 \
@ -17,13 +11,9 @@ manpl1_DATA = \
login.1 \ login.1 \
newgrp.1 \ newgrp.1 \
passwd.1 \ passwd.1 \
su.1 su.1 \
manpl3_DATA = \
pw_auth.3 \ pw_auth.3 \
shadow.3 shadow.3 \
manpl5_DATA = \
d_passwd.5 \ d_passwd.5 \
dialups.5 \ dialups.5 \
faillog.5 \ faillog.5 \
@ -33,15 +23,16 @@ manpl5_DATA = \
passwd.5 \ passwd.5 \
porttime.5 \ porttime.5 \
shadow.5 \ shadow.5 \
suauth.5 suauth.5 \
adduser.8 \
manpl8_DATA = \
chpasswd.8 \ chpasswd.8 \
dpasswd.8 \ dpasswd.8 \
faillog.8 \ faillog.8 \
groupadd.8 \ groupadd.8 \
groupdel.8 \ groupdel.8 \
groupmod.8 \ groupmod.8 \
grpconv.8 \
grpunconv.8 \
grpck.8 \ grpck.8 \
lastlog.8 \ lastlog.8 \
logoutd.8 \ logoutd.8 \
@ -50,11 +41,10 @@ manpl8_DATA = \
pwauth.8 \ pwauth.8 \
pwck.8 \ pwck.8 \
pwconv.8 \ pwconv.8 \
pwunconv.8 \
shadowconfig.8 \ shadowconfig.8 \
sulogin.8 sulogin.8 \
useradd.8 \ useradd.8 \
userdel.8 \ userdel.8 \
usermod.8 \ usermod.8 \
vipw.8 vipw.8
EXTRA_DIST = $(manpl1_DATA) $(manpl3_DATA) $(manpl5_DATA) $(manpl8_DATA)

View File

@ -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. # Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation # This Makefile.in is free software; the Free Software Foundation
@ -28,7 +28,6 @@ sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@ localstatedir = @localstatedir@
libdir = @libdir@ libdir = @libdir@
infodir = @infodir@ infodir = @infodir@
mandir = @mandir@
includedir = @includedir@ includedir = @includedir@
oldincludedir = /usr/include oldincludedir = /usr/include
@ -46,9 +45,10 @@ AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@ INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ $(AM_INSTALL_PROGRAM_FLAGS) INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_FLAG =
transform = @program_transform_name@ transform = @program_transform_name@
NORMAL_INSTALL = : NORMAL_INSTALL = :
@ -76,7 +76,6 @@ INSTOBJEXT = @INSTOBJEXT@
INTLDEPS = @INTLDEPS@ INTLDEPS = @INTLDEPS@
INTLLIBS = @INTLLIBS@ INTLLIBS = @INTLLIBS@
INTLOBJS = @INTLOBJS@ INTLOBJS = @INTLOBJS@
LD = @LD@
LIBCRACK = @LIBCRACK@ LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@ LIBCRYPT = @LIBCRYPT@
LIBMD = @LIBMD@ LIBMD = @LIBMD@
@ -89,7 +88,6 @@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
MKINSTALLDIRS = @MKINSTALLDIRS@ MKINSTALLDIRS = @MKINSTALLDIRS@
MSGFMT = @MSGFMT@ MSGFMT = @MSGFMT@
NM = @NM@
OBJDUMP = @OBJDUMP@ OBJDUMP = @OBJDUMP@
PACKAGE = @PACKAGE@ PACKAGE = @PACKAGE@
POFILES = @POFILES@ POFILES = @POFILES@
@ -102,124 +100,176 @@ VERSION = @VERSION@
YACC = @YACC@ YACC = @YACC@
l = @l@ l = @l@
AUTOMAKE_OPTIONS = 1.0 foreign mandir = @mandir@/pl
manpldir = $(mandir)/pl 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
manpl1dir = $(manpldir)/man1
manpl3dir = $(manpldir)/man3
manpl5dir = $(manpldir)/man5
manpl8dir = $(manpldir)/man8
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 mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = ../../config.h CONFIG_HEADER = ../../config.h
CONFIG_CLEAN_FILES = 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 DIST_COMMON = Makefile.am Makefile.in
DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST)
TAR = tar TAR = gtar
GZIP_ENV = --best GZIP_ENV = --best
all: all-redirect all: all-redirect
.SUFFIXES: .SUFFIXES:
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.in $(ACLOCAL_M4) $(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 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \ cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
install-manpl1DATA: $(manpl1_DATA) 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-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-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-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-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-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-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-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) @$(NORMAL_INSTALL)
$(mkinstalldirs) $(DESTDIR)$(manpl1dir) $(MAKE) $(AM_MAKEFLAGS) install-man1 install-man3 install-man5 \
@list='$(manpl1_DATA)'; for p in $$list; do \ install-man8
if test -f $(srcdir)/$$p; then \ uninstall-man:
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; \
done
uninstall-manpl1DATA:
@$(NORMAL_UNINSTALL) @$(NORMAL_UNINSTALL)
list='$(manpl1_DATA)'; for p in $$list; do \ $(MAKE) $(AM_MAKEFLAGS) uninstall-man1 uninstall-man3 uninstall-man5 \
rm -f $(DESTDIR)$(manpl1dir)/$$p; \ uninstall-man8
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; \
done
uninstall-manpl3DATA:
@$(NORMAL_UNINSTALL)
list='$(manpl3_DATA)'; for p in $$list; do \
rm -f $(DESTDIR)$(manpl3dir)/$$p; \
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; \
done
uninstall-manpl5DATA:
@$(NORMAL_UNINSTALL)
list='$(manpl5_DATA)'; for p in $$list; do \
rm -f $(DESTDIR)$(manpl5dir)/$$p; \
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; \
done
uninstall-manpl8DATA:
@$(NORMAL_UNINSTALL)
list='$(manpl8_DATA)'; for p in $$list; do \
rm -f $(DESTDIR)$(manpl8dir)/$$p; \
done
tags: TAGS tags: TAGS
TAGS: TAGS:
@ -232,7 +282,7 @@ distdir: $(DISTFILES)
@for file in $(DISTFILES); do \ @for file in $(DISTFILES); do \
d=$(srcdir); \ d=$(srcdir); \
if test -d $$d/$$file; then \ if test -d $$d/$$file; then \
cp -pr $$/$$file $(distdir)/$$file; \ cp -pr $$d/$$file $(distdir)/$$file; \
else \ else \
test -f $(distdir)/$$file \ test -f $(distdir)/$$file \
|| ln $$d/$$file $(distdir)/$$file 2> /dev/null \ || ln $$d/$$file $(distdir)/$$file 2> /dev/null \
@ -250,23 +300,21 @@ installcheck: installcheck-am
install-exec-am: install-exec-am:
install-exec: install-exec-am install-exec: install-exec-am
install-data-am: install-manpl1DATA install-manpl3DATA \ install-data-am: install-man
install-manpl5DATA install-manpl8DATA
install-data: install-data-am install-data: install-data-am
install-am: all-am install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
install: install-am install: install-am
uninstall-am: uninstall-manpl1DATA uninstall-manpl3DATA \ uninstall-am: uninstall-man
uninstall-manpl5DATA uninstall-manpl8DATA
uninstall: uninstall-am uninstall: uninstall-am
all-am: Makefile $(DATA) all-am: Makefile $(MANS)
all-redirect: all-am all-redirect: all-am
install-strip: install-strip:
$(MAKE) $(AM_MAKEFLAGS) AM_INSTALL_PROGRAM_FLAGS=-s install $(MAKE) $(AM_MAKEFLAGS) INSTALL_STRIP_FLAG=-s install
installdirs: installdirs:
$(mkinstalldirs) $(DESTDIR)$(manpl1dir) $(DESTDIR)$(manpl3dir) \ $(mkinstalldirs) $(DESTDIR)$(mandir)/man1 $(DESTDIR)$(mandir)/man3 \
$(DESTDIR)$(manpl5dir) $(DESTDIR)$(manpl8dir) $(DESTDIR)$(mandir)/man5 $(DESTDIR)$(mandir)/man8
mostlyclean-generic: mostlyclean-generic:
@ -297,19 +345,15 @@ maintainer-clean-am: maintainer-clean-generic distclean-am
maintainer-clean: maintainer-clean-am maintainer-clean: maintainer-clean-am
.PHONY: uninstall-manpl1DATA install-manpl1DATA uninstall-manpl3DATA \ .PHONY: install-man1 uninstall-man1 install-man3 uninstall-man3 \
install-manpl3DATA uninstall-manpl5DATA install-manpl5DATA \ install-man5 uninstall-man5 install-man8 uninstall-man8 install-man \
uninstall-manpl8DATA install-manpl8DATA tags distdir info-am info \ uninstall-man tags distdir info-am info dvi-am dvi check check-am \
dvi-am dvi check check-am installcheck-am installcheck install-exec-am \ installcheck-am installcheck install-exec-am install-exec \
install-exec install-data-am install-data install-am install \ install-data-am install-data install-am install uninstall-am uninstall \
uninstall-am uninstall all-redirect all-am all installdirs \ all-redirect all-am all installdirs mostlyclean-generic \
mostlyclean-generic distclean-generic clean-generic \ distclean-generic clean-generic maintainer-clean-generic clean \
maintainer-clean-generic clean mostlyclean distclean maintainer-clean mostlyclean distclean maintainer-clean
useradd.8 \
userdel.8 \
usermod.8 \
vipw.8
# Tell versions [3.59,3.63) of GNU make to not export all variables. # 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. # Otherwise a system limit (for SysV at least) may be exceeded.

View File

@ -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<69> informacj<63> o terminie wa<77>no<6E>ci has<61>a u<>ytkownika
.SH SK<EFBFBD>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<EFBFBD>no<EFBFBD>ci ]
.RB [ -W
.IR dni_ostrzegania ]
.I u<EFBFBD>ytkownik
.TP 6
.B chage -l \fIu<EFBFBD>ytkownik\fR
.SH OPIS
\fBchage\fR zmienia liczb<7A> dni pomi<6D>dzy zmianami has<61>a i dat<61> ostatniej
zmiany has<61>a. Informacj<63> t<> system wykorzystuje do ustalenia, kiedy
u<EFBFBD>ytkownik musi zmieni<6E> has<61>o.
Polecenia \fBchage\fR mo<6D>e u<>y<EFBFBD> tylko u<>ytkownik root, za wyj<79>tkiem
opcji \fB-l\fR. Mo<4D>e si<73> ni<6E> pos<6F>u<EFBFBD>y<EFBFBD> si<73> u<>ytkownik nieuprzywilejowany
do stwierdzenia, kiedy wygasa jego w<>asne has<61>o lub konto.
.PP
Opcja \fB-m\fR ustawia minimaln<6C> liczb<7A> dni pomi<6D>dzy zmianami has<61>a
na warto<74><6F> \fImindni\fR. Warto<74><6F> zerowa oznacza, <20>e u<>ytkownik mo<6D>e je zmienia<69>
w dowolnym czasie.
.PP
Opcja \fB-M\fR ustawia maksymaln<6C> liczb<7A> dni, przez jakie has<61>o jest wa<77>ne
na warto<74><6F> \fImaxdni\fR.
Gdy \fImaxdni\fR plus \fIostatni\fR jest mniejsze ni<6E> bie<69><65>cy dzie<69>,
od u<>ytkownika wymagana jest zmiana has<61>a przed skorzystaniem z konta.
Zdarzenie to mo<6D>e by<62> zaplanowane z wyprzedzeniem przez wykorzystanie
opcji \fB-W\fR, ostrzegaj<61>cej zawczasu u<>ytkownika o zbli<6C>aj<61>cym si<73> terminie
zmiany.
.PP
Opcja \fB-d\fR ustawia liczb<7A> dni od 1 stycznia 1970 do dnia kiedy ostatnio
zmieniono has<61>o na \fIostatni\fR. Data mo<6D>e r<>wnie<69> zosta<74> podana w postaci
RRRR-MM-DD (lub postaci powszechniej u<>ywanej w twoim regionie).
.PP
Opcja \fB-E\fR s<>u<EFBFBD>y do ustawiania daty, od kt<6B>rej konto u<>ytkownika
nie b<>dzie ju<6A> dost<73>pne.
\fIdata_wa<EFBFBD>no<EFBFBD>ci\fR jest liczb<7A> dni od 1 stycznia 1970, od kt<6B>rej konto jest
blokowane. Data mo<6D>e by<62> te<74> wyra<72>ona w postaci RRRR-MM-DD (lub innej,
powszechniej u<>ywanej w twoim regionie).
U<EFBFBD>ytkownik, kt<6B>rego konto jest zablokowane musi skontaktowa<77> si<73>
z administratorem systemu zanim b<>dzie m<>g<EFBFBD> z niego ponownie skorzysta<74>.
.PP
Opcja \fB-I\fR s<>u<EFBFBD>y do ustawiania czasu nieaktywno<6E>ci po wyga<67>ni<6E>ciu
has<EFBFBD>a, po kt<6B>rym konto jest blokowane. Parametr \fInieaktywne\fR podaje
liczb<EFBFBD> dni nieaktywno<6E>ci. Warto<74><6F> 0 wy<77><79>cza t<> funkcj<63>.
U<EFBFBD>ytkownik, kt<6B>rego konto jest zablokowane musi skontaktowa<77> si<73>
z administratorem systemu zanim b<>dzie m<>g<EFBFBD> z niego ponownie skorzysta<74>.
.PP
Opcja \fB-W\fR s<>u<EFBFBD>y do ustawiania ostrzegania przed wymagan<61> zmian<61> has<61>a.
Parametr \fIdni_ostrzegania\fR jest liczb<7A> dni przed up<75>ywem wa<77>no<6E>ci has<61>a;
od tego dnia u<>ytkownik b<>dzie ostrzegany o nadchodz<64>cym terminie.
.PP
Wszystkie powy<77>sze warto<74>ci przechowywane s<> jako liczba dni, je<6A>eli u<>ywany
jest dodatkowy, przes<65>aniany plik hase<73> (shadow). Jednak je<6A>eli u<>ywany jest
standardowy plik hase<73>, to s<> one zamieniane (w obie strony) na liczb<7A> tygodni.
Z powodu powy<77>szej konwersji mog<6F> pojawi<77> si<73> b<><62>dy zaokr<6B>gle<6C>.
.PP
Je<EFBFBD>li nie podano <20>adnej opcji, to \fBchage\fR dzia<69>a w trybie interaktywnym,
proponuj<EFBFBD>c u<>ytkownikowi warto<74>ci bie<69><65>ce dla ka<6B>dego z p<>l. Wprowad<61> now<6F>
warto<EFBFBD><EFBFBD> by zmieni<6E> pole, lub pozostaw pust<73> by u<>y<EFBFBD> warto<74>ci bie<69><65>cej.
Bie<EFBFBD><EFBFBD>ca warto<74><6F> pola wy<77>wietlana jest mi<6D>dzy par<61> znacznik<69>w \fB[ ]\fR.
.SH PLIKI
.IR /etc/passwd " - informacje o kontach u<>ytkownik<69>w"
.br
.IR /etc/shadow " - chronione informacje o kontach u<>ytkownik<69>w"
.SH ZOBACZ TAK<EFBFBD>E
.BR passwd (5),
.BR shadow (5)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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<69> nazw<7A> u<>ytkownika i informacj<63> o nim
.SH SK<EFBFBD>ADNIA
.TP 5
.B chfn
.RB [ -f
.IR pe<EFBFBD>na_nazwa ]
.RB [ -r
.IR nr_pokoju ]
.br
.RB [ -w
.IR tel_s<EFBFBD>u<EFBFBD>b ]
.RB [ -h
.IR tel_dom ]
.RB [ -o
.IR inne ]
.RI [ u<EFBFBD>ytkownik ]
.SH OPIS
\fBchfn\fR zmienia pe<70>n<EFBFBD> nazw<7A> (imi<6D> i nazwisko), telefon s<>u<EFBFBD>bowy i domowy
dla danego konta u<>ytkownika. Informacja ta jest zwykle drukowana przez
\fBfinger\fR(1) i podobne mu programy.
Zwyk<EFBFBD>y u<>ytkownik mo<6D>e zmienia<69> wy<77><79>cznie pola opisuj<75>ce w<>asne konto.
Tylko superu<72>ytkownik mo<6D>e zmienia<69> pola dowolnego konta.
R<EFBFBD>wnie<EFBFBD> tylko on mo<6D>e pos<6F>u<EFBFBD>y<EFBFBD> si<73> opcj<63> \fB-o\fR by zmieni<6E> niezdefiniowane
cz<EFBFBD><EFBFBD>ci pola GECOS.
.PP
Jedynym ograniczeniem nak<61>adanym na zawarto<74><6F> p<>l jest zakaz u<>ywania w nich
znak<EFBFBD>w kontrolnych oraz przecinka, dwukropka i znaku r<>wno<6E>ci.
Pola \fIinne\fR (other) nie obowi<77>zuje to ograniczenie. Pole to s<>u<EFBFBD>y do
przechowywania informacji rozliczeniowej u<>ywanej przez inne aplikacje.
.PP
Je<EFBFBD>li nie wybrano <20>adnej z opcji, to \fBchfn\fR dzia<69>a w trybie interaktywnym,
proponuj<EFBFBD>c u<>ytkownikowi warto<74>ci bie<69><65>ce dla ka<6B>dego z p<>l. Wprowad<61> now<6F>
warto<EFBFBD><EFBFBD> by zmieni<6E> pole, lub pozostaw pust<73> by u<>y<EFBFBD> warto<74>ci bie<69><65>cej.
Bie<EFBFBD><EFBFBD>ca warto<74><6F> pola wy<77>wietlana jest mi<6D>dzy par<61> znacznik<69>w \fB[ ]\fR.
Bez podania opcji \fBchfn\fR pyta o konto u<>ytkownika, kt<6B>re ma podlega<67>
zmianie.
.SH PLIKI
.IR /etc/passwd " - informacja o kontach u<>ytkownik<69>w"
.SH ZOBACZ TAK<EFBFBD>E
.BR passwd (5)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)
.SH OD T<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij si<73>, <20>e korzystasz
z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<73>
.SH SK<EFBFBD>ADNIA
.B chpasswd
.RB [ -e ]
.SH OPIS
\fBchpasswd\fR odczytuje ze standardowego wej<65>cia plik zawieraj<61>cy pary:
nazwa u<>ytkownika i has<61>o. Odczytan<61> informacje wykorzystuje do aktualizacji
grupy istniej<65>cych u<>ytkownik<69>w.
Bez prze<7A><65>cznika -e, has<61>a traktowane s<> jako podane jawnie. Z prze<7A><65>cznikiem
-e has<61>a powinny by<62> dostarczone w postaci zakodowanej (encrypted).
Ka<EFBFBD>dy wiersz ma posta<74>
.sp 1
\fInazwa_U<EFBFBD>ytkownika\fR:\fIhas<EFBFBD>o\fR
.sp 1
Dany u<>ytkownik musi istnie<69>.
Je<EFBFBD>eli b<>dzie to konieczne, podane has<61>o zostanie zakodowane a wiek has<61>a,
je<EFBFBD>li wyst<73>puje, zaktualizowany.
.PP
Polecenie to przeznaczone jest do u<>ytku w du<64>ych systemach, gdzie aktualizuje
si<EFBFBD> wiele kont naraz.
.SH PRZESTROGI
.\" Po u<>yciu \fBchpasswd\fR musi zosta<74> wykonane polecenie \fImkpasswd\fR,
.\" aktualizuj<75>ce pliki DBM hase<73> (DBM password files).
Plik <20>r<EFBFBD>d<EFBFBD>owy, je<6A>li zawiera niezakodowane has<61>a, musi by<62> chroniony.
.\" Polecenie to mo<6D>e by<62> zaniechane na rzecz polecenia newusers(8).
.SH ZOBACZ TAK<EFBFBD>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)

View File

@ -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<69> pow<6F>ok<6F> zg<7A>oszeniow<6F>
.SH SK<EFBFBD>ADNIA
.TP 5
.B chsh
.RB [ -s
.IR pow<EFBFBD>oka ]
.RI [ u<EFBFBD>ytkownik ]
.SH OPIS
\fBchsh\fR zmienia pow<6F>ok<6F> zg<7A>oszeniow<6F> u<>ytkownika.
Okre<EFBFBD>la nazw<7A> pocz<63>tkowego polecenia zg<7A>oszeniowego u<>ytkownika.
Zwyk<EFBFBD>y u<>ytkownik mo<6D>e zmieni<6E> wy<77><79>cznie pow<6F>ok<6F> zg<7A>oszeniow<6F> w<>asnego konta,
superu<EFBFBD>ytkownik mo<6D>e zmieni<6E> pow<6F>ok<6F> zg<7A>oszeniow<6F> dla dowolnego konta.
.PP
Jedynym ograniczeniem na<6E>o<EFBFBD>onym na pow<6F>ok<6F> zg<7A>oszeniow<6F> jest to, <20>e jej nazwa
musi by<62> uj<75>ta w \fI/etc/shells\fR, chyba <20>e polecenie \fBchsh\fR wywo<77>ywane
jest przez superu<72>ytkownika, w<>wczas mo<6D>e by<62> podana nazwa dowolnego polecenia.
U<EFBFBD>ytkownicy kont z ograniczon<6F> pow<6F>ok<6F> logowania nie mog<6F> jej zmienia<69>.
Odradza si<73> z tego powodu umieszczanie \fB/bin/rsh\fR w pliku \fI/etc/shells\fR,
gdy<EFBFBD> przypadkowa zmiana na pow<6F>ok<6F> ograniczon<6F> uniemo<6D>liwi u<>ytkownikowi
jak<EFBFBD>kolwiek zmian<61> pow<6F>oki logowania, nawet z powrotem na dotychczasow<6F>.
.PP
je<EFBFBD>eli nie podano opcji \fB-s\fR, to \fBchsh\fR dzia<69>a w trybie interaktywnym,
proponuj<EFBFBD>c u<>ytkownikowi bie<69><65>c<EFBFBD> pow<6F>ok<6F> logowania. Wprowad<61> now<6F> warto<74><6F>
do pola lub pozostaw je puste, by pozostawi<77> aktualn<6C> warto<74><6F>.
Bie<EFBFBD><EFBFBD>ca warto<74><6F> wy<77>wietlana jest pomi<6D>dzy par<61> znacznik<69>w \fB[ ]\fR.
.SH PLIKI
.IR /etc/passwd " - informacja o kontach u<>ytkownik<69>w"
.br
.IR /etc/shells " - lista dozwolonych pow<6F>ok zg<7A>oszeniowych"
.SH ZOBACZ TAK<EFBFBD>E
.BR chfn (1),
.BR passwd (5)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)
.SH OD T<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Istnieje wiele program<61>w i skrypt<70>w do zarz<72>dzania kontami
u<EFBFBD>ytkownik<EFBFBD>w czy grup. Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij
si<EFBFBD>, <20>e korzystasz z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -1,30 +0,0 @@
.\"
.\" {PTM/WK/1999-09-22}
.\"
.TH D_PASSWD 5
.SH NAZWA
d_passwd - plik hase<73> telefonicznych
.SH OPIS
Z dost<73>pem do systemu przez lini<6E> telefoniczn<7A> zwi<77>zane s<> dwa pliki
konfiguracyjne: \fI/etc/d_passwd\fR, zawieraj<61>cy has<61>a i \fI/etc/dialups\fR,
zawieraj<EFBFBD>cy linie.
Ka<EFBFBD>dorazowo, zanim u<>ytkownik <20><>cz<63>cy si<73> za po<70>rednictwem modemu otrzyma
dost<EFBFBD>p do systemu, musi poda<64> has<61>o telefoniczne. Has<61>a te s<> niezale<6C>ne
od hase<73> u<>ytkownik<69>w i przypisane nie do u<>ytkownika, ani linii terminalowej,
lecz do pow<6F>oki zg<7A>oszeniowej u<>ytkownika.
Do rozpocz<63>cia sesji wymagane jest zar<61>wno has<61>o u<>ytkownika jak
i telefoniczne. Zauwa<77> jednak, <20>e has<61>a telefoniczne nie posiadaj<61> kontroli
terminu wa<77>no<6E>ci. Nale<6C>y, po uzgodnieniu, okresowo zmienia<69> je r<>cznie.
W pliku \fId_passwd\fR kolejne wiersze definiuj<75> has<61>a dla rozmaitych pow<6F>ok:
.br
.sp 1
pow<6F>oka:zakodowane_has<61>o:
.br
.sp 1
Zauwa<EFBFBD>, <20>e po polu has<61>a wyst<73>puje dwukropek. Pow<6F>oka powinna by<62>
okre<EFBFBD>lona przez bezwzgl<67>dn<64> nazw<7A> <20>cie<69>kow<6F> pliku interpretatora polece<63>.
Do zarz<72>dzania has<61>ami telefonicznymi s<>u<EFBFBD>y polecenie \fBdpasswd\fR (1).
.SH ZOBACZ TAK<EFBFBD>E
.BR dpasswd (1),
.BR login (1),
.BR dialups (5).

View File

@ -1,24 +0,0 @@
.\"
.\" {PTM/WK/1999-09-22}
.\"
.TH DIALUPS
.SH NAZWA
dialups - plik terminalowych linii telefonicznych
.SH OPIS
Z dost<73>pem do systemu przez lini<6E> telefoniczn<7A> zwi<77>zane s<> dwa pliki
konfiguracyjne: \fI/etc/d_passwd\fR, zawieraj<61>cy has<61>a i \fI/etc/dialups\fR,
zawieraj<EFBFBD>cy linie. W ka<6B>dym wierszu pliku \fIdialups\fR zawarta jest nazwa
pliku specjalnego linii terminalowej, do kt<6B>rej pod<6F><64>czony jest modem:
.br
.sp 1
/dev/tty12
/dev/tty13
.br
.sp 1
Warto jest uj<75><6A> w nim \fBwszystkie\fR linie z dost<73>pem modemowym.
Po<EFBFBD><EFBFBD>czenie z linii pomini<6E>tej nie b<>dzie dodatkowo weryfikowane - u<>ytkownicy
<EFBFBD><EFBFBD>cz<EFBFBD>cy si<73> ni<6E> nie b<>d<EFBFBD> musieli podawa<77> has<61>a telefonicznego.
.SH ZOBACZ TAK<EFBFBD>E
.BR dpasswd (1),
.BR login (1),
.BR d_passwd (5).

View File

@ -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<69> has<61>o telefoniczne
.SH SK<EFBFBD>ADNIA
.B dpasswd
.RB [ - ( a | d )]
.I pow<EFBFBD>oka
.SH OPIS
\fBdpasswd\fR dodaje, usuwa i aktualizuje has<61>a telefoniczne (dialup
passwords) dla pow<6F>ok logowania u<>ytkownik<69>w.
Ka<EFBFBD>dorazowo, gdy u<>ytkownik loguje si<73> przez lini<6E> telefoniczn<7A>,
<EFBFBD><EFBFBD>dane jest od niego has<61>o telefoniczne (po poprawnym uwierzytelnieniu
jego w<>asnego has<61>a).
.PP
\fBdpasswd\fR b<>dzie prosi<73> o podanie nowego has<61>a dwukrotnie, by upewni<6E>
si<EFBFBD>, <20>e zosta<74>o ono poprawnie wprowadzone.
.PP
Argument \fIpow<EFBFBD>oka\fR musi by<62> pe<70>n<EFBFBD>, <20>cie<69>kow<6F> nazw<7A> programu zg<7A>oszenia
(logowania).
.SH PLIKI
.br
.I /etc/d_passwd
.br
.I /etc/dialups
.SH ZOBACZ TAK<EFBFBD>E
.BR login (1)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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" <naskrent@hoth.amu.edu.pl>
.\" $Id: faillog.5,v 1.3 1999/09/20 20:56:42 wojtek2 Exp $
.\"
.TH faillog 5
.SH NAZWA
faillog \- plik rejestruj<75>cy nieudane zalogowania
.SH OPIS
.I faillog
prowadzi licznik nieudanych zalogowa<77> i limity dla ka<6B>dego konta.
Plik ten sk<73>ada si<73> z rekord<72>w o sta<74>ej d<>ugo<67>ci, indeksowanych
liczbowym UID. Ka<4B>dy rekord zawiera licznik nieudanych zalogowa<77>
od ostatniego pomy<6D>lnego logowania, maksymaln<6C> liczb<7A> pomy<6D>ek
przed zablokowaniem konta, konsol<6F> na kt<6B>rej nast<73>pi<70>o ostatnie
nieudane logowanie, oraz dat<61> tego<67>.
.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<77>"
.SH ZOBACZ TAK<EFBFBD>E
.BR faillog (8)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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<77> faillog i ustaw limity b<><62>dnych logowa<77>
.SH SK<EFBFBD>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<74><6F> rejestru nieudanych pr<70>b rozpocz<63>cia sesji,
\fI/var/log/faillog\fR, oraz obs<62>uguje ograniczenia i liczniki b<><62>dnych pr<70>b.
Kolejno<EFBFBD><EFBFBD> argument<6E>w \fBfaillog\fR jest znacz<63>ca. Ka<4B>dy z argument<6E>w jest
natychmiast przetwarzany w zadanej kolejno<6E>ci.
.PP
Flaga \fB-p\fR powoduje, <20>e zapisy o nieudanych logowaniach wy<77>wietlane b<>d<EFBFBD>
w kolejno<6E>ci rosn<73>cych identyfikator<6F>w u<>ytkownik<69>w (UID).
Pos<EFBFBD>u<EFBFBD>enie si<73> flag<61> \fB-u \fInazwa\fR spowoduje, <20>e zostanie wy<77>wietlony
wy<EFBFBD><EFBFBD>cznie zapis dotycz<63>cy u<>ytkownika o tej \fInazwie\fR.
U<EFBFBD>ycie \fB-t \fIdni\fR powoduje wy<77>wietlanie wy<77><79>cznie nieudanych pr<70>b
logowania <20>wie<69>szych ni<6E> sprzed zadanej liczby \fIdni\fR.
Flaga \fB-t\fR uniewa<77>nia u<>ycie \fB-u\fR.
Flaga \fB-a\fR powoduje wybranie wszystkich u<>ytkownik<69>w.
W po<70><6F>czeniu z flag<61> \fB-p\fR flag, opcja ta wybiera wszystkich u<>ytkownik<69>w,
dla kt<6B>rych kiedykolwiek odnotowano niepomy<6D>ln<6C> pr<70>b<EFBFBD> logowania.
Opcja ta nie ma znaczenia w po<70><6F>czeniu z flag<61> \fB-r\fR.
.PP
\fB-r\fR s<>u<EFBFBD>y do zerowania licznika b<><62>dnych logowa<77>. Do poprawnego dzia<69>ania
tej opcji wymagane jest prawo zapisu do \fI/var/log/faillog\fR.
W po<70><6F>czeniu z \fB-u \fInazwa\fR s<>u<EFBFBD>y do zerowania licznika b<><62>d<EFBFBD>w u<>ytkownika
o podanej \fInazwie\fR.
.PP
Flaga \fB-m\fR ustawia maksymaln<6C> liczb<7A> b<><62>d<EFBFBD>w logowania, po kt<6B>rej konto
zostanie wy<77><79>czone. Dla tej opcji wymagane jest prawo zapisu do
\fI/var/log/faillog\fR.
Argumenty \fB-m \fImax\fR powoduj<75>, <20>e wszystkie konta b<>d<EFBFBD> wy<77><79>czane po
\fImax\fR nieudanych pr<70>bach logowania.
U<EFBFBD>ycie dodatkowo \fB-u \fInazwa\fR, ogranicza dzia<69>anie tej funkcji do
u<EFBFBD>ytkownika o podanej \fInazwie\fR.
Pos<EFBFBD>u<EFBFBD>enie si<73> zerow<6F> warto<74>ci<63> \fImax\fR powoduje, <20>e liczba nieudanych pr<70>b
rozpocz<EFBFBD>cia sesji jest nieograniczona.
Dla u<>ytkownika \fBroot\fR maksymalna liczba niepowodze<7A> powinna by<62> zawsze
ustawiona na 0, by zapobiec atakom typu denial of service (odmowa obs<62>ugi).
.PP
Opcje mog<6F> by<62> <20><>czone w praktycznie dowolny spos<6F>b. Ka<4B>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<77>wietla wy<77><79>cznie u<>ytkownik<69>w, kt<6B>rzy od ostatniej nieudanej
pr<EFBFBD>by nie mieli poprawnych logowa<77>.
Chc<EFBFBD>c wy<77>wietli<6C> u<>ytkownika, kt<6B>ry po ostatniej pora<72>ce logowa<77> si<73> ju<6A>
pomy<EFBFBD>lnie, musisz jawnie za<7A><61>da<64> o nim informacji przy pomocy flagi \fB-u\fR.
Mo<EFBFBD>esz tak<61>e wy<77>wietli<6C> wszystkich u<>ytkownik<69>w pos<6F>uguj<75>c si<73> flag<61> \fB-a\fR.
.PP
W niekt<6B>rych systemach zamiast /var/log wyst<73>puje /var/adm lub /usr/adm.
.SH PLIKI
.IR /var/log/faillog " - plik rejestracji b<><62>d<EFBFBD>w logowania"
.SH ZOBACZ TAK<EFBFBD>E
.BR login (1),
.BR faillog (5)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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<EFBFBD>ADNIA
.B gpasswd \fIgrupa\fR
.br
.B gpasswd -a
.I u<EFBFBD>ytkownik grupa
.br
.B gpasswd -d
.I u<EFBFBD>ytkownik grupa
.br
.B gpasswd -R
.I grupa
.br
.B gpasswd -r
.I grupa
.br
.B gpasswd
.RB [ -A
.IR u<EFBFBD>ytkownik ,...]
.RB [ -M
.IR u<EFBFBD>ytkownik ,...]
.I grupa
.SH OPIS
.B gpasswd
s<EFBFBD>u<EFBFBD>y do administrowania plikiem \fI/etc/group\fR (oraz \fI/etc/gshadow\fR
je<EFBFBD>li zosta<74>a wykonana kompilacja ze zdefiniowanym SHADOWGRP). Ka<4B>da z grup
mo<EFBFBD>e posiada<64> administrator<6F>w, cz<63>onk<6E>w i has<61>o. Administrator systemu mo<6D>e
pos<EFBFBD>u<EFBFBD>y<EFBFBD> si<73> opcj<63> \fB-A\fR do zdefiniowania administratora(<28>w) grupy oraz
opcj<EFBFBD> \fB-M\fR do zdefiniowania jej cz<63>onk<6E>w. Posiada on wszystkie prawa
administrator<EFBFBD>w i cz<63>onk<6E>w grup.
.PP
Administrator grupy mo<6D>e dodawa<77> i usuwa<77> u<>ytkownik<69>w przy pomocy,
odpowiednio, opcji \fB-a\fR i \fB-d\fR. Administratorzy mog<6F> te<74> u<>ywa<77> opcji
\fB-r\fR w celu usuni<6E>cia has<61>a grupy. Je<4A>eli grupa nie posiada has<61>a,
to polecenia
.BR newgrp (1)
do przy<7A><79>czenia si<73> do grupy mog<6F> u<>ywa<77> tylko jej cz<63>onkowie.
Opcja \fB-R\fR wy<77><79>cza dost<73>p do grupy za pomoc<6F> polecenia
.BR newgrp (1).
.PP
.B gpasswd
wywo<EFBFBD>ane przez administratora grupy tylko z nazw<7A> grupy pyta o jej has<61>o.
Je<EFBFBD>eli has<61>o jest ustawione, to cz<63>onkowie grupy mog<6F> nadal wykonywa<77>
.BR newgrp (1)
bez has<61>a, inni musz<73> natomiast poda<64> has<61>o.
.SH PLIKI
.IR /etc/group " - informacja o grupach"
.br
.IR /etc/gshadow " - chroniona informacja o grupach"
.SH ZOBACZ TAK<EFBFBD>E
.BR newgrp (1),
.BR groupadd (8),
.BR groupdel (8),
.BR groupmod (8),
.BR grpck (8)

View File

@ -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<74>rz now<6F> grup<75>
.SH SK<EFBFBD>ADNIA
.B groupadd
.RB [ -g
.I gid
.RB [ -o ]]
.I grupa
.SH OPIS
Polecenie \fBgroupadd\fR tworzy nowe konto grupy pos<6F>uguj<75>c si<73>
warto<EFBFBD>ciami podanymi w wierszu polece<63> i domy<6D>lnymi warto<74>ciami z systemu.
W razie potrzeby zostanie wprowadzona do systemu nowa grupa.
Polecenie \fBgroupadd\fR posiada opcje:
.TP
.BI -g " gid"
Numeryczna warto<74><6F> identyfikatora grupy. Warto<74><6F> ta musi by<62> niepowtarzalna,
chyba <20>e u<>yto opcji \fB-o\fR. Warto<74><6F> ID grupy nie mo<6D>e by<62> ujemna. Domy<6D>lnie
u<EFBFBD>ywana jest najmniejsza warto<74><6F> identyfikatora wi<77>ksza ni<6E> 99 a wi<77>ksza ni<6E>
jakiejkolwiek innej grupy.
Warto<EFBFBD>ci mi<6D>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<EFBFBD>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<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Istnieje wiele program<61>w i skrypt<70>w do zarz<72>dzania kontami
u<EFBFBD>ytkownik<EFBFBD>w czy grup. Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij
si<EFBFBD>, <20>e korzystasz z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<73> grup<75>
.SH SK<EFBFBD>ADNIA
.B groupdel
.I grupa
.SH OPIS
Polecenie \fBgroupdel\fR zmienia systemowe pliki kont, usuwaj<61>c
wszystkie zapisy odnosz<73>ce si<73> do \fIgrupy\fR.
Wymieniona grupa musi istnie<69>.
.PP
Musisz r<>cznie sprawdzi<7A> wszystkie systemy plik<69>w, by upewni<6E> si<73>, <20>e
nie pozosta<74>y <20>adne pliki, dla kt<6B>rych wymieniona grupa jest grup<75> w<>a<EFBFBD>cicieli.
.SH PRZESTROGI
Nie mo<6D>esz usun<75><6E> podstawowej grupy <20>adnego z istniej<65>cych u<>ytkownik<69>w.
Musisz usun<75><6E> u<>ytkownika przed usuni<6E>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<EFBFBD>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<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Istnieje wiele program<61>w i skrypt<70>w do zarz<72>dzania kontami
u<EFBFBD>ytkownik<EFBFBD>w czy grup. Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij
si<EFBFBD>, <20>e korzystasz z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<69> dane grupy
.SH SK<EFBFBD>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<EFBFBD> w nich zmiany grup podane w wierszu polece<63>. Obs<62>uguje ono
nast<EFBFBD>puj<EFBFBD>ce opcje:
.TP
.BI -g " gid"
Numeryczna warto<74><6F> identyfikatora grupy (group ID).
Warto<EFBFBD><EFBFBD> ta musi by<62> niepowtarzalna, chyba <20>e u<>yto opcji \fB-o\fR.
Nie mo<6D>e by<62> ujemna. Warto<74>ci pomi<6D>dzy 0 a 99 s<> zwykle zarezerwowane
dla grup systemowych.
Pliki, dla kt<6B>rych stary identyfikator jest identyfikatorem
grupy pliku, wymagaj<61> 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<EFBFBD>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<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Istnieje wiele program<61>w i skrypt<70>w do zarz<72>dzania kontami
u<EFBFBD>ytkownik<EFBFBD>w czy grup. Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij
si<EFBFBD>, <20>e korzystasz z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<77>wietl nazwy bie<69><65>cych grup
.SH SK<EFBFBD>ADNIA
.B groups
.RI [ u<EFBFBD>ytkownik ]
.SH OPIS
.B groups
wy<EFBFBD>wietla nazwy lub warto<74>ci bie<69><65>cych identyfikator<6F>w grup.
Je<EFBFBD>eli warto<74><6F> nie posiada odpowiedniego wpisu w \fI/etc/group\fR, to zostanie
wy<EFBFBD>wietlona jako numeryczny identyfikator grupy.
Opcjonalny parametr \fIu<EFBFBD>ytkownik\fR powoduje wy<77>wietlenie grup dla danego
\fIu<EFBFBD>ytkownika\fR.
.SH UWAGA
Systemy nie obs<62>uguj<75>ce r<>wnoczesnych grup (tj.takie, w kt<6B>rych u<>ytkownik mo<6D>e
w danej by<62> cz<63>onkiem tylko jednej grupy, grupy aktywnej) b<>d<EFBFBD> wy<77>wietla<6C>
informacj<EFBFBD> z \fI/etc/group\fR.
Do zmiany bie<69><65>cego rzeczywistego i efektywnego identyfikatora grupy u<>ytkownik
musi u<>y<EFBFBD> polecenia \fBnewgrp\fR lub \fBsg\fR.
.SH PLIKI
.IR /etc/group " - informacja o grupach"
.SH ZOBACZ TAK<EFBFBD>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<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij si<73>, <20>e korzystasz
z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<73>jno<6E>ci plik<69>w grup
.SH SK<EFBFBD>ADNIA
.B grpck
.RB [ -r ]
.RI [ group
.IR shadow ]
.SH OPIS
\fBgrpck\fR weryfikuje integralno<6E><6F> informacji autentykacji systemowej.
Sprawdzane s<> wszystkie pozycje w plikach \fI/etc/group\fR
i \fI/etc/gshadow\fR, by upewni<6E> si<73>, <20>e ka<6B>da z nich posiada w<>a<EFBFBD>ciwy format
i poprawne dane w ka<6B>dym z p<>l. U<>ytkownik monitowany jest o usuni<6E>cie
pozycji, kt<6B>re s<> sformatowane niepoprawnie lub posiadaj<61> inne nie daj<61>ce
si<EFBFBD> skorygowa<77> b<><62>dy.
.P
Kontrolowane jest czy ka<6B>da pozycja posiada
.sp
.in +.5i
- w<>a<EFBFBD>ciw<69> liczb<7A> p<>l
.br
- unikaln<6C> nazw<7A> grupy
.br
- poprawn<77> list<73> cz<63>onk<6E>w i administrator<6F>w
.in -.5i
.sp
.P
Kontrola w<>a<EFBFBD>ciwej liczby p<>l i niepowtarzalnej nazwy grupy jest
decyduj<EFBFBD>ca. Je<4A>eli pozycja posiada b<><62>dn<64> liczb<7A> p<>l, to u<>ytkownik jest
proszony o usuni<6E>cie ca<63>ej pozycji (wiersza).
Je<EFBFBD>eli u<>ytkownik nie potwierdzi decyzji o usuni<6E>ciu, to pomijane s<> wszelkie
dalsze sprawdzenia.
Pozycja z powt<77>rzon<6F> nazw<7A> grupy powoduje monit o usuni<6E>cie, ale nadal
b<EFBFBD>d<EFBFBD> wykonywane pozosta<74>e sprawdzenia.
Wszystkie inne b<><62>dy daj<61> ostrze<7A>enia a u<>ytkownik jest zach<63>cany
do uruchomienia polecenia \fBgroupmod\fR, by je poprawi<77>.
.P
Polecenia dzia<69>aj<61>ce na pliku \fI/etc/group\fR nie potrafi<66> zmienia<69>
uszkodzonych lub powielonych pozycji. W takich okoliczno<6E>ciach powinien by<62>
u<EFBFBD>ywany \fBgrpck\fR, by usun<75><6E> nieprawid<69>ow<6F> pozycj<63>.
.SH OPCJE
Domy<EFBFBD>lnie \fBgrpck\fR dzia<69>a na plikach \fI/etc/group\fR oraz \fI/etc/gshadow\fR.
Przy pomocy parametr<74>w \fIgroup\fR i \fIshadow\fR u<>ytkownik mo<6D>e wybra<72> inne
pliki.
Dodatkowo, u<>ytkownik mo<6D>e wykona<6E> polecenie w trybie tylko-do-odczytu, poprzez
podanie flagi \fB-r\fR.
Powoduje to, <20>e na wszystkie pytania dotycz<63>ce zmian zostanie, bez ingerencji
u<EFBFBD>ytkownika, u<>yta odpowied<65> \fBnie\fR.
.SH PLIKI
.IR /etc/group " - informacja o kontach grup"
.br
.IR /etc/gshadow " - zakodowana informacja o has<61>ach i administratorach grup"
.br
.IR /etc/passwd " -informacja o u<>ytkownikach"
.SH ZOBACZ TAK<EFBFBD>E
.BR groupmod (8),
.BR group (5),
.BR passwd (5),
.BR shadow (5)
.SH DIAGNOSTYKA
Polecenie \fBgrpck\fR ko<6B>czy prac<61> z nast<73>puj<75>cymi warto<74>ciami kod<6F>w:
.IP 0 5
Powodzenie
.IP 1 5
B<EFBFBD><EFBFBD>d sk<73>adni
.IP 2 5
Jedna lub wi<77>cej z<>ych pozycji pliku grup
.IP 3 5
Niemo<EFBFBD>liwe otwarcie plik<69>w grup
.IP 4 5
Niemo<EFBFBD>liwa blokada plik<69>w grup
.IP 5 5
Niemo<EFBFBD>liwa aktualizacja plik<69>w grup
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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<77>wietl nazwy bie<69><65>cych ID u<>ytkownika i grupy
.SH SK<EFBFBD>ADNIA
.B id
.RB [ -a ]
.SH OPIS
.B id
wy<EFBFBD>wietla bie<69><65>ce nazwy (lub warto<74>ci) rzeczywistych i efektywnych
identyfikator<EFBFBD>w u<>ytkownika i grupy.
Je<EFBFBD>eli dana warto<74><6F> nie posiada odpowiedniego wpisu w \fI/etc/passwd\fR
lub \fI/etc/group\fR, to zostanie wy<77>wietlona bez odpowiedniej nazwy.
Opcjonalna flaga \fB-a\fR wy<77>wietla zestaw grup w systemach, kt<6B>re obs<62>uguj<75>
r<EFBFBD>wnoczesne cz<63>onkostwo w wielu grupach.
.SH PLIKI
.IR /etc/passwd " - informacja o kontach u<>ytkownik<69>w"
.br
.IR /etc/group " - informacja o grupach"
.SH ZOBACZ TAK<EFBFBD>E
.BR getuid (2),
.BR getgid (2),
.BR getgroups (2)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)
.SH OD T<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij si<73>, <20>e korzystasz
z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<77> plik ostatnich logowa<77> (lastlog)
.SH SK<EFBFBD>ADNIA
.B lastlog
.RB [ -u
.IR uid ]
.RB [ -t
.IR dni
.SH OPIS
\fBlastlog\fR formatuje i wy<77>wietla zawarto<74><6F> dziennika ostatnich logowa<77>,
\fI/var/log/lastlog\fR. Wy<57>wietlone zostan<61> \fBnazwa u<>ytkownika\fR,
\fBport\fR i \fBczas ostatniego logowania\fR.
Domy<EFBFBD>lnie (bez flag) pozycje pliku wy<77>wietlane s<> w kolejno<6E>ci identyfikator<6F>w
u<EFBFBD>ytkownik<EFBFBD>w (UID).
Wprowadzenie opcji \fB-u \fInazwa_u<EFBFBD>ytkownika\fR spowoduje wy<77>wietlenie
pozycji opisuj<75>cej ostatnie rozpocz<63>cie sesji tylko dla tego u<>ytkownika.
U<EFBFBD>ycie \fB-t \fIdni\fR powoduje, <20>e b<>d<EFBFBD> wy<77>wietlone ostatnie logowania
u<EFBFBD>ytkownik<EFBFBD>w nowsze ni<6E> sprzed zadanej liczby \fIdni\fR.
Opcja \fB-t\fR przes<65>ania u<>ycie opcji \fB-u\fR.
.PP
Je<EFBFBD>eli u<>ytkownik nigdy si<73> nie logowa<77> to zamiast portu i czasu logowania
zostanie wy<77>wietlony komunikat \fB"**Never logged in**"\fR (nigdy si<73> nie
logowa<EFBFBD>).
.SH PLIKI
.IR /var/log/lastlog " - dziennik ostatnich logowa<77>"
.SH PRZESTROGI
Du<EFBFBD>e luki w numeracji UID powoduj<75>, <20>e program b<>dzie pracowa<77> d<>u<EFBFBD>ej, nie
wy<EFBFBD>wietlaj<EFBFBD>c wynik<69>w (np. je<6A>li mmdf=800, za<7A> ostatni uid=170, to program
b<EFBFBD>dzie sprawia<69> wra<72>enie zawieszonego w trakcie przetwarzania uid 171-799).
.SH AUTORZY
Julianne Frances Haugh (jfh@austin.ibm.com)
.br
Phillip Street

View File

@ -1,79 +0,0 @@
.\" {PTM/WK/1999-09-18}
.TH LIMITS 5
.SH NAZWA
limits \- definicja ogranicze<7A> zasob<6F>w
.SH OPIS
Plik
.I limits
(domy<6D>lnie /etc/limits lub LIMITS_FILE zdefiniowane w config.h)
opisuje ograniczenia zasob<6F>w, jakie chcia<69>by<62> narzuci<63> u<>ytkownikom.
W<EFBFBD>a<EFBFBD>cicielem tego pliku powinien by<62> u<>ytkownik root i wy<77><79>cznie dla niego
plik ten powinien by<62> dost<73>pny do odczytu.
.PP
Domy<EFBFBD>lnie u<>ytkownikowi 'root' nie s<> narzucane <20>adne ograniczenia.
W rzeczywisto<74>ci, przy u<>yciu tego sposobu nie jest mo<6D>liwe narzucenie limit<69>w
dla kont r<>wnowa<77>nych root (kont z UID r<>wnym 0).
.PP
Ka<EFBFBD>dy wiersz definiuje ograniczenie dla u<>ytkownika w postaci:
.sp
.I u<EFBFBD>ytkownik <EFBFBD>A<EFBFBD>CUCH_OGRANICZE<EFBFBD>
.PP
\fB<EFBFBD>A<EFBFBD>CUCH OGRANICZE<5A>\fP sk<73>ada si<73> z po<70><6F>czonych definicji ogranicze<7A> zasob<6F>w.
Ka<EFBFBD>de ograniczenie opisywane jest liter<65> z nast<73>puj<75>c<EFBFBD> po niej warto<74>ci<63>
numeryczn<EFBFBD> limitu.
.PP
Dozwolone s<> nast<73>puj<75>ce identyfikatory:
.sp
A: max. przestrze<7A> 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<69>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<65>w
.br
L: max. liczba sesji pracy dla tego u<>ytkownika
.br
P: priorytet procesu, ustawiany przez \fBsetpriority\fR(2).
.PP
Na przyk<79>ad, \fIL2D2048N5\fP jest poprawnym \fB<EFBFBD>A<EFBFBD>CUCHEM OGRANICZE<5A>\fP.
Z uwagi na lepsz<73> czytelno<6E>ci przyj<79>to, <20>e poni<6E>sze zapisy s<> r<>wnowa<77>ne:
.sp
nazwa_u<EFBFBD>ytkownika L2D2048N5
.br
nazwa_u<EFBFBD>ytkownika L2 D2048 N5
.PP
Nale<EFBFBD>y podkre<72>li<6C>, <20>e reszta wiersza po \fInazwie_u<EFBFBD>ytkownika\fP traktowana
jest jako <20>a<EFBFBD>cuch ogranicze<7A>, zatem komentarze nie s<> dozwolone. Nieprawid<69>owy
<EFBFBD>a<EFBFBD>cuch ogranicze<7A> zostanie odrzucony (nie b<>dzie brany pod uwag<61>) przez
program login.
.PP
Nazwa u<>ytkownika r<>wna "\fB*\fP" oznacza wpis domy<6D>lny.
Je<EFBFBD>eli w pliku \fBLIMITS_FILE\fP posiadasz wiele takich wpis<69>w, to jako
domy<EFBFBD>lny zostanie u<>yty ostatni z nich.
.PP
Pojedyncza kreska "\fB-\fP" ca<63>kowicie wy<77><79>cza ograniczenia dla u<>ytkownika.
.PP
Zauwa<EFBFBD> te<74>, prosz<73>, <20>e wszystkie te ograniczenia definiowane s<> w odniesieniu
do pojedynczej sesji (per login). Nie s<> one globalne ani sta<74>e. By<42> mo<6D>e b<>d<EFBFBD>
kiedy<EFBFBD> ograniczenia globalne, ale na razie tyle musi wystarczy<7A> ;)
.SH PLIKI
.I /etc/limits
.SH ZOBACZ TAK<EFBFBD>E
.BR login (1),
.BR setpriority (2),
.BR setrlimit (2)
.SH AUTOR
Cristian Gafton (gafton@sorosis.ro)

View File

@ -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<73> pracy w systemie
.SH SK<EFBFBD>ADNIA
.B login
.RI [ u<EFBFBD>ytkownik " [" zmienne_<EFBFBD>rodowiska ]]
.\" XXX - udokumentowa<77> opcje -f -h -p -r
.SH OPIS
.B login
s<EFBFBD>u<EFBFBD>y do utworzenia nowej sesji pracy z systemem. Zwykle wywo<77>ywane jest
automatycznie w odpowiedzi na zach<63>t<EFBFBD>
.I login:
na terminalu u<>ytkownika.
.B login
mo<EFBFBD>e by<62> specyficzne dla pow<6F>oki i mo<6D>e zosta<74> wywo<77>ane jako podproces.
Najcz<EFBFBD><EFBFBD>ciej,
.B login
traktowane jest przez pow<6F>ok<6F> jako \fBexec login\fR, co powoduje opuszczenie
przez u<>ytkownika bie<69><65>cej pow<6F>oki.
Pr<EFBFBD>ba wykonania \fBlogin\fR z pow<6F>oki innej ni<6E> zg<7A>oszeniowa powoduje komunikat
o b<><62>dzie.
.PP
Przy wywo<77>aniu polecenia z zach<63>ty \fIlogin:\fR, u<>ytkownik mo<6D>e po swojej
nazwie wprowadzi<7A> zmienne <20>rodowiska. Zmienne te wprowadzane s<> w postaci:
\fBNAZWA=WARTO<54><4F>\fR. Nie wszystkie zmienne mog<6F> jednak by<62> ustawione w ten
spos<EFBFBD>b, szczeg<65>lnie \fBPATH\fR, \fBHOME\fR i \fBSHELL\fR.
Dodatkowo, zakazane mo<6D>e by<62> \fBIFS\fR (input field separator: separator p<>l
wej<EFBFBD>ciowych), je<6A>eli pow<6F>ok<6F> zg<7A>oszeniow<6F> u<>ytkownika \fB/bin/sh\fR.
.PP
U<EFBFBD>ytkownik pytany jest o has<61>o, je<6A>li takowe istnieje.
Dla zapobie<69>enia ujawnieniu has<61>a wy<77>wietlanie wprowadzanych znak<61>w jest
wy<EFBFBD><EFBFBD>czone. Dozwolona jest jedynie niewielka liczba nieudanych pr<70>b podania
has<EFBFBD>a. Po wyczerpaniu limitu pr<70>b \fBlogin\fR ko<6B>czy prac<61> za<7A> po<70><6F>czenie
komunikacyjne jest zrywane.
.PP
Je<EFBFBD>eli dla twego konta w<><77>czona jest kontrola wa<77>no<6E>ci has<61>a, mo<6D>esz by<62>
proszony o podanie nowego has<61>a przed kontynuacj<63>. B<>dziesz w<>wczas musia<69>
poda<EFBFBD> stare i nowe has<61>o. Wi<57>cej informacji na ten temat znajdziesz
w \fBpasswd \fR(1).
.PP
Po poprawnym rozpocz<63>ciu sesji (zalogowaniu si<73>), zostanie wy<77>wietlona
wiadomo<EFBFBD><EFBFBD> dnia (je<6A>li jest) i informacja o stanie skrzynki pocztowej.
Mo<EFBFBD>esz wy<77><79>czy<7A> wy<77>wietlanie zawarto<74>ci pliku wiadomo<6D>ci dnia,
\fI/etc/motd\fR, tworz<72>c zerowej wielko<6B>ci plik \fI.hushlogin\fR
w swoim katalogu domowym.
Informacja o stanie skrzynki pocztowej jest jedn<64> z:
"\fBYou have new mail.\fR" (masz now<6F> poczt<7A>),
"\fBYou have mail.\fR" (masz poczt<7A>), lub "\fBNo Mail.\fR" (brak poczty) -
stosownie do stanu skrzynki.
.PP
Identyfikator u<>ytkownika i grupy (UID i GID) zostan<61> ustawione wed<65>ug warto<74>ci
w pliku \fI/etc/passwd\fR.
Warto<EFBFBD>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<EFBFBD>.
Mog<EFBFBD> by<62> ustalane r<>wnie<69> warto<74>ci ulimit, umask oraz nice wed<65>ug wpis<69>w w polu
GECOS.
.PP
W niekt<6B>rych systemach zostanie ustawiona zmienna <20>rodowiskowa \fB$TERM\fR,
wskazuj<EFBFBD>ca na typ terminala na linii tty, jak podano w \fI/etc/ttytype\fR.
.PP
Mo<EFBFBD>e tak<61>e zosta<74> wykonany skrypt startowy (inicjacyjny) twojego interpretatora
polece<EFBFBD>.
Przegl<EFBFBD>dnij, prosz<73>, odpowiedni<6E> sekcj<63> dokumentacji opisuj<75>c<EFBFBD> bardziej
szczeg<EFBFBD><EFBFBD>owo t<> funkcj<63>.
.SH PRZESTROGI
Niniejsza wersja \fBlogin\fR posiada wiele opcji kompilacji, z kt<6B>rych tylko
cz<EFBFBD><EFBFBD><EFBFBD> b<>dzie mie<69> zastosowanie w danej instalacji.
.PP
Po<EFBFBD>o<EFBFBD>enie plik<69>w mo<6D>e by<62> r<><72>ne w zale<6C>no<6E>ci od konfiguracji systemu.
.SH PLIKI
.IR /etc/utmp " - lista bie<69><65>cych sesji pracy"
.br
.IR /etc/wtmp " - lista poprzednich sesji pracy"
.br
.IR /etc/passwd " - informacja o kontach u<>ytkownik<69>w"
.br
.IR /etc/shadow " - zakodowane has<61>a i informacja o ich wa<77>no<6E>ci"
.br
.IR /etc/motd " - plik 'wiadomo<6D>ci dnia'"
.br
.IR /etc/nologin " - zapobiega logowaniu innych ni<6E> root"
.br
.IR /etc/ttytype " - lista typ<79>w terminali"
.br
.IR $HOME/.profile " - skrypt startowy domy<6D>lnej pow<6F>oki"
.br
.IR $HOME/.hushlogin " - zapobiega m.in. wy<77>wietlaniu wiadomo<6D>ci dnia"
.br
.SH ZOBACZ TAK<EFBFBD>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<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij si<73>, <20>e korzystasz
z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<73>pu logowania
.SH OPIS
Plik
.I login.access
okre<EFBFBD>la kombinacje (u<>ytkownik, host) i/lub (u<>ytkownik, tty)
dla kt<6B>rych logowanie b<>dzie albo przyj<79>te albo odrzucone.
.PP
Gdy kto<74> si<73> loguje, plik
.I login.access
przeszukiwany jest do znalezienia pierwszej pozycji pasuj<75>cej do danej
kombinacji (u<>ytkownik, host), lub, w przypadku logowa<77> nie-sieciowych
kombinacji (u<>ytkownik, tty). Pole zezwolenia w tej tablicy pozycji okre<72>la
czy logowanie b<>dzie przyj<79>te czy odrzucone.
.PP
Ka<EFBFBD>dy wiersz tabeli kontroli dost<73>pu logowania posiada trzy, oddzielone
znakiem dwukropka, pola:
.sp 1
.IR zezwolenie : u<EFBFBD>ytkownicy : pochodzenie
.sp 1
Pierwsze pole powinno zawiera<72> znak "\fB+\fR" (dost<73>p zapewniony) lub "\fB-\fR"
(zakaz dost<73>pu). Drugie z p<>l powinno zawiera<72> list<73> jednego lub wi<77>cej nazw
u<EFBFBD>ytkownik<EFBFBD>w, grup lub s<>owo
.B ALL
(zawsze pasuje do wszystkich). Trzecie pole powinno by<62> list<73> jednej lub wi<77>cej
nazw tty (dla logowa<77> nie-sieciowych), nazw host<73>w, domen (rozpoczynaj<61>cych si<73>
od kropki), adres<65>w host<73>w, internetowych numer<65>w sieci (ko<6B>cz<63>cych si<73>
kropk<EFBFBD>), s<>owem
.B ALL
(wszystkie - zawsze pasuje) lub
.B LOCAL
(dopasowuje dowolny <20>a<EFBFBD>cuch nie zawieraj<61>cy kropki).
Je<EFBFBD>eli uruchomisz NIS mo<6D>esz u<>y<EFBFBD> @nazwagrupysieciowej we wzorcu hosta
lub u<>ytkownika.
.\" @netgroupname
.PP
Operator
.B EXCEPT
(opr<70>cz) umo<6D>liwia pisanie z<>o<EFBFBD>onych regu<67>.
.PP
Plik grup przeszukiwany jest wy<77><79>cznie wtedy, gdy nazwa nie pasuje do
loguj<EFBFBD>cego si<73> u<>ytkownika. Dopasowywane s<> tylko te grupy, w kt<6B>rych
u<EFBFBD>ytkownik jest jawnie wymieniony: program nie sprawdza warto<74>ci
identyfikatora grupy g<><67>wnej u<>ytkownika.
.SH PLIKI
.I /etc/login.access
.SH ZOBACZ TAK<EFBFBD>E
.BR login (1)
.SH AUTOR
Guido van Rooij

View File

@ -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<7A> dla naszej maszyny konfiguracj<63> pakietu shadow login.
Plik ten jest wymagany. Jego nieobecno<6E><6F> nie wstrzyma dzia<69>ania systemu,
ale prawdopodobnie spowoduje nieprzewidywalne dzia<69>anie.
.PP
Plik ten jest czytelnym plikiem tekstowym. Ka<4B>dy z jego wierszy opisuje jeden
parametr konfiguracji. Wiersze sk<73>adaj<61> si<73> z nazwy parametru i jego warto<74>ci,
oddzielonych bia<69>ym znakiem. Ignorowane s<> puste wiersze i wiersze komentarzy.
Komentarze rozpoczynaj<61> si<73> od znaku '#', kt<6B>ry musi by<62> pierwszym znakiem
wiersza (pomijaj<61>c bia<69>e znaki).
.PP
Istniej<EFBFBD> cztery typy warto<74>ci parametr<74>w: napisy, logiczne (boolean),
liczby i d<>ugie liczby (long numbers). Napis jest z<>o<EFBFBD>ony
z dowolnych znak<61>w drukowalnych. Parametr logiczny mo<6D>e mie<69> albo warto<74><6F>
"yes" albo "no". Niezdefiniowanemu parametrowi logicznemu lub parametrowi,
kt<EFBFBD>remu przypisano warto<74><6F> inn<6E> od powy<77>szych przypisane zostanie "no".
Liczby (zar<61>wno zwyk<79>e jak i d<>ugie) mog<6F> by<62> warto<74>ciami dziesi<73>tnymi,
<EFBFBD>semkowymi (poprzed<65> warto<74><6F> cyfr<66> "0") albo szesnastkowymi (poprzed<65> warto<74><6F>
sekwencj<EFBFBD> "0x"). Maksymalne warto<74>ci zwyk<79>ych i d<>ugich parametr<74>w
numerycznych zale<6C><65> od maszyny.
.PP
Obs<EFBFBD>ugiwane s<> nast<73>puj<75>ce opcje konfiguracyjne:
.\"
.IP "CHFN_AUTH (logiczna)"
Je<EFBFBD>eli ma warto<74><6F>
.IR yes ,
to programy
.B chfn
i
.B chsh
b<EFBFBD>d<EFBFBD> pyta<74> o has<61>o przed dokonaniem zmian, chyba <20>e uruchamiane s<> przez
superu<EFBFBD>ytkownika.
.\"
.IP "CHFN_RESTRICT (napis)"
Ten parametr okre<72>la, jakie warto<74>ci w polu
.I gecos
pliku
.I passwd
mog<EFBFBD> by<62> zmieniane przez zwyk<79>ych u<>ytkownik<69>w za pomoc<6F> programu
.B chfn
Mo<EFBFBD>e on by<62> dowoln<6C> kombinacj<63> liter
.IR f ,
.IR r ,
.IR w ,
.IR h ,
oznaczaj<EFBFBD>cych odpowiednio: Full name (pe<70>na nazwa), Room number (numer pokoju),
Work phone (telefon s<>u<EFBFBD>bowy) i Home phone (telefon domowy).
Je<EFBFBD>li parametr nie jest podany, to zmian mo<6D>e dokonywa<77> wy<77><79>cznie
superu<EFBFBD>ytkownik.
.\"
.IP "CONSOLE (napis)"
Je<EFBFBD>li podana, definicja ta okre<72>la ograniczony zestaw linii, na kt<6B>rych
dozwolone jest rozpoczynanie sesji u<>ytkownika root. Pr<50>by logowania
u<EFBFBD>ytkownika root niespe<70>niaj<61>ce ustalonych tu kryteri<72>w zostan<61> odrzucone.
Warto<EFBFBD><EFBFBD> tego pola mo<6D>e wyst<73>pi<70> w jednej z dwu postaci: albo pe<70>nej nazwy
<EFBFBD>cie<EFBFBD>kowej pliku, jak na przyk<79>ad
.sp
.ft I
CONSOLE /etc/consoles
.ft R
.sp
albo listy linii terminalowych rozdzielonych dwukropkami, jak poni<6E>ej:
.sp
.ft I
CONSOLE console:tty01:tty02:tty03:tty04
.ft R
.sp
(Zauwa<77>, <20>e wymienione tu nazwy nie zawieraj<61> <20>cie<69>ki /dev/).
Je<EFBFBD>eli podano <20>cie<69>kow<6F> nazw<7A> pliku, to ka<6B>dy jego wiersz powinien okre<72>la<6C>
jedn<EFBFBD> lini<6E> terminalow<6F>. Je<4A>li parametr ten nie jest zdefiniowany albo podany
plik nie istnieje, to u<>ytkownik root b<>dzie m<>g<EFBFBD> si<73> logowa<77> z dowolnej linii
terminalowej. Poniewa<77> usuni<6E>cie lub obci<63>cie pliku definiuj<75>cego
dozwolone linie mo<6D>e spowodowa<77> nieautoryzowane logowania roota, plik ten musi
by<EFBFBD> chroniony. Tam, gdzie bezpiecze<7A>stwo jest spraw<61> kluczow<6F>, powinna by<62>
u<EFBFBD>ywana posta<74> listy separowanej dwukropkami, co chroni przed potencjaln<6C>
pr<EFBFBD>b<EFBFBD> ataku w opisany spos<6F>b.
.\"
.IP "CONSOLE_GROUPS (napis)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "CRACKLIB_DICTPATH (napis)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "DEFAULT_HOME (logiczna)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "DIALUPS_CHECK_ENAB (logiczna)"
Je<EFBFBD>eli ma warto<74><6F>
.I yes
a plik
.I /etc/dialups
istnieje, to na liniach telefonicznych wyszczeg<65>lnionych w tym pliku s<>
w<EFBFBD><EFBFBD>czane wt<77>rne has<61>a (has<61>a telefoniczne). Plik ten powinien zawiera<72> list<73>
linii telefonicznych (dialups), po jednej w wierszu, na przyk<79>ad:
.nf
.sp
.ft I
ttyfm01
ttyfm02
\0\0.
\0\0.
\0\0.
.ft R
.sp
.fi
.\"
.IP "ENVIRON_FILE (napis)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "ENV_HZ (napis)"
Parametr ten okre<72>la warto<74><6F> parametru <20>rodowiska HZ. Przyk<79>ad u<>ycia:
.sp
\fIENV_HZ HZ=50\fR
.sp
Je<EFBFBD>eli jest on zdefiniowany, to nie zostanie ustanowiona <20>adna warto<74><6F> HZ.
.\"
.IP "ENV_PATH (napis)"
Parametr ten musi by<62> zdefiniowany jako <20>cie<69>ka przeszukiwania dla zwyk<79>ych
u<EFBFBD>ytkownik<EFBFBD>w. Przy logowaniu z UID innym ni<6E> zero, zmienna <20>rodowiskowa PATH
jest inicjowana t<> w<>a<EFBFBD>nie warto<74>ci<63>. Jest to parametr wymagany; je<6A>eli nie
zostanie zdefiniowany, to zostanie nadana, by<62> mo<6D>e niepoprawna, warto<74><6F>
domy<EFBFBD>lna.
.\"
.IP "ENV_SUPATH (napis)"
Parametr ten musi by<62> zdefiniowany jako <20>cie<69>ka przeszukiwania dla
superu<EFBFBD>ytkownika. Przy rozpoczynaniu sesji z UID r<>wnym zero, zmienna
<EFBFBD>rodowiskowa PATH jest inicjowana t<> w<>a<EFBFBD>nie warto<74>ci<63>. Jest to parametr
wymagany; je<6A>eli nie zostanie zdefiniowany, to zostanie nadana, by<62> mo<6D>e
niepoprawna, warto<74><6F> domy<6D>lna.
.\"
.IP "ENV_TZ (napis)"
Parametr ten zawiera informacj<63> s<>u<EFBFBD><75>c<EFBFBD> do utworzenia zmiennej <20>rodowiskowej TZ.
Jego warto<74><6F> musi by<62> albo wprost wymagan<61> zawarto<74>ci<63> TZ, albo
pe<EFBFBD>n<EFBFBD> nazw<7A> <20>cie<69>kow<6F> pliku zawieraj<61>cego t<> informacj<63>. Przyk<79>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<EFBFBD>eli podano nieistniej<65>cy plik, to TZ zostanie zainicjowane pewn<77> warto<74>ci<63>
domy<EFBFBD>ln<EFBFBD>. Je<4A>eli nie zdefiniowano tego parametru to nie b<>dzie ustawiona
<EFBFBD>adna warto<74><6F> TZ.
.\"
.IP "ERASECHAR (liczba)"
T<EFBFBD> warto<74>ci<63> jest inicjowany terminalowy znak
.I erase
(kasowania). Jest to obs<62>ugiwane tylko w systemach z interfejsem
.IR termio,
np. System V. Je<4A>eli nie podano parametru, to znak kasowania zostanie
zainicjowany na backspace. Informacj<63> powi<77>zan<61> znajdziesz w opisie KILLCHAR.
.\"
.IP "FAILLOG_ENAB (logiczna)"
Je<EFBFBD>eli ustawiona na
.I yes
to nieudane logowania b<>d<EFBFBD> odnotowywane w pliku
.I /var/log/faillog
w formacie
.BR faillog (8).
.\"
.IP "FAIL_DELAY (liczba)"
Czas op<6F><70>nienia, wyra<72>ony w sekundach, po ka<6B>dej nieudanej pr<70>bie logowania.
.\"
.IP "FAKE_SHELL (napis)"
Zamiast rzeczywistej pow<6F>oki u<>ytkownika zostanie uruchomiony program okre<72>lony
warto<EFBFBD>ci<EFBFBD> tego parametru. Nazwa widoczna (argv[0]) programu b<>dzie jednak
nazw<EFBFBD> pow<6F>oki. Program przed uruchomieniem faktycznej pow<6F>oki mo<6D>e wykonywa<77>
dowoln<EFBFBD> akcj<63> (logowanie, dodatkowe uwierzytelnianie, banner itp.).
.\"
.IP "FTMP_FILE (napis)"
Okre<EFBFBD>la pe<70>n<EFBFBD> <20>cie<69>kow<6F> nazw<7A> pliku, w kt<6B>rym rejestrowane s<> nieudane pr<70>by
rozpoczynania sesji pracy. W przypadku nieudanej pr<70>by logowania do pliku
dopisywana jest pozycja o formacie
.IR utmp .
Zauwa<EFBFBD>, <20>e r<><72>ni si<73> to od rejestracji niepomy<6D>lnych logowa<77> do
.IR /var/log/faillog ,
gdy<EFBFBD> opisywana funkcja odnotowuje wszystkie nieudane pr<70>by, podczas gdy
"faillog" kumuluje informacj<63> o pora<72>kach danego u<>ytkownika. Je<4A>li nie
podano tego parametru, to rejestracja b<>dzie wy<77><79>czona. Powi<77>zane informacje
znajdziesz w opisie FAILLOG_ENAB i LOG_UNKFAIL_ENAB.
.\"
.IP "GID_MAX (liczba)"
.IP "GID_MIN (liczba)"
Zakres identyfikator<6F>w grup, w obr<62>bie kt<6B>rego mo<6D>e wybiera<72> program
.BR groupadd .
.\"
.IP "HUSHLOGIN_FILE (nazwa)"
Parametr u<>ywany do ustalenia okoliczno<6E>ci cichego logowania ("hushlogin").
Okoliczno<EFBFBD>ci te mog<6F> by<62> ustalone na dwa sposoby. Po pierwsze, je<6A>eli warto<74>ci<63>
parametru jest nazwa pliku, a plik ten istnieje w katalogu domowym u<>ytkownika,
to wprowadzane s<> warunki cichego logowania. Zawarto<74><6F> pliku jest ignorowana;
sama jego obecno<6E><6F> powoduje ciche logowanie. Po drugie, je<6A>eli warto<74>ci<63>
parametru jest pe<70>na nazwa <20>cie<69>kowa pliku a w pliku tym znaleziona zostanie
nazwa u<>ytkownika lub nazwa jego pow<6F>oki, to wprowadzone zostan<61> warunki
cichego logowania. W tym przypadku, plik powinien mie<69> format podobny do:
.nf
.sp
.ft I
demo
/usr/lib/uucp/uucico
\0\0.
\0\0.
\0\0.
.ft R
.sp
.fi
Je<EFBFBD>eli nie zdefiniowano tego parametru, to warunki cichego logowania nigdy
nie wyst<73>pi<70>. W trakcie cichego logowanie wstrzymane jest wy<77>wietlanie
wiadomo<EFBFBD>ci dnia (message of the day), ostatniego udanego i nieudanego
rozpocz<EFBFBD>cia sesji pracy, wy<77>wietlanie stanu skrzynki pocztowej i sprawdzenie
wieku has<61>a. Zauwa<77>, <20>e zezwolenie na pliki cichego logowania w katalogach
domowych u<>ytkownik<69>w pozwala im na wstrzymanie kontroli wa<77>no<6E>ci
has<EFBFBD>a. Informacje zwi<77>zane z tym tematem znajdziesz w opisach MOTD_FILE,
FILELOG_ENAB, LASTLOG_ENAB i MAIL_CHECK_ENAB.
.\"
.IP "ISSUE_FILE (napis)"
Pe<EFBFBD>na <20>cie<69>kowa nazwa pliku wy<77>wietlanego przed ka<6B>d<EFBFBD> zach<63>t<EFBFBD> do logowania.
.\"
.IP "KILLCHAR (liczba)"
T<EFBFBD> warto<74>ci<63> inicjowany jest terminalowy znak
.IR kill .
Jest to obs<62>ugiwane tylko w systemach z interfejsem
.IR termio,
np. System V. Je<4A>eli nie podano parametru, to znak kasowania zostanie
zainicjowany na \s-2CTRL/U\s0. Informacj<63> powi<77>zan<61> znajdziesz w opisie
ERASECHAR.
.\"
.IP "LASTLOG_ENAB (logiczna)"
Je<EFBFBD>li ma warto<74><6F>
.IR yes ,
i istnieje plik
.IR /var/log/lastlog ,
to w tym pliku b<>dzie rejestrowane poprawne rozpocz<63>cie sesji pracy u<>ytkownika
(zalogowanie si<73>). Ponadto, je<6A>li opcja ta jest w<><77>czona, to podczas logowania
si<EFBFBD> u<>ytkownika b<>dzie wy<77>wietlana informacja o liczbie ostatnich udanych
i nieudanych logowa<77>. Zako<6B>czone niepowodzeniem logowania nie b<>d<EFBFBD> wy<77>wietlane
je<EFBFBD>li nie w<><77>czono FAILLOG_ENAB. W warunkach cichego logowanie nie
b<EFBFBD>d<EFBFBD> wy<77>wietlane informacje ani o pomy<6D>lnych ani o niepomy<6D>lnych logowaniach.
.\"
.IP "LOGIN_RETRIES (liczba)"
Dozwolona liczba pr<70>b logowania przed zako<6B>czeniem pracy programu
.BR login .
.\"
.IP "LOGIN_STRING (napis)"
XXX powinno zosta<74> udokumentowane.
.IP "LOGIN_TIMEOUT (liczba)"
XXX powinno zosta<74> udokumentowane.
.IP "LOG_OK_LOGINS (logiczna)"
XXX powinno zosta<74> udokumentowane.
.IP "LOG_UNKFAIL_ENAB (logiczna)"
Je<EFBFBD>li posiada warto<74><6F>
.I yes
to nieznane nazwy u<>ytkownik<69>w b<>d<EFBFBD> r<>wnie<69> odnotowywane je<6A>li w<><77>czone jest
rejestrowanie nieudanych pr<70>b rozpocz<63>cia sesji. Zauwa<77>, <20>e niesie to ze sob<6F>
potencjalne zagro<72>enie bezpiecze<7A>stwa: powszechn<68> przyczyn<79> nieudanego
logowania jest zamiana nazwy u<>ytkownika i has<61>a, tryb ten zatem spowoduje,
<EFBFBD>e cz<63>sto w rejestrach nieudanych logowa<77> b<>d<EFBFBD> si<73> odk<64>ada<64> jawne has<61>a.
Je<EFBFBD>eli opcja ta jest wy<77><79>czona, to nieznane nazwy u<>ytkownik<69>w b<>d<EFBFBD> pomijane
w komunikatach o nieudanych pr<70>bach logowania.
.\"
.IP "MAIL_CHECK_ENAB (logiczna)"
Je<EFBFBD>eli ma warto<74><6F>
.IR yes ,
to u<>ytkownik po rozpocz<63>ciu sesji pracy b<>dzie powiadamiany o stanie swojej
skrzynki pocztowej. Informacj<63> zwi<77>zan<61> z tym tematem znajdziesz w opisie
MAIL_DIR.
.\"
.IP "MAIL_DIR (napis)"
Okre<EFBFBD>la pe<70>n<EFBFBD> nazw<7A> <20>cie<69>kow<6F> do katalogu zawieraj<61>cego pliki skrzynki
pocztowej u<>ytkownika. Do powy<77>szej <20>cie<69>ki doklejana jest nazwa u<>ytkownika,
tworz<EFBFBD>c w ten spos<6F>b zmienn<6E> <20>rodowiskow<6F> MAIL - <20>cie<69>k<EFBFBD> do skrzynki
u<EFBFBD>ytkownika. Musi by<62> zdefiniowany albo niniejszy parametr albo parametr
MAIL_FILE; je<6A>li nie zostan<61> zdefiniowane, to zostanie nadana, by<62> mo<6D>e
niepoprawna, warto<74><6F> domy<6D>lna. Zobacz tak<61>e opis MAIL_CHECK_ENAB.
.\"
.IP "MAIL_FILE (napis)"
Okre<EFBFBD>la nazw<7A> pliku skrzynki pocztowej u<>ytkownika. Nazwa ta doklejana jest
na koniec nazwy katalogu domowego u<>ytkownika tworz<72>c zmienn<6E> <20>rodowiskow<6F>
MAIL - <20>cie<69>k<EFBFBD> do skrzynki u<>ytkownika. Musi by<62> zdefiniowany albo niniejszy
parametr albo parametr MAIL_DIR; je<6A>li nie zostan<61> zdefiniowane, to zostanie
nadana, by<62> mo<6D>e niepoprawna, warto<74><6F> domy<6D>lna. Zobacz tak<61>e opis
MAIL_CHECK_ENAB.
.\"
.IP "MD5_CRYPT_ENAB (logiczna)"
Je<EFBFBD>eli ma warto<74><6F>
.IR yes ,
to program
.B passwd
b<EFBFBD>dzie kodowa<77> nowo zmieniane has<61>a przy pomocy nowego algorytmu
.BR crypt (3),
opartego o MD-5. Algorytm ten pierwotnie pojawi<77> si<73> we FreeBSD i jest te<74>
obs<EFBFBD>ugiwany przez libc-5.4.38 oraz glibc-2.0 (lub wy<77>sz<73>) w Linuksie.
Pozwala on na u<>ywanie hase<73> d<>u<EFBFBD>szych ni<6E> 8 znak<61>w (ograniczone przez
.BR getpass (3)
do 127 znak<61>w), ale nie jest zgodny z tradycyjnymi implementacjami polecenia
.BR crypt (3).
.\"
.IP "MOTD_FILE (napis)"
Okre<EFBFBD>la list<73> rozdzielonych dwukropkami <20>cie<69>ek do plik<69>w "wiadomo<6D>ci dnia"
(message of the day, MOTD). Je<4A>li podany plik istnieje, to jego zawarto<74><6F> jest
wy<EFBFBD>wietlana u<>ytkownikowi podczas rozpoczynania przez niego sesji pracy.
Je<EFBFBD>eli parametr ten jest niezdefiniowany lub wykonywane jest ciche logowanie,
to informacja ta b<>dzie pomijana.
.\"
.IP "NOLOGINS_FILE (napis)"
Okre<EFBFBD>la pe<70>n<EFBFBD> nazw<7A> <20>cie<69>kow<6F> pliku zabraniaj<61>cego logowa<77> dla u<>ytkownik<69>w
innych ni<6E> root. Je<4A>eli plik ten istnieje a u<>ytkownik inny ni<6E> root usi<73>uje
si<EFBFBD> zalogowa<77>, to wy<77>wietlana zostanie zawarto<74><6F> pliku a u<>ytkownik b<>dzie
roz<EFBFBD><EFBFBD>czony. Je<4A>eli nie podano tego parametru, to opisana funkcja b<>dzie
wy<EFBFBD><EFBFBD>czona.
.\"
.IP "NOLOGIN_STR (napis)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "OBSCURE_CHECKS_ENAB (logiczna)"
Je<EFBFBD>eli ma warto<74><6F>
.IR yes ,
to program
.B passwd
przed akceptacj<63> zmiany has<61>a b<>dzie wykonywa<77> dodatkowe sprawdzenia.
Kontrole te s<> do<64><6F> proste, a ich u<>ycie jest zalecane.
Te sprawdzenia nieoczywisto<74>ci s<> pomijane, je<6A>eli
.B passwd
uruchamiane jest przez u<>ytkownika
.IR root .
Zobacz tak<61>e opis PASS_MIN_LEN.
.\"
.IP "PASS_ALWAYS_WARN (logiczna)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "PASS_CHANGE_TRIES (liczba)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "PASS_MIN_DAYS (liczba)"
Minimalna liczba dni mi<6D>dzy dozwolonymi zmianami has<61>a. Jakiekolwiek pr<70>by
zmiany has<61>a podejmowane wcze<7A>niej zostan<61> odrzucone. Je<4A>eli nie podano tego
parametru, to przyj<79>ta zostanie warto<74><6F> zerowa.
.\"
.IP "PASS_MIN_LEN (liczba)"
Minimalna liczba znak<61>w w akceptowalnym ha<68>le. Pr<50>ba przypisania has<61>a o
mniejszej liczbie znak<61>w zostanie odrzucona. Warto<74><6F> zero wy<77><79>cza t<>
kontrol<EFBFBD>. Je<4A>li nie podano parametru, to przyj<79>ta zostanie warto<74><6F> zerowa.
.\"
.IP "PASS_MAX_DAYS (liczba)"
Maksymalna liczba dni, przez jak<61> mo<6D>e by<62> u<>ywane has<61>o. Je<4A>li has<61>o jest
stanie si<73> starsze, to rachunek zostanie zablokowany. Je<4A>li nie podano, to
zostanie przyj<79>ta bardzo du<64>a warto<74><6F>.
.\"
.IP "PASS_MAX_LEN (liczba)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "PASS_WARN_AGE (liczba)"
Liczba dni ostrzegania przed wyga<67>ni<6E>ciem has<61>a. Warto<74><6F> zerowa oznacza,
<EFBFBD>e ostrze<7A>enie wyst<73>pi wy<77><79>cznie w dniu utraty wa<77>no<6E>ci has<61>a. Warto<74><6F>
ujemna oznacza brak ostrze<7A>e<EFBFBD>. Brak parametru oznacza, <20>e ostrze<7A>enia nie
b<EFBFBD>d<EFBFBD> wy<77>wietlane.
.\"
.IP "PORTTIME_CHECKS_ENAB (logiczna)"
Je<EFBFBD>li ma warto<74><6F>
.IR yes ,
za<EFBFBD> plik
.I /etc/porttime
istnieje, to b<>dzie on przegl<67>dany, by upewni<6E> si<73> czy u<>ytkownik mo<6D>e si<73>
w danej chwili zalogowa<77> na danej linii. Patrz tak<61>e podr<64>cznik
.BR porttime (5)
.\"
.IP "QMAIL_DIR (napis)"
Dla u<>ytkownik<69>w Qmail, parametr ten okre<72>la katalog, w kt<6B>rym przechowywana
jest hierarchia Maildir.
Zobacz te<74> MAIL_CHECK_ENAB.
.\"
.IP "QUOTAS_ENAB (logiczna)"
Je<EFBFBD>li ma warto<74><6F>
.I yes ,
w<EFBFBD>wczas dla danego u<>ytkownika "ulimit," "umask" i "niceness" b<>d<EFBFBD>
zainicjowane warto<74>ciami podanymi (o ile s<> podane) w polu
.I gecos
pliku
.IR passwd .
Patrz tak<61>e podr<64>cznik
.BR passwd (5).
.\"
.IP "SU_NAME (napis)"
Przypisuje nazw<7A> polecenia do uruchomionego "su -". Na przyk<79>ad, je<6A>li
parametr ten jest zdefiniowany jako "su", to polecenie
.BR ps (1)
poka<EFBFBD>e uruchomione polecenie jako "-su". Je<4A>li parametr ten jest
niezdefiniowany, to
.BR ps (1)
poka<EFBFBD>e nazw<7A> faktycznie wykonywanej pow<6F>oki, np. co<63> w rodzaju "-sh".
.\"
.IP "SULOG_FILE (napis)"
Pokazuje pe<70>n<EFBFBD> nazw<7A> <20>cie<69>kow<6F> pliku, w kt<6B>rym rejestrowane jest wykorzystanie
.BR su .
Je<EFBFBD>li parametr ten nie jest okre<72>lony, to rejestrowanie nie jest wykonywane.
Poniewa<EFBFBD> polecenie
.B su
mo<EFBFBD>e by<62> u<>ywane podczas pr<70>b uwierzytelnienia has<61>a, do odnotowywania
u<EFBFBD>ycia
.B su
powinny by<62> u<>ywane albo niniejsza opcja
albo
.IR syslog .
Zobacz te<74> opis SYSLOG_SU_ENAB.
.\"
.IP "SU_WHEEL_ONLY (logiczna)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "SYSLOG_SG_ENAB (logiczna)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "SYSLOG_SU_ENAB (logiczna)"
Je<EFBFBD>eli ma warto<74><6F>
.IR yes ,
za<EFBFBD> program
.B login
zosta<EFBFBD> skompilowany z obs<62>ug<75>
.IR syslog ,
to wszelkie dzia<69>ania
.B su
b<EFBFBD>d<EFBFBD> rejestrowane za pomoc<6F>
.IR syslog .
Zobacz te<74> opis SULOG_FILE.
.\"
.IP "TTYGROUP (napis lub liczba)"
Grupa (w<>a<EFBFBD>cicielska) terminala inicjowana jest na nazw<7A> b<>d<EFBFBD> numer tej grupy.
Jeden z dobrze znanych atak<61>w polega na wymuszeniu sekwencji kontrolnych
terminala na linii terminalowej innego u<>ytkownika. Problemu tego mo<6D>na
unikn<EFBFBD><EFBFBD> wy<77><79>czaj<61>c prawa zezwalaj<61>ce innym u<>ytkownikom na dost<73>p do linii
terminalowej, ale niestety zapobiega to r<>wnie<69> dzia<69>aniu program<61>w takich
jak
.BR write .
Innym rozwi<77>zaniem jest pos<6F>u<EFBFBD>enie si<73> tak<61> wersj<73> programu
.BR write ,
kt<EFBFBD>ra odfiltrowuje potencjalnie niebezpieczne sekwencje znak<61>w. Nast<73>pnie
programowi nale<6C>y przyzna<6E> rozszerzone prawa dost<73>pu (SGID) dla specjalnej
grupy, ustawi<77> grup<75> w<>a<EFBFBD>cicieli terminala na t<> grup<75> i nada<64> prawa dost<73>pu
\fI0620\fR do linii. Definicja TTYGROUP powsta<74>a do obs<62>ugi tej w<>a<EFBFBD>nie
sytuacji.
Je<EFBFBD>li pozycja ta nie jest zdefiniowana, to grupa terminala inicjowana jest
na numer grupy u<>ytkownika.
Zobacz tak<61>e TTYPERM.
.\"
.IP "TTYPERM (liczba)"
T<EFBFBD> warto<74>ci<63> inicjowane s<> prawa terminala logowania. Typowymi warto<74>ciami s<>
\fI0622\fR zezwalaj<61>ce innym na pisanie do linii lub \fI0600\fR zabezpieczaj<61>ce
lini<EFBFBD> przed innymi u<>ytkownikami. Je<4A>eli nie podano tego parametru, to prawa
dost<EFBFBD>pu do terminala zostan<61> zainicjowane warto<74>ci<63> \fI0622\fR. Zobacz te<74>
TTYGROUP.
.\"
.IP "TTYTYPE_FILE (napis)"
Okre<EFBFBD>la pe<70>n<EFBFBD> nazw<7A> <20>cie<69>kow<6F> pliku przypisuj<75>cego typy terminali do linii
terminalowych. Ka<4B>dy z wierszy tego pliku zawiera rozdzielone bia<69>ym znakiem
typ i lini<6E> terminala. Na przyk<79>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<EFBFBD>y do inicjowania zmiennej <20>rodowiska TERM. Wiersz
rozpoczynaj<EFBFBD>cy si<73> znakiem # b<>dzie traktowany jak komentarz. Je<4A>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<74> udokumentowane.
.IP "UID_MIN (liczba)"
XXX powinno zosta<74> udokumentowane.
.\"
.IP "ULIMIT (d<>uga liczba)"
Warto<EFBFBD>ci<EFBFBD> t<> inicjowany jest limit wielko<6B>ci pliku. Cecha ta obs<62>ugiwana
jest wy<77><79>cznie w systemach posiadaj<61>cych
.IR ulimit ,
np. System V. Je<4A>li nie podano, to limit wielko<6B>ci pliku zostanie ustalony
na pewn<77> wielk<6C> warto<74><6F>.
.\"
.IP "UMASK (liczba)"
T<EFBFBD> warto<74>ci<63> inicjowana jest maska praw dost<73>pu. Nie podana, ustawia mask<73>
praw na zero.
.\"
.IP "USERDEL_CMD (napis)"
XXX powinno zosta<74> udokumentowane.
.\"
.SH POWI<EFBFBD>ZANIA
Poni<EFBFBD>sze zestawienie pokazuje, kt<6B>re z program<61>w wchodz<64>cych w sk<73>ad pakietu
shadow wykorzystuj<75> 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<EFBFBD><EFBFBD>DY
Niekt<EFBFBD>re z obs<62>ugiwanych parametr<74>w konfiguracyjnych pozosta<74>y
nieopisane w niniejszym podr<64>czniku.
.SH ZOBACZ TAK<EFBFBD>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)

View File

@ -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<7A> czasu logowania
.SH SK<EFBFBD>ADNIA
.B logoutd
.SH OPIS
.B logoutd
wymusza ograniczenia port<72>w i czas<61>w logowania podane w
.IR /etc/porttime .
.B logoutd
powinno by<62> uruchamiane z \fI/etc/rc\fR.
Okresowo przegl<67>dany jest plik \fI/etc/utmp\fR. Sprawdzana jest ka<6B>da nazwa
u<EFBFBD>ytkownika, by m<>c stwierdzi<7A> czy posiada on zezwolenie na prac<61> w bie<69><65>cym
czasie na danym porcie.
Ka<EFBFBD>da sesja pracy (logowania) naruszaj<61>ca ograniczenia zawarte
w \fI/etc/porttime\fR jest ko<6B>czona.
.SH PLIKI
.IR /etc/porttime " - zezwolenia dla logowania na portach"
.br
.IR /etc/utmp " - bie<69><65>ce sesje pracy"
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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<EFBFBD>ADNIA
\fBmkpasswd\fR [\fB-fvgps\fR] \fIplik\fR
.SH OPIS
.B mkpasswd
czyta plik w formacie okre<72>lonym przez flagi i konwertuje go postaci
odpowiedniego pliku bazy danych.
Wymienione pliki baz danych u<>ywane s<> do poprawienia wydajno<6E>ci dost<73>pu
w systemach o du<64>ej liczbie u<>ytkownik<69>w.
Pliki wynikowe otrzymaj<61> nazwy \fIplik\fR.dir i \fIplik\fR.pag.
.PP
Opcja \fB-f\fR powoduje, <20>e \fBmkpasswd\fR ignoruje istnienie plik<69>w
wynikowych i nadpisuje je.
Normalnie \fBmkpasswd\fR skar<61>y si<73> na istnienie plik<69>w wynikowych
i ko<6B>czy prac<61>.
.PP
Opcja \fB-v\fR powoduje wy<77>wietlanie informacji o ka<6B>dym konwertowanym
rekordzie oraz komunikatu ko<6B>cowego.
.PP
Opcja \fB-g\fR traktuje plik <20>r<EFBFBD>d<EFBFBD>owy tak, jak gdyby by<62> on w formacie
pliku \fI/etc/group\fR.
Przy po<70><6F>czeniu z opcj<63> \fB-s\fR u<>ywany jest format pliku \fI/etc/gshadow\fR.
.PP
Opcja \fB-p\fR traktuje plik <20>r<EFBFBD>d<EFBFBD>owy tak, jak gdyby by<62> on w formacie
pliku \fI/etc/passwd\fR.
Jest to opcja domy<6D>lna.
Przy po<70><6F>czeniu z opcj<63> \fB-s\fR u<>ywany jest format pliku \fI/etc/shadow\fR.
.SH PRZESTROGI
U<EFBFBD>ycie wi<77>cej ni<6E> jednego pliku bazy ogranicza si<73> do system<65>w posiadaj<61>cych
bibliotek<EFBFBD> baz danych NDBM. Mo<4D>e zatem nie by<62> dost<73>pne w ka<6B>dym systemie.
.SH UWAGA
Poniewa<EFBFBD> wi<77>kszo<7A><6F> polece<63> jest w stanie aktualizowa<77> pliki bazy danych
podczas dokonywania zmian, \fBmkpasswd\fR potrzebne jest jedynie
do ponownego utworzenia usuni<6E>tego lub zepsutego pliku bazy.
.SH PLIKI
.IR /etc/passwd " - informacja o kontach u<>ytkownik<69>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<EFBFBD>E
.BR passwd (5),
.BR group (5),
.BR shadow (5)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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<69> identyfikator grupy
.br
sg \- wykonaj polecenie przy innym ID grupy
.SH SK<EFBFBD>ADNIA
.BR newgrp " [" - ]
.RI [ grupa ]
.br
.BR sg " [" - ]
.RI [ grupa
.RB [ -c
.IR polecenie ]]
.SH OPIS
.B newgrp
s<EFBFBD>u<EFBFBD>y do zmiany bie<69><65>cego identyfikatora grupy (GID) podczas sesji logowania.
Je<EFBFBD>eli podano opcjonaln<6C> flag<61> \fB\-\fR, to <20>rodowisko u<>ytkownika zostanie
ponownie zainicjowane, tak jak w<>wczas, gdy u<>ytkownik si<73> loguje. Je<4A>eli nie
u<EFBFBD>yto flagi \fB\-\fR, to bie<69><65>ce <20>rodowisko, <20><>cznie z bie<69><65>cym katalogiem
roboczym, pozostaje bez zmian.
.PP
.B newgrp
zmienia bie<69><65>cy faktyczny identyfikator grupy na identyfikator danej grupy
lub, je<6A>li nie podano nazwy grupy, na identyfikator grupy domy<6D>lnej, podanej
w \fI/etc/passwd\fR.
Je<EFBFBD>eli grupa posiada has<61>o, za<7A> u<>ytkownik nie ma has<61>a b<>d<EFBFBD> nie jest jej
cz<EFBFBD>onkiem, to zostanie poproszony o podanie has<61>a.
Je<EFBFBD>eli has<61>o grupy jest puste za<7A> u<>ytkownik nie jest jej cz<63>onkiem, to
efektem b<>dzie odmowa dost<73>pu.
.PP
Polecenie
.B sg
dzia<EFBFBD>a podobnie do \fBnewgrp\fR, lecz nie zast<73>puje pow<6F>oki u<>ytkownika,
wi<EFBFBD>c po zako<6B>czeniu \fBsg\fR powracasz do swego poprzedniego identyfikatora
grupy.
.B sg
przyjmuje tak<61>e pojedyncze polecenie. Podane polecenie zostanie wykonane
w pow<6F>oce Bourne'a i musi by<62> umieszczone w cudzys<79>owach.
.\" enclosed in quotes.
.SH PRZESTROGI
Niniejsza wersja \fBnewgrp\fR posiada wiele opcji kompilacji,
z kt<6B>rych tylko cz<63><7A><EFBFBD> mo<6D>e by<62> u<>yteczna w konkretnej instalacji.
.SH PLIKI
.IR /etc/passwd " - informacja o kontach u<>ytkownik<69>w"
.br
.IR /etc/group " - informacja o grupach"
.SH ZOBACZ TAK<EFBFBD>E
.BR login (1),
.BR id (1),
.BR su (1)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)
.SH OD T<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij si<73>, <20>e korzystasz
z w<>a<EFBFBD>ciwej dokumentacji.

View File

@ -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<69>w
.SH SK<EFBFBD>ADNIA
.B newusers
.RI [ nowi_u<EFBFBD>ytkownicy ]
.SH OPIS
\fBnewusers\fR odczytuje plik zawieraj<61>cy pary: nazwa u<>ytkownika i podane
jawnym tekstem has<61>o. Odczytan<61> informacj<63> wykorzystuje do aktualizacji grupy
istniej<EFBFBD>cych u<>ytkownik<69>w lub utworzenia nowych.
Ka<EFBFBD>dy wiersz pliku posiada taki sam format jak standardowy plik hase<73> (patrz
\fBpasswd\fR(5)), z nast<73>puj<75>cymi wyj<79>tkami:
.IP "\fIpw_passwd\fR" 10
To pole zostanie zakodowane i u<>yte jako nowa warto<74><6F> zakodowanego has<61>a.
.IP "\fIpw_age\fR"
Dla chronionych hase<73> (shadow) pole zostanie zignorowane je<6A>li u<>ytkownik ju<6A>
istnieje.
.IP "\fIpw_gid\fR"
Pole to mo<6D>e zawiera<72> nazw<7A> istniej<65>cej grupy. Dany u<>ytkownik zostanie
w<EFBFBD>wczas dodany do jej cz<63>onk<6E>w. Je<4A>eli podano numeryczny identyfikator
nieistniej<EFBFBD>cej grupy, to zostanie za<7A>o<EFBFBD>ona nowa grupa o tym identyfikatorze.
.IP "\fIpw_dir\fR"
Zostanie wykonane sprawdzenie czy istnieje katalog o tej nazwie. Je<4A>eli nie,
to b<>dzie on utworzony. W<>a<EFBFBD>cicielem zostanie ustanowiony tworzony
(lub aktualizowany) u<>ytkownik. Grupa katalogu zostanie ustawiona na grup<75>
u<EFBFBD>ytkownika.
.PP
Polecenie to przeznaczone jest do u<>ytku w du<64>ych systemach, gdzie aktualizuje
si<EFBFBD> wiele kont naraz.
.SH PRZESTROGI
.\" Po u<>yciu \fBnewusers\fR musi zosta<74> wykonane polecenie \fImkpasswd\fR,
.\" aktualizuj<75>ce pliki DBM hase<73> (DBM password files).
Plik <20>r<EFBFBD>d<EFBFBD>owy, zawieraj<61>cy niezakodowane has<61>a, musi by<62> chroniony.
.SH ZOBACZ TAK<EFBFBD>E
.\" mkpasswd(8), passwd(1), useradd(1)
.BR passwd (1),
.BR useradd (8)
.SH AUTOR
Julianne Frances Haugh (jfh@austin.ibm.com)

View File

@ -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<69> has<61>o u<>ytkownika
.SH SK<EFBFBD>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<EFBFBD> ]
.RB [ -i
.IR nieakt ]
.I nazwa
.br
.B passwd
.RB { -l | -u | -d | -S }
.I nazwa
.SH OPIS
\fBpasswd\fR zmienia has<61>a kont u<>ytkownik<69>w i grup.
Zwyk<EFBFBD>y u<>ytkownik mo<6D>e zmieni<6E> wy<77><79>cznie has<61>o w<>asnego konta, superu<72>ytkownik
mo<EFBFBD>e zmienia<69> has<61>a dowolnych kont.
Administrator grupy mo<6D>e zmieni<6E> has<61>o tej grupy.
\fBpasswd\fR zmienia tak<61>e informacje o koncie, takie jak pe<70>na nazwa
u<EFBFBD>ytkownika, jego pow<6F>oka zg<7A>oszeniowa (logowania) czy daty i interwa<77>y dotycz<63>ce
wa<EFBFBD>no<EFBFBD>ci has<61>a.
.SS Zmiany has<EFBFBD>a
Na pocz<63>tku u<>ytkownik pytany jest o stare, dotychczasowe has<61>o, je<6A>li takie
istnieje. Has<61>o to jest kodowane i por<6F>wnywane z przechowywanym has<61>em.
U<EFBFBD>ytkownik ma tylko jedn<64> pr<70>b<EFBFBD> na wprowadzenie poprawnego has<61>a.
Superu<EFBFBD>ytkownikowi zezwala si<73> na pomini<6E>cie tego kroku, zatem mog<6F> by<62>
zmienione has<61>a, kt<6B>rych zapomniano.
.PP
Po wprowadzeniu has<61>a, sprawdzana jest informacja o jego wieku, by stwierdzi<7A>
czy u<>ytkownikowi wolno w danym czasie zmieni<6E> has<61>o.
Je<EFBFBD>eli nie, to \fBpasswd\fR odmawia zmiany has<61>a i ko<6B>czy prac<61>.
.PP
Nast<EFBFBD>pnie u<>ytkownik proszony jest o nowe, zast<73>puj<75>ce dotychczasowe, has<61>o
Has<EFBFBD>o podlega sprawdzeniu jego zawi<77>o<EFBFBD>ci. Jako og<6F>ln<6C> wskaz<61>wk<77> mo<6D>na poda<64>,
<EFBFBD>e has<61>a powinny sk<73>ada<64> si<73> z 6 do 8 znak<61>w, zawieraj<61>c po jednym lub wi<77>cej
znak<EFBFBD>w z ka<6B>dej z poni<6E>szych kategorii:
.IP "" .5i
ma<EFBFBD>e litery alfabetu
.IP "" .5i
du<EFBFBD>e litery alfabetu
.IP "" .5i
cyfry od 0 do 9
.IP "" .5i
znaki interpunkcyjne
.PP
Nale<EFBFBD>y uwa<77>a<EFBFBD>, by nie u<>y<EFBFBD> domy<6D>lnych systemowych znak<61>w akcji erase lub kill.
\fBpasswd\fR odrzuci ka<6B>de niedostatecznie skomplikowane has<61>o.
.PP
Je<EFBFBD>li has<61>o zostanie przyj<79>te, to \fBpasswd\fR prosi o jego powt<77>rzenie
i por<6F>wnuje drugi wpis z pierwszym.
Oba wpisy musz<73> by<62> takie same by has<61>o zosta<74>o zmienione.
.SS Has<EFBFBD>a grup
Je<EFBFBD>eli pos<6F>u<EFBFBD>ono si<73> opcj<63> \fB-g\fR, to zmieniane jest has<61>o podanej grupy.
U<EFBFBD>ytkownik powinien by<62> albo superu<72>ytkownikiem albo administratorem tej grupy.
Nie wyst<73>puje pytanie o bie<69><65>ce has<61>o grupy.
Do usuwania bie<69><65>cego has<61>a danej grupy s<>u<EFBFBD>y opcja \fB-g\fR w po<70><6F>czeniu
z \fB-r\fR. Pozwala to na dost<73>p do grupy tylko jej cz<63>onkom.
Opcja \fB-R\fR w po<70><6F>czeniu z \fR-g\fR ogranicza dost<73>p do grupy wszystkim
u<EFBFBD>ytkownikom.
.SS Informacja o wa<EFBFBD>no<EFBFBD>ci konta
Superu<EFBFBD>ytkownik mo<6D>e zmienia<69> informacj<63> o wieku konta pos<6F>uguj<75>c si<73> opcjami
\fB-x\fR, \fB-n\fR, \fB-w\fR oraz \fB-i\fR.
Opcja \fB-x\fR s<>u<EFBFBD>y do ustawiania maksymalnej liczby dni, przez jakie has<61>o
pozostaje wa<77>ne.
Po up<75>ywie \fImax\fR dni, has<61>o musi by<62> zmienione.
Opcja \fB-n\fR ustawia minimaln<6C> liczb<7A> dni, jakie musz<73> up<75>yn<79><6E> zanim has<61>o
b<EFBFBD>dzie mog<6F>o by<62> zmienione.
U<EFBFBD>ytkownik nie otrzyma zezwolenia na zmian<61> has<61>a przed up<75>ywem \fImin\fR dni.
Opcja \fB-w\fR s<>u<EFBFBD>y do ustawienia liczby dni przed up<75>ywem terminu wa<77>no<6E>ci
has<EFBFBD>a, przez kt<6B>re u<>ytkownik b<>dzie otrzymywa<77> ostrze<7A>enie m<>wi<77>ce mu, ile dni
pozosta<EFBFBD>o do tej daty. Ostrze<7A>enia zaczn<7A> pojawia<69> si<73> \fIostrze<EFBFBD>\fR dni przed
up<EFBFBD>ywem wa<77>no<6E>ci has<61>a.
Opcja \fB-i\fR (nieaktywno<6E><6F>) s<>u<EFBFBD>y do wy<77><79>czania konta po up<75>ywie zadanej
liczby dni po wyga<67>ni<6E>ciu has<61>a.
Po up<75>ywie \fInieakt\fR dni od przeterminowania has<61>a u<>ytkownik nie mo<6D>e ju<6A>
korzysta<EFBFBD> z konta.
.SS Utrzymywanie i konserwacja konta
Konta u<>ytkownik<69>w mog<6F> by<62> blokowane i odblokowywane przy pomocy flag \fB-l\fR
i \fB-u\fR.
Opcja \fB-l\fR wy<77><79>cza konto zmieniaj<61>c jego has<61>o na warto<74><6F> nieodpowiadaj<61>c<EFBFBD>
<EFBFBD>adnemu mo<6D>liwemu zakodowanemu has<61>u.
Opcja \fB-u\fR ponownie udost<73>pnia konto przywracaj<61>c uprzedni<6E> warto<74><6F> has<61>a.
.PP
Stan konta mo<6D>na uzyska<6B> przy pomocy opcji \fB-S\fR.
Informacja o stanie sk<73>ada si<73> z 6 cz<63><7A>ci.
Pierwsza wskazuje, czy konto u<>ytkownika jest zablokowane (L) (locked),
nie posiada has<61>a (NP) (no password) lub ma funkcjonalne has<61>o (P) (password).
Druga cz<63><7A><EFBFBD> podaje dat<61> ostatniej zmiany has<61>a.
nast<EFBFBD>pne cztery to minimalny wiek, maksymalny wiek, okres ostrzegania i okres
nieaktywno<EFBFBD>ci has<61>a.
.SS Podpowiedzi dotycz<EFBFBD>ce hase<EFBFBD> u<EFBFBD>ytkownika
Bezpiecze<EFBFBD>stwo has<61>a zale<6C>y od si<73>y algorytmu koduj<75>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<6C>y od losowo<77>ci wybranego has<61>a.
.PP
Naruszenia bezpiecze<7A>stwa hase<73> wynikaj<61> zwykle z beztroski przy wyborze lub
przechowywaniu has<61>a.
Z tego powodu powiniene<6E> wybra<72> has<61>o nie wyst<73>puj<75>ce w s<>owniku. Has<61>o nie
powinno te<74> by<62> poprawn<77> nazw<7A>, imieniem, nazwiskiem, numerem prawa jazdy,
dat<EFBFBD> urodzenia czy elementem adresu.
Wszystkie z powy<77>szych mog<6F> by<62> u<>yte do odgadni<6E>cia has<61>a i naruszenia
bezpiecze<EFBFBD>stwa systemu.
.PP
Has<EFBFBD>o musi by<62> <20>atwe do zapami<6D>tania, tak by nie by<62> zmuszonym do jego
zapisywania na kartce. Mo<4D>na to osi<73>gn<67><6E> sklejaj<61>c ze sob<6F> dwa kr<6B>tkie s<>owa,
ze wstawionym pomi<6D>dzy nie znakiem specjalnym lub cyfr<66>.
Na przyk<79>ad, Pass%word, Lew7konia.
.PP
Inna metoda konstrukcji has<61>a polega na wyborze <20>atwego do zapami<6D>tania zdania
(np. z literatury) i wyborze pierwszej b<>d<EFBFBD> ostatniej litery ka<6B>dego wyrazu.
Przyk<EFBFBD>adem tego jest
.IP "" .5i
Ask not for whom the bell tolls.
.PP
co daje
.IP "" .5i
An4wtbt,
.PP
albo te<74>
.IP "" .5i
A czy znasz Ty, bracie m<>ody
.PP
co daje
.IP "" .5i
A3zTbm.
.PP
W zasadzie mo<6D>esz by<62> pewien, <20>e niewielu cracker<65>w b<>dzie mie<69> takie has<61>o
w swoim s<>owniku. Powiniene<6E> jednak wybra<72> w<>asn<73> metod<6F> konstrukcji hase<73>
a nie polega<67> wy<77><79>cznie na opisanych tutaj.
.SS Uwagi o has<EFBFBD>ach grup
Has<EFBFBD>a grup s<> nieod<6F><64>cznym problemem bezpiecze<7A>stwa, gdy<64> do ich znajomo<6D>ci
uprawniona jest wi<77>cej ni<6E> jedna osoba.
Grupy s<> jednak u<>ytecznym narz<72>dziem pozwalaj<61>cym na wsp<73><70>prac<61> mi<6D>dzy
r<EFBFBD><EFBFBD>nymi u<>ytkownikami.
.SH PRZESTROGI
Mog<EFBFBD> nie by<62> obs<62>ugiwane wszystkie opcje.
Sprawdzanie z<>o<EFBFBD>ono<6E>ci has<61>a mo<6D>e r<><72>ni<6E> si<73> w r<><72>nych instalacjach. Zach<63>ca
si<EFBFBD> u<>ytkownika do wyboru tak skomplikowanego has<61>a, z jakim b<>dzie mu
wygodnie.
U<EFBFBD>ytkownicy mog<6F> nie m<>c zmieni<6E> has<61>a w systemie przy w<><77>czonym NIS, je<6A>li
nie s<> zalogowani do serwera NIS.
.SH PLIKI
.IR /etc/passwd " - informacja o kontach u<>ytkownik<69>w"
.br
.IR /etc/shadow " - zakodowane has<61>a u<>ytkownik<69>w"
.SH ZOBACZ TAK<EFBFBD>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<EFBFBD>UMACZA
Niniejsza dokumentacja opisuje polecenie wchodz<64>ce w sk<73>ad pakietu
shadow-password.
Z uwagi na powtarzaj<61>ce si<73> nazwy polece<63>, upewnij si<73>, <20>e korzystasz
z w<>a<EFBFBD>ciwej dokumentacji.

Some files were not shown because too many files have changed in this diff Show More