[Pkg-shadow-commits] r501 - branches/experimental/debian/patches
Nicolas FRANCOIS
nekral-guest at costa.debian.org
Wed Aug 31 10:49:58 UTC 2005
Author: nekral-guest
Date: 2005-08-31 10:49:57 +0000 (Wed, 31 Aug 2005)
New Revision: 501
Removed:
branches/experimental/debian/patches/002_more-i18n.dpatch
branches/experimental/debian/patches/008_su_check_user_earlier
branches/experimental/debian/patches/312_usermod-302388.dpatch
branches/experimental/debian/patches/313_pam_access_with_preauth.dpatch
branches/experimental/debian/patches/314_passwd.1_formatting.dpatch
branches/experimental/debian/patches/315_chage.1_document_expiration_removal.dpatch
branches/experimental/debian/patches/316_vipw-race-242407.dpatch
branches/experimental/debian/patches/317_lastlog_usage_249611.dpatch
branches/experimental/debian/patches/318_passwd_src_warning.dpatch
branches/experimental/debian/patches/320_nscd_header.dpatch
branches/experimental/debian/patches/321_remove_malloc_definition.dpatch
branches/experimental/debian/patches/324_configure.in-no-debian-dir.dpatch
branches/experimental/debian/patches/325_gshadow_5_manpage
branches/experimental/debian/patches/326_su.1_pwconv.8-typos
branches/experimental/debian/patches/327_newgrp_162303
branches/experimental/debian/patches/328_successful_password_change
branches/experimental/debian/patches/329_libmisc_failure_ngettext
branches/experimental/debian/patches/330_CAN-2004-1001_passwd_check
branches/experimental/debian/patches/331_chpasswd-md5.dpatch
branches/experimental/debian/patches/332_grpck.8-type_and_section
branches/experimental/debian/patches/334_chage.1-typo
branches/experimental/debian/patches/347_login_log_pam_user_if_USE_PAM
branches/experimental/debian/patches/348_login_PAM_SILENT_if_hushed_login
branches/experimental/debian/patches/349_login_opt-f_with_username_after--
branches/experimental/debian/patches/355_login_close_session_as_root
branches/experimental/debian/patches/358_userdel_remove_group_from_gshadow
branches/experimental/debian/patches/359_usermod_warn_old_home_not_removed
branches/experimental/debian/patches/361_lastlog_8_sparse
branches/experimental/debian/patches/364_ENV_SUPATH
branches/experimental/debian/patches/422_getdate.c_generated_file
branches/experimental/debian/patches/443_man_it_Makefile.am
branches/experimental/debian/patches/444_missing_Italian_manpages
Modified:
branches/experimental/debian/patches/series
Log:
Starts the cleanup. Thoses patches are already applied upstream, or
superseded by other patches.
Deleted: branches/experimental/debian/patches/002_more-i18n.dpatch
===================================================================
--- branches/experimental/debian/patches/002_more-i18n.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/002_more-i18n.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,19 +0,0 @@
-Purpose: Clean up the list of the files containing stuff to translate
-
-Status wrt upstream: applied in 4.0.12
-
-Note: some other files are not present in the list. They do not contain
- translatable strings, but this may be anissue later.
-
-Index: shadow-4.0.11.1/po/POTFILES.in
-===================================================================
---- shadow-4.0.11.1.orig/po/POTFILES.in 2005-07-07 12:03:03.000000000 -0400
-+++ shadow-4.0.11.1/po/POTFILES.in 2005-08-16 15:18:48.000000000 -0400
-@@ -24,6 +24,7 @@
- libmisc/obscure.c
- libmisc/pam_pass.c
- libmisc/pwd2spwd.c
-+libmisc/pwdcheck.c
- libmisc/pwd_init.c
- libmisc/rlogin.c
- libmisc/salt.c
Deleted: branches/experimental/debian/patches/008_su_check_user_earlier
===================================================================
--- branches/experimental/debian/patches/008_su_check_user_earlier 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/008_su_check_user_earlier 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,53 +0,0 @@
-
-Notes:
- * This patch just move a block of code, but I don't see the rationnal
- for moving it.
- * Except this piece of code being moved earlier, there is the
- following (small) differences:
- + The UID is logged as a signed int (instead of unsigned int, but I don't
- know why, maybe to fix a compilation warning?)
- + An end of line is added to the syslog message
- (anyway, it is optional)
-
-Index: shadow-4.0.3/src/su.c
-===================================================================
---- shadow-4.0.3.orig/src/su.c 2005-05-30 00:18:20.757531000 +0200
-+++ shadow-4.0.3/src/su.c 2005-05-30 00:18:28.867531000 +0200
-@@ -380,6 +380,18 @@
- additional_args = argv + optind;
-
- /*
-+ * Get the user's real name. The current UID is used to determine
-+ * who has executed su. That user ID must exist.
-+ */
-+
-+ pw = get_my_pwent();
-+ if (!pw) {
-+ SYSLOG((LOG_CRIT, "Unknown UID: %d\n", (int) my_uid));
-+ su_failure(tty);
-+ }
-+ STRFCPY(oldname, pw->pw_name);
-+
-+ /*
- * If a new login is being set up, the old environment will be
- * ignored and a new one created later on.
- */
-@@ -403,18 +415,6 @@
- if (optind < argc)
- additional_args = argv + optind;
-
-- /*
-- * Get the user's real name. The current UID is used to determine
-- * who has executed su. That user ID must exist.
-- */
--
-- pw = get_my_pwent ();
-- if (!pw) {
-- SYSLOG ((LOG_CRIT, "Unknown UID: %u", my_uid));
-- su_failure (tty);
-- }
-- STRFCPY (oldname, pw->pw_name);
--
- #ifndef USE_PAM
- #ifdef SU_ACCESS
- /*
Deleted: branches/experimental/debian/patches/312_usermod-302388.dpatch
===================================================================
--- branches/experimental/debian/patches/312_usermod-302388.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/312_usermod-302388.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,38 +0,0 @@
-#! /bin/sh -e
-## 312_usermod-302388.dpatch by Tomasz KÅoczko <kloczek at zie.pg.gda.pl>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Document -o option in usermod(8)
-## DP: Debian bug #302288
-
-if [ $# -lt 1 ]; then
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1
-fi
-
-[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
-patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
-
-case "$1" in
- -patch) patch -p1 ${patch_opts} < $0;;
- -unpatch) patch -R -p1 ${patch_opts} < $0;;
- *)
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1;;
-esac
-
-exit 0
-
- at DPATCH@
-
---- shadow-4.0.3/man/usermod.8 2002-03-08 05:39:12.000000000 +0100
-+++ shadow-4.0.3-31sarge3/man/usermod.8 2005-04-18 08:24:21.000000000 +0200
-@@ -100,6 +100,8 @@
- Lock a user's password.
- This puts a '!' in front of the encrypted password, effectively disabling
- the password. You can't use this option with \fI-p\fR or \fI-U\fR.
-+.IP "\fB\-o\fR"
-+Allows changing the user ID to a non\-unique value when used with \fI\-u\fR option.
- .IP "\fB-U\fR"
- Unlock a user's password.
- This removes the '!' in front of the encrypted password.
Deleted: branches/experimental/debian/patches/313_pam_access_with_preauth.dpatch
===================================================================
--- branches/experimental/debian/patches/313_pam_access_with_preauth.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/313_pam_access_with_preauth.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,41 +0,0 @@
-#! /bin/sh -e
-## 313_pam_access_with_preauth.dpatch.dpatch by Bjorn Torkelsson <Bjorn.Torkelsson at hpc2n.umu.se>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Allow PAM account authorization when preauthenticated
-## DP: Debian bug #193869
-
-if [ $# -lt 1 ]; then
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1
-fi
-
-[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
-patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
-
-case "$1" in
- -patch) patch -p1 ${patch_opts} < $0;;
- -unpatch) patch -R -p1 ${patch_opts} < $0;;
- *)
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1;;
-esac
-
-exit 0
-
- at DPATCH@
-diff -urNad shadow-4.0.3/src/login.c /tmp/dpep.nSdEUO/shadow-4.0.3/src/login.c
---- shadow-4.0.3/src/login.c 2005-05-08 12:59:10.000000000 +0200
-+++ /tmp/dpep.nSdEUO/shadow-4.0.3/src/login.c 2005-05-08 12:59:14.000000000 +0200
-@@ -887,6 +887,11 @@
- setpwent ();
- pwd = getpwnam (pam_user);
-
-+ if (fflg) {
-+ retcode = pam_acct_mgmt(pamh, 0);
-+ PAM_FAIL_CHECK;
-+ }
-+
- if (!pwd || setup_groups (pwd))
- exit (1);
- else
Deleted: branches/experimental/debian/patches/314_passwd.1_formatting.dpatch
===================================================================
--- branches/experimental/debian/patches/314_passwd.1_formatting.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/314_passwd.1_formatting.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,49 +0,0 @@
-#! /bin/sh -e
-## 314_passwd.1_formatting.dpatch by Simon Brandmair <sbrandmair at gmx.net>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Minor formatting fixes of passwd(1) man page
-## DP: Debian bug #304447
-
-if [ $# -lt 1 ]; then
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1
-fi
-
-[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
-patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
-
-case "$1" in
- -patch) patch -p1 ${patch_opts} < $0;;
- -unpatch) patch -R -p1 ${patch_opts} < $0;;
- *)
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1;;
-esac
-
-exit 0
-
- at DPATCH@
-
-Index: shadow-4.0.3/man/passwd.1
-===================================================================
---- shadow-4.0.3.orig/man/passwd.1 2005-05-12 21:47:23.341530773 +0200
-+++ shadow-4.0.3/man/passwd.1 2005-05-12 21:57:05.873492957 +0200
-@@ -46,7 +46,7 @@ The administrator of a group may change
- of the user, user's login shell, or password expiry date and interval.
- .PP
- The \fB-s\fR option makes \fBpasswd\fR call \fBchsh\fR to change the user's shell. The
--\fB-f\fR option makes passwd call chfn to change the user's gecos
-+\fB-f\fR option makes \fBpasswd\fR call \fBchfn\fR to change the user's gecos
- information. These two options are only meant for compatibility, since the
- other programs can be called directly.
- .SS Password Changes
-@@ -201,7 +201,7 @@ User account information
- Encrypted user passwords
- .SH "SEE ALSO"
- .BR group (5),
--.BR passwd (5)
-+.BR passwd (5),
- .BR shadow (5)
- .SH AUTHOR
- Julianne Frances Haugh <jockgrrl at ix.netcom.com>
Deleted: branches/experimental/debian/patches/315_chage.1_document_expiration_removal.dpatch
===================================================================
--- branches/experimental/debian/patches/315_chage.1_document_expiration_removal.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/315_chage.1_document_expiration_removal.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,38 +0,0 @@
-#! /bin/sh -e
-## 315_chage.1_document_expiration_removal.dpatch by Federico Grau <grauf at rfa.org>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Document expiration removal in chage(1)
-## DP: Debian bug #304542
-
-if [ $# -lt 1 ]; then
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1
-fi
-
-[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
-patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
-
-case "$1" in
- -patch) patch -p1 ${patch_opts} < $0;;
- -unpatch) patch -R -p1 ${patch_opts} < $0;;
- *)
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1;;
-esac
-
-exit 0
-
- at DPATCH@
-
---- shadow-4.0.3.ori/man/chage.1 2005-04-13 14:45:33.000000000 -0400
-+++ shadow-4.0.3/man/chage.1 2005-04-13 15:01:27.000000000 -0400
-@@ -71,6 +71,8 @@
- 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).
-+Passing the number -1 as the \fIexpiredate\fR will remove an accounts
-+expiration date.
- A user whose account is locked must contact the system administrator before
- being able to use the system again.
- .PP
Deleted: branches/experimental/debian/patches/316_vipw-race-242407.dpatch
===================================================================
--- branches/experimental/debian/patches/316_vipw-race-242407.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/316_vipw-race-242407.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,27 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 316_vipw-race-242407.dpatch by <Alexander Gattin <arg at online.com.ua>>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: The patch fixes bug #242407 - race condition in vipw.
-## DP: The fix make vipw to remove /etc/{passwd|shadow|group|gshadow}.edit
-## DP: temporary file first, and only then unlock. Previously here was a
-## DP: common flaw in sync design -- some parts of "transaction"
-## DP: (namely tmpfile) not covered by sync.
-
- at DPATCH@
-diff -urNad shadow-4.0.3/src/vipw.c /tmp/dpep.TLLFxC/shadow-4.0.3/src/vipw.c
---- shadow-4.0.3/src/vipw.c 2002-01-05 17:41:44.000000000 +0200
-+++ /tmp/dpep.TLLFxC/shadow-4.0.3/src/vipw.c 2005-04-14 23:47:33.000000000 +0300
-@@ -93,10 +93,10 @@
- {
- int err = errno;
-
-- if (filelocked)
-- (*unlock) ();
- if (createedit)
- unlink (fileeditname);
-+ if (filelocked)
-+ (*unlock) ();
- if (msg)
- fprintf (stderr, "%s: %s", progname, msg);
- if (syserr)
Deleted: branches/experimental/debian/patches/317_lastlog_usage_249611.dpatch
===================================================================
--- branches/experimental/debian/patches/317_lastlog_usage_249611.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/317_lastlog_usage_249611.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,30 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 317_lastlog_usage_249611.dpatch by Nicolas FRANCOIS <nicolas.francois at centraliens.net>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Fix the lastlog usage and all the translations accordingly
-## DP: (--user instead of --login).
-## DP:
-## DP: STATUS: commited to upstream CVS on 9 May 2005 (before 4.0.9)
-
- at DPATCH@
-Index: shadow-4.0.3/src/lastlog.c
-===================================================================
---- shadow-4.0.3.orig/src/lastlog.c 2005-05-11 22:03:39.000000000 +0200
-+++ shadow-4.0.3/src/lastlog.c 2005-05-12 11:02:24.773677563 +0200
-@@ -107,13 +107,13 @@ int main (int argc, char **argv)
- case 'h':
- fprintf (stdout,
- _
-- ("Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"),
-+ ("Usage: %s [<-u|--user> login-name] [<-t|--time> days] [<-h|--help>]\n"),
- argv[0]);
- exit (0);
- default:
- fprintf (stdout,
- _
-- ("Usage: %s [<-u|--login> login-name] [<-t|--time> days] [<-h|--help>]\n"),
-+ ("Usage: %s [<-u|--user> login-name] [<-t|--time> days] [<-h|--help>]\n"),
- argv[0]);
- exit (1);
- }
Deleted: branches/experimental/debian/patches/318_passwd_src_warning.dpatch
===================================================================
--- branches/experimental/debian/patches/318_passwd_src_warning.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/318_passwd_src_warning.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,22 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 318_passwd_src_warning.dpatch by Nicolas FRANCOIS <nicolas.francois at centraliens.net>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: This patch fixed #61313.
-## DP: Upstream committed a similar patch.
-
- at DPATCH@
-diff -urNad shadow-4.0.3/src/passwd.c /tmp/dpep.MC22M9/shadow-4.0.3/src/passwd.c
---- shadow-4.0.3/src/passwd.c 2005-04-15 23:07:41.599005000 +0200
-+++ /tmp/dpep.MC22M9/shadow-4.0.3/src/passwd.c 2005-04-16 00:04:40.899005000 +0200
-@@ -1173,8 +1173,8 @@
-
- if (!amroot && pw->pw_uid != getuid ()) {
- fprintf (stderr,
-- _("You may not change the password for %s.\n"),
-- name);
-+ _("%s: You may not view or modify password information for %s.\n"),
-+ Prog, name);
- SYSLOG ((LOG_WARN, "can't change pwd for `%s'", name));
- closelog ();
- exit (E_NOPERM);
Deleted: branches/experimental/debian/patches/320_nscd_header.dpatch
===================================================================
--- branches/experimental/debian/patches/320_nscd_header.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/320_nscd_header.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,22 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 320_nscd_header.dpatch by Nicolas FRANCOIS <nicolas.francois at centraliens.net>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Add header file nscd.h (fixed upstrem)
-
- at DPATCH@
---- shadow-4.0.3.ori/lib/nscd.h 1970-01-01 01:00:00.000000000 +0100
-+++ shadow-4.0.3-31sarge1/lib/nscd.h 2005-01-11 11:37:02.000000000 +0100
-@@ -0,0 +1,12 @@
-+/* Copyright (c) 1999 SuSE GmbH Nuerenberg, Germany
-+ Author: Thorsten Kukuk <kukuk at suse.de> */
-+
-+#ifndef _FAILURE_H_
-+#define _FAILURE_H_
-+
-+/*
-+ * nscd_flush_cache - flush specyfied service bufor in nscd cache
-+ */
-+extern int nscd_flush_cache (char *service);
-+
-+#endif
Deleted: branches/experimental/debian/patches/321_remove_malloc_definition.dpatch
===================================================================
--- branches/experimental/debian/patches/321_remove_malloc_definition.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/321_remove_malloc_definition.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,21 +0,0 @@
-#! /bin/sh /usr/share/dpatch/dpatch-run
-## 321_remove_malloc_definition.dpatch by Nicolas FRANCOIS <nicolas.francois at centraliens.net>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Remove the malloc definition (which conflicts with libc).
-## DP: It fixed #259827.
-## DP: It is also applied upstream.
-
- at DPATCH@
-diff -urNad shadow-4.0.3/libmisc/xmalloc.c /tmp/dpep.KdKuFh/shadow-4.0.3/libmisc/xmalloc.c
---- shadow-4.0.3/libmisc/xmalloc.c 2005-04-17 20:27:46.627048000 +0200
-+++ /tmp/dpep.KdKuFh/shadow-4.0.3/libmisc/xmalloc.c 2005-04-17 20:29:36.977048000 +0200
-@@ -16,8 +16,6 @@
-
- #include "defines.h"
-
--extern char *malloc();
--
- char *
- xmalloc(size_t size)
- {
Deleted: branches/experimental/debian/patches/324_configure.in-no-debian-dir.dpatch
===================================================================
--- branches/experimental/debian/patches/324_configure.in-no-debian-dir.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/324_configure.in-no-debian-dir.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,36 +0,0 @@
-#! /bin/sh -e
-## 004_configure.in.dpatch by <unknown>
-##
-## All lines beginning with `## DP:' are a description of the patch.
-## DP: Remove "debian/Makefile" from the original configure.on file
-
-if [ $# -lt 1 ]; then
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1
-fi
-
-[ -f debian/patches/00patch-opts ] && . debian/patches/00patch-opts
-patch_opts="${patch_opts:--f --no-backup-if-mismatch} ${2:+-d $2}"
-
-case "$1" in
- -patch) patch -p1 ${patch_opts} < $0;;
- -unpatch) patch -R -p1 ${patch_opts} < $0;;
- *)
- echo "`basename $0`: script expects -patch|-unpatch as argument" >&2
- exit 1;;
-esac
-
-exit 0
-
- at DPATCH@
-diff -urNad shadow-4.0.3/configure.in /tmp/dpep.ZnE7gx/shadow-4.0.3/configure.in
---- shadow-4.0.3/configure.in 2005-05-11 09:56:26.668669556 +0200
-+++ /tmp/dpep.ZnE7gx/shadow-4.0.3/configure.in 2005-05-11 09:56:47.679241252 +0200
-@@ -306,7 +307,6 @@
- lib/Makefile
- src/Makefile
- contrib/Makefile
-- debian/Makefile
- etc/Makefile
- etc/pam.d/Makefile
- shadow.spec])
Deleted: branches/experimental/debian/patches/325_gshadow_5_manpage
===================================================================
--- branches/experimental/debian/patches/325_gshadow_5_manpage 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/325_gshadow_5_manpage 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,226 +0,0 @@
-Goal: Add a gshadow.5 man page, and clarifications in the newgrp and gpasswd
-man pages.
-Fixes: #113191, #166173, #169046, #251926
-
-Status wrt upstream: already applied upstream.
-
-Note: the patch also takes some formatting enhancements from upstream in order
-to make these pages closer to upstream.
-
-Index: shadow-4.0.3/man/gshadow.5
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.3/man/gshadow.5 2005-06-08 22:28:04.000000000 +0200
-@@ -0,0 +1,65 @@
-+.\"$Id: gshadow.5,v 1.2 2005/04/02 16:10:23 kloczek Exp $
-+.\" Copyright 2005, Nicolas FRANCOIS
-+.\" 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 Nicolas FRANCOIS 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 NICOLAS FRANCOIS 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 NICOLAS FRANCOIS 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 GSHADOW 5
-+.SH NAME
-+gshadow \- shadowed group file
-+.SH DESCRIPTION
-+.I gshadow
-+contains the shadowed information for group accounts.
-+It contains lines with the following colon\-separated fields:
-+.IP "" .5i
-+Group name
-+.IP "" .5i
-+Encrypted password
-+.IP "" .5i
-+Comma\-separated list of group administrators
-+.IP "" .5i
-+Comma\-separated list of group members.
-+.PP
-+The group name and password fields must be filled.
-+The encrypted 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.
-+If the password field contains some string that is not valid result
-+of \fBcrypt\fR(3), for instance ! or *, the user will not be able to use
-+a unix password to log in, subject to \fBpam\fR(7).
-+.PP
-+This information supersedes any password present in \fI/etc/group\fR.
-+.PP
-+This file must not be readable by regular users if password
-+security is to be maintained.
-+.SH FILES
-+\fI/etc/group\fR \- user group file
-+.br
-+\fI/etc/gshadow\fR \- shadowed group file
-+.SH SEE ALSO
-+.BR group (5),
-+.BR gpasswd (5),
-+.BR newgrp (5)
-+.SH AUTHOR
-+Nicolas FRANCOIS
-Index: shadow-4.0.3/man/gpasswd.1
-===================================================================
---- shadow-4.0.3.orig/man/gpasswd.1 2005-06-08 20:10:00.000000000 +0200
-+++ shadow-4.0.3/man/gpasswd.1 2005-06-08 22:27:34.000000000 +0200
-@@ -12,33 +12,30 @@
- .SH SYNOPSIS
- \fBgpasswd \fIgroup\fR
- .br
--\fBgpasswd -a \fIuser\fR \fIgroup\fR
-+\fBgpasswd \-a \fIuser\fR \fIgroup\fR
- .br
--\fBgpasswd -d \fIuser\fR \fIgroup\fR
-+\fBgpasswd \-d \fIuser\fR \fIgroup\fR
- .br
--\fBgpasswd -R \fIgroup\fR
-+\fBgpasswd \-R \fIgroup\fR
- .br
--\fBgpasswd -r \fIgroup\fR
-+\fBgpasswd \-r \fIgroup\fR
- .br
--\fBgpasswd\fR [\fB-A \fIuser\fR,...] [\fB-M\fR \fIuser\fR,...] \fIgroup\fR
-+\fBgpasswd\fR [\fB\-A \fIuser\fR,...] [\fB\-M\fR \fIuser\fR,...] \fIgroup\fR
- .SH DESCRIPTION
--.B gpasswd
--is used to administer the /etc/group file (and /etc/gshadow
--file if compiled with SHADOWGRP defined). Every group can
-+\fBgpasswd\fR is used to administer the \fI/etc/group\fR file (and
-+\fI/etc/gshadow\fR 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
-+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.
-+.SH OPTIONS
- .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.
-+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 \fBnewgrp\fR to
-+join the group. Option \fB\-R\fR disables access via a password to the group
-+through \fBnewgrp\fR command (however members will still be able to switch to
-+this group).
- .PP
- \fBgpasswd\fR called by a group administrator with group name only prompts
- for the group password. If password is set the members can still
-@@ -46,14 +43,16 @@
- without a password, non-members must supply the password.
-
- .SH FILES
--/etc/group \- group information
-+\fI/etc/group\fR \- group account information
- .br
--/etc/gshadow \- shadow group information
-+\fI/etc/gshadow\fR \- shadow group information
- .SH SEE ALSO
- .BR newgrp (1),
- .BR groupadd (8),
- .BR groupdel (8),
- .BR groupmod (8),
--.BR grpck (8)
-+.BR grpck (8),
-+.BR group (5),
-+.BR gshadow (5)
- .SH AUTHOR
- Rafal Maszkowski <rzm at pdi.net>
-Index: shadow-4.0.3/man/newgrp.1
-===================================================================
---- shadow-4.0.3.orig/man/newgrp.1 2005-06-08 20:18:44.000000000 +0200
-+++ shadow-4.0.3/man/newgrp.1 2005-06-08 22:27:34.000000000 +0200
-@@ -31,9 +31,9 @@
- .br
- sg \- execute command as different group ID
- .SH SYNOPSIS
--\fBnewgrp\fR [\fB-\fR] [\fIgroup\fR]
-+\fBnewgrp\fR [\fB\-\fR] [\fIgroup\fR]
- .br
--\fBsg\fR [\fB-\fR] [\fIgroup\fR [[\fB-c\fR] \fIcommand\fR]]
-+\fBsg\fR [\fB\-\fR] [\fIgroup\fR [[\fB\-c\fR] \fIcommand\fR]]
- .SH DESCRIPTION
- \fBnewgrp\fR is used to change the current group ID during a login session.
- If the optional \fB\-\fR flag is given, the user's environment
-@@ -42,26 +42,38 @@
- remains unchanged.
- .PP
- \fBnewgrp\fR 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 she do not have a password and the
-+default group listed in \fI/etc/passwd\fR if no group name is given.
-+\fBnewgrp\fR also tries to add the group to the user groupset. If not root,
-+the user will be prompted for a password if she 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.
-+If compiled with SHADOWPWD (respectively SHADOWGRP) defined, the password
-+of the user (respectively, the password and the members of the group) will
-+be overwritten by the value defined in \fI/etc/shadow\fR (respectively in
-+\fI/etc/gshadow\fR) if an entry exists for this user (resp. group).
- .PP
- The \fBsg\fR command works similiar to \fBnewgrp\fR but accepts a command.
--The command will be executed with the Bourne shell. With most shells you
-+The command will be executed with the \fB/bin/sh\fR shell. With most shells you
- may run \fBsg\fR from, you need to enclose multi-word commands in quotes.
- Another difference between \fBnewgrp\fR and \fBsg\fR is that some shells
- treat \fBnewgrp\fR specially, replacing themselves with a new instance of
- a shell that \fBnewgrp\fR creates. This doesn't happen with \fBsg\fR, so
- upon exit from a \fBsg\fR command you are returned to your previous group ID.
- .SH FILES
--/etc/passwd \- user account information
-+\fI/etc/passwd\fR \- user account information
- .br
--/etc/group \- group information
-+\fI/etc/shadow\fR \- secure user account information
-+.br
-+\fI/etc/group\fR \- group account information
-+.br
-+\fI/etc/gshadow\fR \- shadow group file
- .SH SEE ALSO
- .BR id (1),
- .BR login (1),
--.BR su (1)
-+.BR su (1),
-+.BR gpasswd (1),
-+.BR group (5),
-+.BR gshadow (5)
- .SH AUTHOR
- Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-Index: shadow-4.0.3/man/Makefile.am
-===================================================================
---- shadow-4.0.3.orig/man/Makefile.am 2005-06-08 20:10:00.000000000 +0200
-+++ shadow-4.0.3/man/Makefile.am 2005-06-08 22:27:34.000000000 +0200
-@@ -36,6 +36,7 @@
- pwunconv.8 \
- sg.1 \
- shadow.5 \
-+ gshadow.5 \
- su.1 \
- suauth.5 \
- useradd.8 \
Deleted: branches/experimental/debian/patches/326_su.1_pwconv.8-typos
===================================================================
--- branches/experimental/debian/patches/326_su.1_pwconv.8-typos 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/326_su.1_pwconv.8-typos 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,46 +0,0 @@
-Goal: Correct a typo in su.1, pwconv.8 and newgrp.1 man pages and avoid a repetition of "user" in su.1
-Fixes: #309666
-
-Status wrt upstream: Applied upstream, except for the "user" repetition
-
-Index: shadow-4.0.3/man/su.1
-===================================================================
---- shadow-4.0.3.orig/man/su.1 2005-06-10 00:31:22.722729000 +0200
-+++ shadow-4.0.3/man/su.1 2005-06-10 00:44:39.512729000 +0200
-@@ -38,8 +38,8 @@
- Invoked without a username, \fBsu\fR defaults to becoming
- the super user.
- The optional argument \fB\-\fR may be used to provide an
--environment similiar to what the user would expect had
--the user logged in directly.
-+environment similar to what the user would expect had
-+(s)he logged in directly.
- .PP
- The user will be prompted for a password, if appropriate. Invalid
- passwords will produce an error message. All attempts, both valid and
-Index: shadow-4.0.3/man/pwconv.8
-===================================================================
---- shadow-4.0.3.orig/man/pwconv.8 2005-06-10 00:31:22.722729000 +0200
-+++ shadow-4.0.3/man/pwconv.8 2005-06-10 00:44:39.512729000 +0200
-@@ -44,7 +44,7 @@
- .IR /etc/shadow .
-
- .RB "Likewise, " pwunconv " and " grpunconv
--are similiar. Passwords in the main file are updated from the
-+are similar. Passwords in the main file are updated from the
- shadowed file. Entries which exist in the main file but not in the
- shadowed file are left alone. Finally, the shadowed file is removed.
-
-Index: shadow-4.0.3/man/newgrp.1
-===================================================================
---- shadow-4.0.3.orig/man/newgrp.1 2005-06-10 00:44:33.352729000 +0200
-+++ shadow-4.0.3/man/newgrp.1 2005-06-10 00:48:44.112729000 +0200
-@@ -53,7 +53,7 @@
- be overwritten by the value defined in \fI/etc/shadow\fR (respectively in
- \fI/etc/gshadow\fR) if an entry exists for this user (resp. group).
- .PP
--The \fBsg\fR command works similiar to \fBnewgrp\fR but accepts a command.
-+The \fBsg\fR command works similar to \fBnewgrp\fR but accepts a command.
- The command will be executed with the \fB/bin/sh\fR shell. With most shells you
- may run \fBsg\fR from, you need to enclose multi-word commands in quotes.
- Another difference between \fBnewgrp\fR and \fBsg\fR is that some shells
Deleted: branches/experimental/debian/patches/327_newgrp_162303
===================================================================
--- branches/experimental/debian/patches/327_newgrp_162303 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/327_newgrp_162303 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,26 +0,0 @@
-Goal: the function getlogin() and ttyname() can return NULL,
-which is not checked. (Bastian Kleineidam - 29 Sep 2002)
-Fixes: #162303
-
-Status wrt upstream: already applied upstream.
-
-Index: shadow-4.0.3/src/newgrp.c
-===================================================================
---- shadow-4.0.3.orig/src/newgrp.c 2005-05-19 19:41:07.799079000 +0200
-+++ shadow-4.0.3/src/newgrp.c 2005-05-19 20:24:06.819079000 +0200
-@@ -386,8 +386,13 @@
- SYSLOG ((LOG_INFO, "user `%s' switched to group `%s'",
- name, group));
- if (getdef_bool ("SYSLOG_SG_ENAB")) {
-- char *loginname = xstrdup (getlogin ());
-- char *tty = xstrdup (ttyname (0));
-+ char *loginname = getlogin ();
-+ char *tty = ttyname (0);
-+
-+ if (loginname != NULL)
-+ loginname = xstrdup (loginname);
-+ if (tty != NULL)
-+ tty = xstrdup (tty);
-
- if (loginname == NULL)
- loginname = "???";
Deleted: branches/experimental/debian/patches/328_successful_password_change
===================================================================
--- branches/experimental/debian/patches/328_successful_password_change 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/328_successful_password_change 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,18 +0,0 @@
-Goal: passwd: print "success" on successful password change
- (Ben Collins, 29 Apr 2000)
-Fixes: #58676
-
-Status wrt upstream: Upstream is even better, it uses gettext.
-
-Index: shadow-4.0.3/libmisc/pam_pass.c
-===================================================================
---- shadow-4.0.3.orig/libmisc/pam_pass.c 2005-05-20 00:26:52.989079000 +0200
-+++ shadow-4.0.3/libmisc/pam_pass.c 2005-05-20 00:30:45.529079000 +0200
-@@ -51,6 +51,7 @@
- exit(10); /* XXX */
- }
-
-+ fputs("passwd: password updated successfully\n", stderr);
- pam_end(pamh, PAM_SUCCESS);
- }
- #else /* !USE_PAM */
Deleted: branches/experimental/debian/patches/329_libmisc_failure_ngettext
===================================================================
--- branches/experimental/debian/patches/329_libmisc_failure_ngettext 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/329_libmisc_failure_ngettext 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,22 +0,0 @@
-Goal: use ngettext for the failure count (Danilo Piazzalunga, 27 May 2004)
-Fixes: #251317
-
-Status wrt upstream: Upstream string is a little bit different, but uses ngettext.
-
-Index: shadow-4.0.3/libmisc/failure.c
-===================================================================
---- shadow-4.0.3.orig/libmisc/failure.c 2005-05-20 01:04:14.000000000 +0200
-+++ shadow-4.0.3/libmisc/failure.c 2005-05-22 20:49:21.137167000 +0200
-@@ -239,9 +239,9 @@
- if (*lasttime == ' ')
- lasttime++;
- #endif
-- printf (_("%d %s since last login. Last was %s on %s.\n"),
-- fail->fail_cnt, fail->fail_cnt > 1 ? _("failures"):_("failure"),
-- lasttime, fail->fail_line);
-+ printf (ngettext("%d failure since last login. Last was %s on %s.\n",
-+ "%d failures since last login. Last was %s on %s.\n",
-+ fail->fail_cnt), fail->fail_cnt, lasttime, fail->fail_line);
- }
-
- /*
Deleted: branches/experimental/debian/patches/330_CAN-2004-1001_passwd_check
===================================================================
--- branches/experimental/debian/patches/330_CAN-2004-1001_passwd_check 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/330_CAN-2004-1001_passwd_check 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,19 +0,0 @@
-Goal: Adjusted password check to fix authentication bypass (Martin Schulze)
-Fixes: CAN-2004-1001
-
-Status wrt upstream: already applied upstream.
-
-Index: shadow-4.0.3/libmisc/pwdcheck.c
-===================================================================
---- shadow-4.0.3.orig/libmisc/pwdcheck.c 2000-10-15 19:07:26.000000000 +0200
-+++ shadow-4.0.3/libmisc/pwdcheck.c 2005-05-23 23:34:09.467134000 +0200
-@@ -40,7 +40,8 @@
- retcode = pam_acct_mgmt(pamh, 0);
- if (retcode == PAM_NEW_AUTHTOK_REQD) {
- retcode = pam_chauthtok(pamh, PAM_CHANGE_EXPIRED_AUTHTOK);
-- } else if (retcode)
-+ }
-+ if (retcode)
- goto bailout;
-
- if (pam_setcred(pamh, 0))
Deleted: branches/experimental/debian/patches/331_chpasswd-md5.dpatch
===================================================================
--- branches/experimental/debian/patches/331_chpasswd-md5.dpatch 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/331_chpasswd-md5.dpatch 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,91 +0,0 @@
-Goal: Add MD5 support to chpasswd.
-Fixes: #283961
-
-Status wrt upstream: Applied
-
- at DPATCH@
-
-Index: shadow-4.0.3/src/chpasswd.c
-===================================================================
---- shadow-4.0.3.orig/src/chpasswd.c 2005-05-12 14:00:54.046770311 +0200
-+++ shadow-4.0.3/src/chpasswd.c 2005-05-12 14:00:57.064319450 +0200
-@@ -36,6 +36,7 @@ RCSID (PKG_VER "$Id: chpasswd.c,v 1.14 2
- #include "defines.h"
- #include <pwd.h>
- #include <fcntl.h>
-+#include <getopt.h>
- #include "pwio.h"
- #ifdef SHADOWPWD
- #include "shadowio.h"
-@@ -47,6 +48,7 @@ RCSID (PKG_VER "$Id: chpasswd.c,v 1.14 2
- #endif /* USE_PAM */
- static char *Prog;
- static int eflg = 0;
-+static int md5flg = 0;
-
- #ifdef SHADOWPWD
- static int is_shadow_pwd;
-@@ -63,7 +65,7 @@ static void usage (void);
-
- static void usage (void)
- {
-- fprintf (stderr, _("usage: %s [-e]\n"), Prog);
-+ fprintf (stderr, _("usage: %s [--encrypted] [--md5]\n"), Prog);
- exit (1);
- }
-
-@@ -142,11 +144,32 @@ int main (int argc, char **argv)
- }
- #endif /* USE_PAM */
-
-- /* XXX - use getopt() */
-- if (!(argc == 1 || (argc == 2 && !strcmp (argv[1], "-e"))))
-- usage ();
-- if (argc == 2)
-- eflg = 1;
-+ {
-+ int option_index = 0;
-+ int c;
-+ static struct option long_options[] = {
-+ { "encrypted", no_argument, &eflg, 1 },
-+ { "md5", no_argument, &md5flg, 1 },
-+ { 0 }
-+ };
-+
-+ while ((c = getopt_long(argc,argv,"em",long_options,&option_index)) != -1) {
-+ switch (c) {
-+ case 'e':
-+ eflg = 1;
-+ break;
-+ case 'm':
-+ md5flg = 1;
-+ break;
-+ case 0:
-+ /* long option */
-+ break;
-+ default:
-+ usage();
-+ break;
-+ }
-+ }
-+ }
-
- /*
- * Lock the password file and open it for reading. This will bring
-@@ -223,8 +246,14 @@ int main (int argc, char **argv)
- continue;
- }
- newpwd = cp;
-- if (!eflg)
-- cp = pw_encrypt (newpwd, crypt_make_salt ());
-+ if (!eflg) {
-+ if (md5flg) {
-+ char salt[12] = "$1$";
-+ strcat(salt,crypt_make_salt());
-+ cp = pw_encrypt (newpwd, salt);
-+ } else
-+ cp = pw_encrypt (newpwd, crypt_make_salt());
-+ }
-
- /*
- * Get the password file entry for this user. The user must
Deleted: branches/experimental/debian/patches/332_grpck.8-type_and_section
===================================================================
--- branches/experimental/debian/patches/332_grpck.8-type_and_section 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/332_grpck.8-type_and_section 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,20 +0,0 @@
-Goal: fix typos and use the correct section number
-Fixes: #312431
-
-Status wrt upstream: Applied (should enter 4.0.10)
-
-The category should be checked in Debian (was set to 9)
-
-Index: shadow-4.0.9/man/grpck.8
-===================================================================
---- shadow-4.0.9.orig/man/grpck.8 2005-06-20 02:07:26.000000000 +0200
-+++ shadow-4.0.9/man/grpck.8 2005-06-20 02:07:34.000000000 +0200
-@@ -35,7 +35,7 @@
- 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.
-+have other uncorrectable errors.
- .PP
- Checks are made to verify that each entry has:
- .sp
Deleted: branches/experimental/debian/patches/334_chage.1-typo
===================================================================
--- branches/experimental/debian/patches/334_chage.1-typo 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/334_chage.1-typo 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,17 +0,0 @@
-Goal: fix a typo
-
-Status wrt upstream: Applied
-
-Index: shadow-4.0.3/man/chage.1
-===================================================================
---- shadow-4.0.3.orig/man/chage.1 2005-05-12 12:12:08.887059874 +0200
-+++ shadow-4.0.3/man/chage.1 2005-05-12 12:12:18.801578516 +0200
-@@ -57,7 +57,7 @@ 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,
-+This occurrence 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
Deleted: branches/experimental/debian/patches/347_login_log_pam_user_if_USE_PAM
===================================================================
--- branches/experimental/debian/patches/347_login_log_pam_user_if_USE_PAM 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/347_login_log_pam_user_if_USE_PAM 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,22 +0,0 @@
-Goal: fixed loggin of username on succesful login (was using
- the normal username, when it should have used pam_user)
-Fixes: #47819
-
-Status wrt upstream: Applied upstream.
-
-Index: shadow-4.0.3/src/login.c
-===================================================================
---- shadow-4.0.3.orig/src/login.c 2005-05-28 22:21:25.134189000 +0200
-+++ shadow-4.0.3/src/login.c 2005-05-28 22:21:29.434189000 +0200
-@@ -1421,7 +1421,11 @@
- if (pwent.pw_uid == 0)
- SYSLOG ((LOG_NOTICE, "ROOT LOGIN %s", fromhost));
- else if (getdef_bool ("LOG_OK_LOGINS"))
-+#ifdef USE_PAM
-+ SYSLOG ((LOG_INFO, "`%s' logged in %s", pam_user, fromhost));
-+#else
- SYSLOG ((LOG_INFO, "`%s' logged in %s", username, fromhost));
-+#endif
- closelog ();
- #ifdef RADIUS
- if (is_rad_login) {
Deleted: branches/experimental/debian/patches/348_login_PAM_SILENT_if_hushed_login
===================================================================
--- branches/experimental/debian/patches/348_login_PAM_SILENT_if_hushed_login 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/348_login_PAM_SILENT_if_hushed_login 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,25 +0,0 @@
-Goal: check for hushed login and pass PAM_SILENT if true,
-Fixes: #48002
-
-Status wrt upstream: Applied upstream.
-
-Index: shadow-4.0.3/src/login.c
-===================================================================
---- shadow-4.0.3.orig/src/login.c 2005-05-28 22:21:29.434189000 +0200
-+++ shadow-4.0.3/src/login.c 2005-05-28 22:21:32.774189000 +0200
-@@ -889,11 +889,14 @@
-
- if (!pwd || setup_groups (pwd))
- exit (1);
-+ else
-+ pwent = *pwd;
-
- retcode = pam_setcred (pamh, PAM_ESTABLISH_CRED);
- PAM_FAIL_CHECK;
-
-- retcode = pam_open_session (pamh, 0);
-+ retcode = pam_open_session (pamh,
-+ hushed(&pwent) ? PAM_SILENT : 0);
- PAM_FAIL_CHECK;
-
- #else /* ! USE_PAM */
Deleted: branches/experimental/debian/patches/349_login_opt-f_with_username_after--
===================================================================
--- branches/experimental/debian/patches/349_login_opt-f_with_username_after-- 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/349_login_opt-f_with_username_after-- 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,47 +0,0 @@
-Goal: Made login's -f option also able to use the username after -- if none
- was passed as it's optarg
-Fixes: #53702
-
-Status wrt upstream: Applied upstream.
-
-Index: shadow-4.0.3/src/login.c
-===================================================================
---- shadow-4.0.3.orig/src/login.c 2005-05-23 01:17:08.437167000 +0200
-+++ shadow-4.0.3/src/login.c 2005-05-23 01:19:05.347167000 +0200
-@@ -473,7 +473,7 @@
-
- check_flags (argc, argv);
-
-- while ((flag = getopt (argc, argv, "d:f:h:pr:")) != EOF) {
-+ while ((flag = getopt (argc, argv, "d:f::h:pr:")) != EOF) {
- switch (flag) {
- case 'p':
- pflg++;
-@@ -482,11 +482,16 @@
- /*
- * username must be a separate token
- * (-f root, *not* -froot). --marekm
-+ *
-+ * if -f has an arg, use that, else use the
-+ * normal user name passed after all options
-+ * --benc
- */
-- if (optarg != argv[optind - 1])
-+ if (optarg != NULL && optarg != argv[optind - 1])
- usage ();
- fflg++;
-- STRFCPY (username, optarg);
-+ if (optarg)
-+ STRFCPY (username, optarg);
- break;
- #ifdef RLOGIN
- case 'r':
-@@ -640,7 +645,7 @@
- init_env ();
-
- if (optind < argc) { /* get the user name */
-- if (rflg || fflg)
-+ if (rflg || (fflg && username[0]))
- usage ();
-
- #ifdef SVR4
Deleted: branches/experimental/debian/patches/355_login_close_session_as_root
===================================================================
--- branches/experimental/debian/patches/355_login_close_session_as_root 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/355_login_close_session_as_root 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,104 +0,0 @@
-Goal: The PAM session needs to be closed as root, thus before change_uid().
-
-Status wrt upstream: Applied upstream (05/06/10, should be present in 4.0.10).
-
-Notes: The changelog reports:
- * src/login.c: moved usage of setup_uid_gid() when PAM is enabled or
- pam_groups.so's groups get clobbered
- (Ben Collins 19 Sep 1999)
-
- The behaviour of the parent is modified (for example signal handlers).
- I don't know if this may be a problem.
-
- The following bugs are also related to this issue:
- http://bugs.debian.org/53570
- http://bugs.debian.org/195048
- http://bugs.debian.org/211884
-
-Index: shadow-4.0.3/src/login.c
-===================================================================
---- shadow-4.0.3.orig/src/login.c 2005-05-28 19:11:32.274189000 +0200
-+++ shadow-4.0.3/src/login.c 2005-05-28 19:11:33.674189000 +0200
-@@ -1273,6 +1273,40 @@
- login_fbtab (tty, pwent.pw_uid, pwent.pw_gid);
- #endif
-
-+#ifdef USE_PAM
-+ /*
-+ * We must fork before setuid() because we need to call
-+ * pam_close_session() as root.
-+ *
-+ * Note: not true in other (non-Linux) PAM implementations, where
-+ * the parent process of login (init, telnetd, ...) is responsible
-+ * for calling pam_close_session(). This avoids an extra process for
-+ * each login. Maybe we should do this on Linux too? We let the
-+ * admin configure whether they need to keep login around to close
-+ * sessions.
-+ */
-+ if (getdef_bool ("CLOSE_SESSIONS")) {
-+ signal (SIGINT, SIG_IGN);
-+ child = fork ();
-+ if (child < 0) {
-+ /* error in fork() */
-+ fprintf (stderr,
-+ "login: failure forking: %s",
-+ strerror (errno));
-+ PAM_END;
-+ exit (0);
-+ } else if (child) {
-+ /*
-+ * parent - wait for child to finish, then cleanup
-+ * session
-+ */
-+ wait (NULL);
-+ PAM_END;
-+ exit (0);
-+ }
-+ /* child */
-+ }
-+#endif
- /* We call set_groups() above because this clobbers pam_groups.so */
- #ifndef USE_PAM
- if (setup_uid_gid (&pwent, is_console))
-@@ -1374,41 +1408,6 @@
- signal (SIGTERM, SIG_DFL); /* default terminate signal */
- signal (SIGALRM, SIG_DFL); /* default alarm signal */
- signal (SIGHUP, SIG_DFL); /* added this. --marekm */
--
--#ifdef USE_PAM
-- /*
-- * We must fork before setuid() because we need to call
-- * pam_close_session() as root.
-- *
-- * Note: not true in other (non-Linux) PAM implementations, where
-- * the parent process of login (init, telnetd, ...) is responsible
-- * for calling pam_close_session(). This avoids an extra process for
-- * each login. Maybe we should do this on Linux too? We let the
-- * admin configure whether they need to keep login around to close
-- * sessions.
-- */
-- if (getdef_bool ("CLOSE_SESSIONS")) {
-- signal (SIGINT, SIG_IGN);
-- child = fork ();
-- if (child < 0) {
-- /* error in fork() */
-- fprintf (stderr,
-- "login: failure forking: %s",
-- strerror (errno));
-- PAM_END;
-- exit (0);
-- } else if (child) {
-- /*
-- * parent - wait for child to finish, then cleanup
-- * session
-- */
-- wait (NULL);
-- PAM_END;
-- exit (0);
-- }
-- /* child */
-- }
--#endif
- signal (SIGINT, SIG_DFL); /* default interrupt signal */
-
- endpwent (); /* stop access to password file */
Deleted: branches/experimental/debian/patches/358_userdel_remove_group_from_gshadow
===================================================================
--- branches/experimental/debian/patches/358_userdel_remove_group_from_gshadow 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/358_userdel_remove_group_from_gshadow 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,40 +0,0 @@
-Goal: userdel now deletes user groups from /etc/gshdow as well as
- /etc/group.
-Fixes: #99442
-
-Status wrt upstream: applied upstream (4.0.10).
-
-Index: shadow-4.0.3/src/userdel.c
-===================================================================
---- shadow-4.0.3.orig/src/userdel.c 2005-05-22 22:41:28.837167000 +0200
-+++ shadow-4.0.3/src/userdel.c 2005-05-22 23:02:35.137167000 +0200
-@@ -147,6 +147,7 @@
- struct group *ngrp;
-
- #ifdef SHADOWGRP
-+ int deleted_user_group = 0;
- const struct sgrp *sgrp;
- struct sgrp *nsgrp;
- #endif /* SHADOWGRP */
-@@ -209,6 +210,10 @@
-
- gr_remove (grp->gr_name);
-
-+#ifdef SHADOWGRP
-+ deleted_user_group = 1;
-+#endif
-+
- /*
- * Update the DBM group file with the new entry as well.
- */
-@@ -279,6 +284,10 @@
- SYSLOG ((LOG_INFO, "delete `%s' from shadow group `%s'\n",
- user_name, nsgrp->sg_name));
- }
-+
-+ if (deleted_user_group)
-+ sgr_remove(user_name);
-+
- #ifdef NDBM
- endsgent ();
- #endif /* NDBM */
Deleted: branches/experimental/debian/patches/359_usermod_warn_old_home_not_removed
===================================================================
--- branches/experimental/debian/patches/359_usermod_warn_old_home_not_removed 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/359_usermod_warn_old_home_not_removed 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,30 +0,0 @@
-Goal: When relocating a user's home directory, don't fail and remove the new
- home directory if we can't remove the old home directory for some
- reason; the results can be spectularly poort if, for instance, only
- the rmdir() fails.
-Fixes: #166369
-
-Status wrt upstream: applied upstream (4.0.10).
-
-Index: shadow-4.0.3/src/usermod.c
-===================================================================
---- shadow-4.0.3.orig/src/usermod.c 2005-05-22 21:23:35.637167000 +0200
-+++ shadow-4.0.3/src/usermod.c 2005-05-22 21:48:12.207167000 +0200
-@@ -1544,9 +1544,14 @@
- if (copy_tree (user_home, user_newhome,
- uflg ? user_newid : -1,
- gflg ? user_newgid : -1) ==
-- 0 && remove_tree (user_home) == 0
-- && rmdir (user_home) == 0)
-- return;
-+ 0) {
-+ if (remove_tree (user_home) != 0 ||
-+ rmdir (user_home) != 0)
-+ fprintf (stderr,
-+ _("%s: warning: failed to completely remove old home directory %s"),
-+ Prog, user_home);
-+ return;
-+ }
-
- (void) remove_tree (user_newhome);
- (void) rmdir (user_newhome);
Deleted: branches/experimental/debian/patches/361_lastlog_8_sparse
===================================================================
--- branches/experimental/debian/patches/361_lastlog_8_sparse 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/361_lastlog_8_sparse 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,22 +0,0 @@
-Goal: Document that lastlog is a sparse file, and don't need to be rotated.
-Fixes: 219321
-
-Status wrt upstream: Applied upstream (will be in 4.0.11).
-
-Index: shadow-4.0.3/man/lastlog.8
-===================================================================
---- shadow-4.0.3.orig/man/lastlog.8 2005-06-23 12:47:42.782712000 +0200
-+++ shadow-4.0.3/man/lastlog.8 2005-06-23 13:08:07.412712000 +0200
-@@ -61,6 +61,12 @@
- 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 NOTE
-+The \fIlastlog\fR file is a database which contains info on the last login of
-+each user. You should not rotate it. It is a sparse file, so its size on the
-+disk is much smaller than the one shown by \fBls \-l\fR (which can indicate a
-+really big file if you have an high UID). You can display its real size with
-+\fBls \-s\fR.
- .SH AUTHORS
- Julianne Frances Haugh (jockgrrl at ix.netcom.com)
- .br
Deleted: branches/experimental/debian/patches/364_ENV_SUPATH
===================================================================
--- branches/experimental/debian/patches/364_ENV_SUPATH 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/364_ENV_SUPATH 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,51 +0,0 @@
-Goal: re-activate "ENV_PATH" and "ENV_SUPATH", because su has to set a
- different PATH for root (and thus this cannot be handled by pam_env)
-
-Status wrt upstream: Will be fixed in 4.0.12
-
-Note: In upstream, "environ = newenvp;" is not enclosed in a #ifndef
- USE_PAM. It should probably be. To be checked.
-
-Index: shadow-4.0.11.1/lib/getdef.c
-===================================================================
---- shadow-4.0.11.1.orig/lib/getdef.c 2005-07-27 13:36:58.000000000 +0200
-+++ shadow-4.0.11.1/lib/getdef.c 2005-07-27 13:38:43.000000000 +0200
-@@ -63,9 +63,7 @@
- {"CHSH_AUTH", NULL},
- {"CRACKLIB_DICTPATH", NULL},
- {"ENV_HZ", NULL},
-- {"ENV_PATH", NULL},
- {"ENV_ROOTPATH", NULL}, /* SuSE compatibility? */
-- {"ENV_SUPATH", NULL},
- {"ENV_TZ", NULL},
- {"ENVIRON_FILE", NULL},
- {"ISSUE_FILE", NULL},
-@@ -90,6 +88,8 @@
- {"CONSOLE_GROUPS", NULL},
- {"CONSOLE", NULL},
- {"CREATE_HOME", NULL},
-+ {"ENV_PATH", NULL},
-+ {"ENV_SUPATH", NULL},
- {"ERASECHAR", NULL},
- {"FAKE_SHELL", NULL},
- {"GETPASS_ASTERISKS", NULL},
-Index: shadow-4.0.11.1/src/su.c
-===================================================================
---- shadow-4.0.11.1.orig/src/su.c 2005-07-27 13:36:58.000000000 +0200
-+++ shadow-4.0.11.1/src/su.c 2005-07-27 14:52:14.000000000 +0200
-@@ -770,7 +770,6 @@
-
- signal (SIGINT, SIG_DFL);
- signal (SIGQUIT, SIG_DFL);
--#ifndef USE_PAM
- cp = getdef_str ((pwent.pw_uid == 0) ? "ENV_SUPATH" : "ENV_PATH");
-
- /* XXX very similar code duplicated in libmisc/setupenv.c */
-@@ -782,6 +781,7 @@
- addenv ("PATH", cp);
- }
-
-+#ifndef USE_PAM
- if (change_environment || restricted_shell(pwent.pw_shell)) {
- environ = newenvp; /* make new environment active */
- }
Deleted: branches/experimental/debian/patches/422_getdate.c_generated_file
===================================================================
--- branches/experimental/debian/patches/422_getdate.c_generated_file 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/422_getdate.c_generated_file 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,2453 +0,0 @@
-Goal: getdate.c is generated from getdate.y
- It is pre-generated, probably in order not ot build depend on bison.
- This patch updates the bison getdate.c with a more recent version of bison.
-
-Status wrt upstream: getdate.c is removed from the upstream CVS and is
- auto-generated from getdate.y at compile time.
-
-Index: shadow-4.0.3/libmisc/getdate.c
-===================================================================
---- shadow-4.0.3.orig/libmisc/getdate.c 2005-05-20 00:10:11.699079000 +0200
-+++ shadow-4.0.3/libmisc/getdate.c 2005-05-20 00:15:41.059079000 +0200
-@@ -1,27 +1,97 @@
-+/* A Bison parser, made by GNU Bison 1.875a. */
-
--/* A Bison parser, made from getdate.y
-- by GNU Bison version 1.25
-- */
--
--#define YYBISON 1 /* Identify Bison output. */
--
--#define tAGO 258
--#define tDAY 259
--#define tDAY_UNIT 260
--#define tDAYZONE 261
--#define tDST 262
--#define tHOUR_UNIT 263
--#define tID 264
--#define tMERIDIAN 265
--#define tMINUTE_UNIT 266
--#define tMONTH 267
--#define tMONTH_UNIT 268
--#define tSEC_UNIT 269
--#define tSNUMBER 270
--#define tUNUMBER 271
--#define tYEAR_UNIT 272
--#define tZONE 273
-+/* Skeleton parser for Yacc-like parsing with Bison,
-+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
-
-+ 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. */
-+
-+/* As a special exception, when this file is copied by Bison into a
-+ Bison output file, you may use that output file without restriction.
-+ This special exception was added by the Free Software Foundation
-+ in version 1.24 of Bison. */
-+
-+/* Written by Richard Stallman by simplifying the original so called
-+ ``semantic'' parser. */
-+
-+/* All symbols defined below should begin with yy or YY, to avoid
-+ infringing on user name space. This should be done even for local
-+ variables, as they might otherwise be expanded by user macros.
-+ There are some unavoidable exceptions within include files to
-+ define necessary library symbols; they are noted "INFRINGES ON
-+ USER NAME SPACE" below. */
-+
-+/* Identify Bison output. */
-+#define YYBISON 1
-+
-+/* Skeleton name. */
-+#define YYSKELETON_NAME "yacc.c"
-+
-+/* Pure parsers. */
-+#define YYPURE 0
-+
-+/* Using locations. */
-+#define YYLSP_NEEDED 0
-+
-+
-+
-+/* Tokens. */
-+#ifndef YYTOKENTYPE
-+# define YYTOKENTYPE
-+ /* Put the tokens into the symbol table, so that GDB and other debuggers
-+ know about them. */
-+ enum yytokentype {
-+ tAGO = 258,
-+ tDAY = 259,
-+ tDAY_UNIT = 260,
-+ tDAYZONE = 261,
-+ tDST = 262,
-+ tHOUR_UNIT = 263,
-+ tID = 264,
-+ tMERIDIAN = 265,
-+ tMINUTE_UNIT = 266,
-+ tMONTH = 267,
-+ tMONTH_UNIT = 268,
-+ tSEC_UNIT = 269,
-+ tSNUMBER = 270,
-+ tUNUMBER = 271,
-+ tYEAR_UNIT = 272,
-+ tZONE = 273
-+ };
-+#endif
-+#define tAGO 258
-+#define tDAY 259
-+#define tDAY_UNIT 260
-+#define tDAYZONE 261
-+#define tDST 262
-+#define tHOUR_UNIT 263
-+#define tID 264
-+#define tMERIDIAN 265
-+#define tMINUTE_UNIT 266
-+#define tMONTH 267
-+#define tMONTH_UNIT 268
-+#define tSEC_UNIT 269
-+#define tSNUMBER 270
-+#define tUNUMBER 271
-+#define tYEAR_UNIT 272
-+#define tZONE 273
-+
-+
-+
-+
-+/* Copy the first part of user declarations. */
- #line 1 "getdate.y"
-
- /*
-@@ -196,436 +266,769 @@
- static int yyRelYear;
-
-
-+
-+/* Enabling traces. */
-+#ifndef YYDEBUG
-+# define YYDEBUG 0
-+#endif
-+
-+/* Enabling verbose error messages. */
-+#ifdef YYERROR_VERBOSE
-+# undef YYERROR_VERBOSE
-+# define YYERROR_VERBOSE 1
-+#else
-+# define YYERROR_VERBOSE 0
-+#endif
-+
-+#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
- #line 175 "getdate.y"
--typedef union {
-+typedef union YYSTYPE {
- int Number;
- enum _MERIDIAN Meridian;
- } YYSTYPE;
--#include <stdio.h>
--
--#ifndef __cplusplus
--#ifndef __STDC__
--#define const
--#endif
-+/* Line 191 of yacc.c. */
-+#line 291 "getdate.c"
-+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
-+# define YYSTYPE_IS_DECLARED 1
-+# define YYSTYPE_IS_TRIVIAL 1
- #endif
-
-
-
--#define YYFINAL 61
--#define YYFLAG -32768
--#define YYNTBASE 22
--
--#define YYTRANSLATE(x) ((unsigned)(x) <= 273 ? yytranslate[x] : 32)
--
--static const char yytranslate[] = { 0,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 20, 2, 2, 21, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 19, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-- 2, 2, 2, 2, 2, 1, 2, 3, 4, 5,
-- 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
-- 16, 17, 18
--};
-+/* Copy the second part of user declarations. */
-
--#if YYDEBUG != 0
--static const short yyprhs[] = { 0,
-- 0, 1, 4, 6, 8, 10, 12, 14, 16, 19,
-- 24, 29, 36, 43, 45, 47, 50, 52, 55, 58,
-- 62, 68, 72, 76, 79, 84, 87, 91, 94, 96,
-- 99, 102, 104, 107, 110, 112, 115, 118, 120, 123,
-- 126, 128, 131, 134, 136, 139, 142, 144, 146, 147
--};
-
--static const short yyrhs[] = { -1,
-- 22, 23, 0, 24, 0, 25, 0, 27, 0, 26,
-- 0, 28, 0, 30, 0, 16, 10, 0, 16, 19,
-- 16, 31, 0, 16, 19, 16, 15, 0, 16, 19,
-- 16, 19, 16, 31, 0, 16, 19, 16, 19, 16,
-- 15, 0, 18, 0, 6, 0, 18, 7, 0, 4,
-- 0, 4, 20, 0, 16, 4, 0, 16, 21, 16,
-- 0, 16, 21, 16, 21, 16, 0, 16, 15, 15,
-- 0, 16, 12, 15, 0, 12, 16, 0, 12, 16,
-- 20, 16, 0, 16, 12, 0, 16, 12, 16, 0,
-- 29, 3, 0, 29, 0, 16, 17, 0, 15, 17,
-- 0, 17, 0, 16, 13, 0, 15, 13, 0, 13,
-- 0, 16, 5, 0, 15, 5, 0, 5, 0, 16,
-- 8, 0, 15, 8, 0, 8, 0, 16, 11, 0,
-- 15, 11, 0, 11, 0, 16, 14, 0, 15, 14,
-- 0, 14, 0, 16, 0, 0, 10, 0
--};
-+/* Line 214 of yacc.c. */
-+#line 303 "getdate.c"
-
--#endif
-+#if ! defined (yyoverflow) || YYERROR_VERBOSE
-
--#if YYDEBUG != 0
--static const short yyrline[] = { 0,
-- 191, 192, 195, 198, 201, 204, 207, 210, 213, 219,
-- 225, 234, 240, 252, 255, 258, 264, 268, 272, 278,
-- 282, 300, 306, 312, 316, 321, 325, 332, 340, 343,
-- 346, 349, 352, 355, 358, 361, 364, 367, 370, 373,
-- 376, 379, 382, 385, 388, 391, 394, 399, 432, 436
--};
--#endif
-+/* The parser invokes alloca or malloc; define the necessary symbols. */
-
-+# if YYSTACK_USE_ALLOCA
-+# define YYSTACK_ALLOC alloca
-+# else
-+# ifndef YYSTACK_USE_ALLOCA
-+# if defined (alloca) || defined (_ALLOCA_H)
-+# define YYSTACK_ALLOC alloca
-+# else
-+# ifdef __GNUC__
-+# define YYSTACK_ALLOC __builtin_alloca
-+# endif
-+# endif
-+# endif
-+# endif
-
--#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
-+# ifdef YYSTACK_ALLOC
-+ /* Pacify GCC's `empty if-body' warning. */
-+# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
-+# else
-+# if defined (__STDC__) || defined (__cplusplus)
-+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
-+# define YYSIZE_T size_t
-+# endif
-+# define YYSTACK_ALLOC malloc
-+# define YYSTACK_FREE free
-+# endif
-+#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
-+
-+
-+#if (! defined (yyoverflow) \
-+ && (! defined (__cplusplus) \
-+ || (YYSTYPE_IS_TRIVIAL)))
-+
-+/* A type that is properly aligned for any stack member. */
-+union yyalloc
-+{
-+ short yyss;
-+ YYSTYPE yyvs;
-+ };
-+
-+/* The size of the maximum gap between one aligned stack and the next. */
-+# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
-+
-+/* The size of an array large to enough to hold all stacks, each with
-+ N elements. */
-+# define YYSTACK_BYTES(N) \
-+ ((N) * (sizeof (short) + sizeof (YYSTYPE)) \
-+ + YYSTACK_GAP_MAXIMUM)
-+
-+/* Copy COUNT objects from FROM to TO. The source and destination do
-+ not overlap. */
-+# ifndef YYCOPY
-+# if 1 < __GNUC__
-+# define YYCOPY(To, From, Count) \
-+ __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-+# else
-+# define YYCOPY(To, From, Count) \
-+ do \
-+ { \
-+ register YYSIZE_T yyi; \
-+ for (yyi = 0; yyi < (Count); yyi++) \
-+ (To)[yyi] = (From)[yyi]; \
-+ } \
-+ while (0)
-+# endif
-+# endif
-+
-+/* Relocate STACK from its old location to the new one. The
-+ local variables YYSIZE and YYSTACKSIZE give the old and new number of
-+ elements in the stack, and YYPTR gives the new location of the
-+ stack. Advance YYPTR to a properly aligned location for the next
-+ stack. */
-+# define YYSTACK_RELOCATE(Stack) \
-+ do \
-+ { \
-+ YYSIZE_T yynewbytes; \
-+ YYCOPY (&yyptr->Stack, Stack, yysize); \
-+ Stack = &yyptr->Stack; \
-+ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
-+ yyptr += yynewbytes / sizeof (*yyptr); \
-+ } \
-+ while (0)
-
--static const char * const yytname[] = { "$","error","$undefined.","tAGO","tDAY",
--"tDAY_UNIT","tDAYZONE","tDST","tHOUR_UNIT","tID","tMERIDIAN","tMINUTE_UNIT",
--"tMONTH","tMONTH_UNIT","tSEC_UNIT","tSNUMBER","tUNUMBER","tYEAR_UNIT","tZONE",
--"':'","','","'/'","spec","item","time","zone","day","date","rel","relunit","number",
--"o_merid", NULL
--};
- #endif
-
--static const short yyr1[] = { 0,
-- 22, 22, 23, 23, 23, 23, 23, 23, 24, 24,
-- 24, 24, 24, 25, 25, 25, 26, 26, 26, 27,
-- 27, 27, 27, 27, 27, 27, 27, 28, 28, 29,
-- 29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
-- 29, 29, 29, 29, 29, 29, 29, 30, 31, 31
--};
-+#if defined (__STDC__) || defined (__cplusplus)
-+ typedef signed char yysigned_char;
-+#else
-+ typedef short yysigned_char;
-+#endif
-
--static const short yyr2[] = { 0,
-- 0, 2, 1, 1, 1, 1, 1, 1, 2, 4,
-- 4, 6, 6, 1, 1, 2, 1, 2, 2, 3,
-- 5, 3, 3, 2, 4, 2, 3, 2, 1, 2,
-- 2, 1, 2, 2, 1, 2, 2, 1, 2, 2,
-- 1, 2, 2, 1, 2, 2, 1, 1, 0, 1
-+/* YYFINAL -- State number of the termination state. */
-+#define YYFINAL 2
-+/* YYLAST -- Last index in YYTABLE. */
-+#define YYLAST 50
-+
-+/* YYNTOKENS -- Number of terminals. */
-+#define YYNTOKENS 22
-+/* YYNNTS -- Number of nonterminals. */
-+#define YYNNTS 11
-+/* YYNRULES -- Number of rules. */
-+#define YYNRULES 51
-+/* YYNRULES -- Number of states. */
-+#define YYNSTATES 61
-+
-+/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
-+#define YYUNDEFTOK 2
-+#define YYMAXUTOK 273
-+
-+#define YYTRANSLATE(YYX) \
-+ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
-+
-+/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
-+static const unsigned char yytranslate[] =
-+{
-+ 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 20, 2, 2, 21, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 19, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
-+ 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
-+ 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
-+ 15, 16, 17, 18
- };
-
--static const short yydefact[] = { 1,
-- 0, 17, 38, 15, 41, 44, 0, 35, 47, 0,
-- 48, 32, 14, 2, 3, 4, 6, 5, 7, 29,
-- 8, 18, 24, 37, 40, 43, 34, 46, 31, 19,
-- 36, 39, 9, 42, 26, 33, 45, 0, 30, 0,
-- 0, 16, 28, 0, 23, 27, 22, 49, 20, 25,
-- 50, 11, 0, 10, 0, 49, 21, 13, 12, 0,
-- 0
-+#if YYDEBUG
-+/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
-+ YYRHS. */
-+static const unsigned char yyprhs[] =
-+{
-+ 0, 0, 3, 4, 7, 9, 11, 13, 15, 17,
-+ 19, 22, 27, 32, 39, 46, 48, 50, 53, 55,
-+ 58, 61, 65, 71, 75, 79, 82, 87, 90, 94,
-+ 97, 99, 102, 105, 107, 110, 113, 115, 118, 121,
-+ 123, 126, 129, 131, 134, 137, 139, 142, 145, 147,
-+ 149, 150
- };
-
--static const short yydefgoto[] = { 1,
-- 14, 15, 16, 17, 18, 19, 20, 21, 54
-+/* YYRHS -- A `-1'-separated list of the rules' RHS. */
-+static const yysigned_char yyrhs[] =
-+{
-+ 23, 0, -1, -1, 23, 24, -1, 25, -1, 26,
-+ -1, 28, -1, 27, -1, 29, -1, 31, -1, 16,
-+ 10, -1, 16, 19, 16, 32, -1, 16, 19, 16,
-+ 15, -1, 16, 19, 16, 19, 16, 32, -1, 16,
-+ 19, 16, 19, 16, 15, -1, 18, -1, 6, -1,
-+ 18, 7, -1, 4, -1, 4, 20, -1, 16, 4,
-+ -1, 16, 21, 16, -1, 16, 21, 16, 21, 16,
-+ -1, 16, 15, 15, -1, 16, 12, 15, -1, 12,
-+ 16, -1, 12, 16, 20, 16, -1, 16, 12, -1,
-+ 16, 12, 16, -1, 30, 3, -1, 30, -1, 16,
-+ 17, -1, 15, 17, -1, 17, -1, 16, 13, -1,
-+ 15, 13, -1, 13, -1, 16, 5, -1, 15, 5,
-+ -1, 5, -1, 16, 8, -1, 15, 8, -1, 8,
-+ -1, 16, 11, -1, 15, 11, -1, 11, -1, 16,
-+ 14, -1, 15, 14, -1, 14, -1, 16, -1, -1,
-+ 10, -1
- };
-
--static const short yypact[] = {-32768,
-- 0, -19,-32768,-32768,-32768,-32768, -13,-32768,-32768, 30,
-- 15,-32768, 14,-32768,-32768,-32768,-32768,-32768,-32768, 19,
---32768,-32768, 4,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
---32768,-32768,-32768,-32768, -6,-32768,-32768, 16,-32768, 17,
-- 23,-32768,-32768, 24,-32768,-32768,-32768, 27, 28,-32768,
---32768,-32768, 29,-32768, 32, -8,-32768,-32768,-32768, 50,
---32768
-+/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
-+static const unsigned short yyrline[] =
-+{
-+ 0, 191, 191, 192, 195, 198, 201, 204, 207, 210,
-+ 213, 219, 225, 234, 240, 252, 255, 259, 264, 268,
-+ 272, 278, 282, 300, 306, 312, 316, 321, 325, 332,
-+ 340, 343, 346, 349, 352, 355, 358, 361, 364, 367,
-+ 370, 373, 376, 379, 382, 385, 388, 391, 394, 399,
-+ 433, 436
- };
-+#endif
-
--static const short yypgoto[] = {-32768,
---32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -5
-+#if YYDEBUG || YYERROR_VERBOSE
-+/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
-+ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
-+static const char *const yytname[] =
-+{
-+ "$end", "error", "$undefined", "tAGO", "tDAY", "tDAY_UNIT", "tDAYZONE",
-+ "tDST", "tHOUR_UNIT", "tID", "tMERIDIAN", "tMINUTE_UNIT", "tMONTH",
-+ "tMONTH_UNIT", "tSEC_UNIT", "tSNUMBER", "tUNUMBER", "tYEAR_UNIT",
-+ "tZONE", "':'", "','", "'/'", "$accept", "spec", "item", "time", "zone",
-+ "day", "date", "rel", "relunit", "number", "o_merid", 0
- };
-+#endif
-
-+# ifdef YYPRINT
-+/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
-+ token YYLEX-NUM. */
-+static const unsigned short yytoknum[] =
-+{
-+ 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
-+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 58,
-+ 44, 47
-+};
-+# endif
-
--#define YYLAST 51
--
-+/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
-+static const unsigned char yyr1[] =
-+{
-+ 0, 22, 23, 23, 24, 24, 24, 24, 24, 24,
-+ 25, 25, 25, 25, 25, 26, 26, 26, 27, 27,
-+ 27, 28, 28, 28, 28, 28, 28, 28, 28, 29,
-+ 29, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-+ 30, 30, 30, 30, 30, 30, 30, 30, 30, 31,
-+ 32, 32
-+};
-
--static const short yytable[] = { 60,
-- 22, 51, 23, 2, 3, 4, 58, 5, 45, 46,
-- 6, 7, 8, 9, 10, 11, 12, 13, 30, 31,
-- 42, 43, 32, 44, 33, 34, 35, 36, 37, 38,
-- 47, 39, 48, 40, 24, 41, 51, 25, 49, 50,
-- 26, 52, 27, 28, 56, 53, 29, 57, 55, 61,
-- 59
-+/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
-+static const unsigned char yyr2[] =
-+{
-+ 0, 2, 0, 2, 1, 1, 1, 1, 1, 1,
-+ 2, 4, 4, 6, 6, 1, 1, 2, 1, 2,
-+ 2, 3, 5, 3, 3, 2, 4, 2, 3, 2,
-+ 1, 2, 2, 1, 2, 2, 1, 2, 2, 1,
-+ 2, 2, 1, 2, 2, 1, 2, 2, 1, 1,
-+ 0, 1
- };
-
--static const short yycheck[] = { 0,
-- 20, 10, 16, 4, 5, 6, 15, 8, 15, 16,
-- 11, 12, 13, 14, 15, 16, 17, 18, 4, 5,
-- 7, 3, 8, 20, 10, 11, 12, 13, 14, 15,
-- 15, 17, 16, 19, 5, 21, 10, 8, 16, 16,
-- 11, 15, 13, 14, 16, 19, 17, 16, 21, 0,
-- 56
-+/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
-+ STATE-NUM when YYTABLE doesn't specify something else to do. Zero
-+ means the default is an error. */
-+static const unsigned char yydefact[] =
-+{
-+ 2, 0, 1, 18, 39, 16, 42, 45, 0, 36,
-+ 48, 0, 49, 33, 15, 3, 4, 5, 7, 6,
-+ 8, 30, 9, 19, 25, 38, 41, 44, 35, 47,
-+ 32, 20, 37, 40, 10, 43, 27, 34, 46, 0,
-+ 31, 0, 0, 17, 29, 0, 24, 28, 23, 50,
-+ 21, 26, 51, 12, 0, 11, 0, 50, 22, 14,
-+ 13
- };
--/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
--#line 3 "/usr/share/bison.simple"
-
--/* Skeleton output parser for bison,
-- Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
-+/* YYDEFGOTO[NTERM-NUM]. */
-+static const yysigned_char yydefgoto[] =
-+{
-+ -1, 1, 15, 16, 17, 18, 19, 20, 21, 22,
-+ 55
-+};
-
-- 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.
-+/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
-+ STATE-NUM. */
-+#define YYPACT_NINF -20
-+static const yysigned_char yypact[] =
-+{
-+ -20, 0, -20, -19, -20, -20, -20, -20, -13, -20,
-+ -20, 30, 15, -20, 14, -20, -20, -20, -20, -20,
-+ -20, 19, -20, -20, 4, -20, -20, -20, -20, -20,
-+ -20, -20, -20, -20, -20, -20, -6, -20, -20, 16,
-+ -20, 17, 23, -20, -20, 24, -20, -20, -20, 27,
-+ 28, -20, -20, -20, 29, -20, 32, -8, -20, -20,
-+ -20
-+};
-
-- 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.
-+/* YYPGOTO[NTERM-NUM]. */
-+static const yysigned_char yypgoto[] =
-+{
-+ -20, -20, -20, -20, -20, -20, -20, -20, -20, -20,
-+ -7
-+};
-
-- 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., 675 Mass Ave, Cambridge, MA 02139, USA. */
-+/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
-+ positive, shift that token. If negative, reduce the rule which
-+ number is the opposite. If zero, do what YYDEFACT says.
-+ If YYTABLE_NINF, syntax error. */
-+#define YYTABLE_NINF -1
-+static const unsigned char yytable[] =
-+{
-+ 2, 23, 52, 24, 3, 4, 5, 59, 6, 46,
-+ 47, 7, 8, 9, 10, 11, 12, 13, 14, 31,
-+ 32, 43, 44, 33, 45, 34, 35, 36, 37, 38,
-+ 39, 48, 40, 49, 41, 25, 42, 52, 26, 50,
-+ 51, 27, 53, 28, 29, 57, 54, 30, 58, 56,
-+ 60
-+};
-
--/* As a special exception, when this file is copied by Bison into a
-- Bison output file, you may use that output file without restriction.
-- This special exception was added by the Free Software Foundation
-- in version 1.24 of Bison. */
-+static const unsigned char yycheck[] =
-+{
-+ 0, 20, 10, 16, 4, 5, 6, 15, 8, 15,
-+ 16, 11, 12, 13, 14, 15, 16, 17, 18, 4,
-+ 5, 7, 3, 8, 20, 10, 11, 12, 13, 14,
-+ 15, 15, 17, 16, 19, 5, 21, 10, 8, 16,
-+ 16, 11, 15, 13, 14, 16, 19, 17, 16, 21,
-+ 57
-+};
-
--#ifndef alloca
--#ifdef __GNUC__
--#define alloca __builtin_alloca
--#else /* not GNU C. */
--#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi)
--#include <alloca.h>
--#else /* not sparc */
--#if defined (MSDOS) && !defined (__TURBOC__)
--#include <malloc.h>
--#else /* not MSDOS, or __TURBOC__ */
--#if defined(_AIX)
--#include <malloc.h>
-- #pragma alloca
--#else /* not MSDOS, __TURBOC__, or _AIX */
--#ifdef __hpux
--#ifdef __cplusplus
--extern "C" {
--void *alloca (unsigned int);
-+/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
-+ symbol of state STATE-NUM. */
-+static const unsigned char yystos[] =
-+{
-+ 0, 23, 0, 4, 5, 6, 8, 11, 12, 13,
-+ 14, 15, 16, 17, 18, 24, 25, 26, 27, 28,
-+ 29, 30, 31, 20, 16, 5, 8, 11, 13, 14,
-+ 17, 4, 5, 8, 10, 11, 12, 13, 14, 15,
-+ 17, 19, 21, 7, 3, 20, 15, 16, 15, 16,
-+ 16, 16, 10, 15, 19, 32, 21, 16, 16, 15,
-+ 32
- };
--#else /* not __cplusplus */
--void *alloca ();
--#endif /* not __cplusplus */
--#endif /* __hpux */
--#endif /* not _AIX */
--#endif /* not MSDOS, or __TURBOC__ */
--#endif /* not sparc. */
--#endif /* not GNU C. */
--#endif /* alloca not defined. */
--
--/* This is the parser code that is written into each bison parser
-- when the %semantic_parser declaration is not specified in the grammar.
-- It was written by Richard Stallman by simplifying the hairy parser
-- used when %semantic_parser is specified. */
--
--/* Note: there must be only one dollar sign in this file.
-- It is replaced by the list of actions, each action
-- as one case of the switch. */
-+
-+#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
-+# define YYSIZE_T __SIZE_TYPE__
-+#endif
-+#if ! defined (YYSIZE_T) && defined (size_t)
-+# define YYSIZE_T size_t
-+#endif
-+#if ! defined (YYSIZE_T)
-+# if defined (__STDC__) || defined (__cplusplus)
-+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
-+# define YYSIZE_T size_t
-+# endif
-+#endif
-+#if ! defined (YYSIZE_T)
-+# define YYSIZE_T unsigned int
-+#endif
-
- #define yyerrok (yyerrstatus = 0)
- #define yyclearin (yychar = YYEMPTY)
--#define YYEMPTY -2
-+#define YYEMPTY (-2)
- #define YYEOF 0
--#define YYACCEPT return(0)
--#define YYABORT return(1)
-+
-+#define YYACCEPT goto yyacceptlab
-+#define YYABORT goto yyabortlab
- #define YYERROR goto yyerrlab1
--/* Like YYERROR except do call yyerror.
-- This remains here temporarily to ease the
-- transition to the new meaning of YYERROR, for GCC.
-+
-+
-+/* Like YYERROR except do call yyerror. This remains here temporarily
-+ to ease the transition to the new meaning of YYERROR, for GCC.
- Once GCC version 2 has supplanted version 1, this can go. */
-+
- #define YYFAIL goto yyerrlab
-+
- #define YYRECOVERING() (!!yyerrstatus)
--#define YYBACKUP(token, value) \
-+
-+#define YYBACKUP(Token, Value) \
- do \
- if (yychar == YYEMPTY && yylen == 1) \
-- { yychar = (token), yylval = (value); \
-- yychar1 = YYTRANSLATE (yychar); \
-+ { \
-+ yychar = (Token); \
-+ yylval = (Value); \
-+ yytoken = YYTRANSLATE (yychar); \
- YYPOPSTACK; \
- goto yybackup; \
- } \
- else \
-- { yyerror ("syntax error: cannot back up"); YYERROR; } \
-+ { \
-+ yyerror ("syntax error: cannot back up");\
-+ YYERROR; \
-+ } \
- while (0)
-
- #define YYTERROR 1
- #define YYERRCODE 256
-
--#ifndef YYPURE
--#define YYLEX yylex()
--#endif
-+/* YYLLOC_DEFAULT -- Compute the default location (before the actions
-+ are run). */
-
--#ifdef YYPURE
--#ifdef YYLSP_NEEDED
--#ifdef YYLEX_PARAM
--#define YYLEX yylex(&yylval, &yylloc, YYLEX_PARAM)
--#else
--#define YYLEX yylex(&yylval, &yylloc)
-+#ifndef YYLLOC_DEFAULT
-+# define YYLLOC_DEFAULT(Current, Rhs, N) \
-+ Current.first_line = Rhs[1].first_line; \
-+ Current.first_column = Rhs[1].first_column; \
-+ Current.last_line = Rhs[N].last_line; \
-+ Current.last_column = Rhs[N].last_column;
- #endif
--#else /* not YYLSP_NEEDED */
-+
-+/* YYLEX -- calling `yylex' with the right arguments. */
-+
- #ifdef YYLEX_PARAM
--#define YYLEX yylex(&yylval, YYLEX_PARAM)
-+# define YYLEX yylex (YYLEX_PARAM)
- #else
--#define YYLEX yylex(&yylval)
--#endif
--#endif /* not YYLSP_NEEDED */
-+# define YYLEX yylex ()
- #endif
-
--/* If nonreentrant, generate the variables here */
-+/* Enable debugging if requested. */
-+#if YYDEBUG
-
--#ifndef YYPURE
-+# ifndef YYFPRINTF
-+# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
-+# define YYFPRINTF fprintf
-+# endif
-
--int yychar; /* the lookahead symbol */
--YYSTYPE yylval; /* the semantic value of the */
-- /* lookahead symbol */
-+# define YYDPRINTF(Args) \
-+do { \
-+ if (yydebug) \
-+ YYFPRINTF Args; \
-+} while (0)
-+
-+# define YYDSYMPRINT(Args) \
-+do { \
-+ if (yydebug) \
-+ yysymprint Args; \
-+} while (0)
-+
-+# define YYDSYMPRINTF(Title, Token, Value, Location) \
-+do { \
-+ if (yydebug) \
-+ { \
-+ YYFPRINTF (stderr, "%s ", Title); \
-+ yysymprint (stderr, \
-+ Token, Value); \
-+ YYFPRINTF (stderr, "\n"); \
-+ } \
-+} while (0)
-+
-+/*------------------------------------------------------------------.
-+| yy_stack_print -- Print the state stack from its BOTTOM up to its |
-+| TOP (cinluded). |
-+`------------------------------------------------------------------*/
-
--#ifdef YYLSP_NEEDED
--YYLTYPE yylloc; /* location data for the lookahead */
-- /* symbol */
-+#if defined (__STDC__) || defined (__cplusplus)
-+static void
-+yy_stack_print (short *bottom, short *top)
-+#else
-+static void
-+yy_stack_print (bottom, top)
-+ short *bottom;
-+ short *top;
- #endif
-+{
-+ YYFPRINTF (stderr, "Stack now");
-+ for (/* Nothing. */; bottom <= top; ++bottom)
-+ YYFPRINTF (stderr, " %d", *bottom);
-+ YYFPRINTF (stderr, "\n");
-+}
-
--int yynerrs; /* number of parse errors so far */
--#endif /* not YYPURE */
-+# define YY_STACK_PRINT(Bottom, Top) \
-+do { \
-+ if (yydebug) \
-+ yy_stack_print ((Bottom), (Top)); \
-+} while (0)
-
--#if YYDEBUG != 0
--int yydebug; /* nonzero means print parse trace */
--/* Since this is uninitialized, it does not stop multiple parsers
-- from coexisting. */
-+
-+/*------------------------------------------------.
-+| Report that the YYRULE is going to be reduced. |
-+`------------------------------------------------*/
-+
-+#if defined (__STDC__) || defined (__cplusplus)
-+static void
-+yy_reduce_print (int yyrule)
-+#else
-+static void
-+yy_reduce_print (yyrule)
-+ int yyrule;
- #endif
-+{
-+ int yyi;
-+ unsigned int yylineno = yyrline[yyrule];
-+ YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
-+ yyrule - 1, yylineno);
-+ /* Print the symbols being reduced, and their result. */
-+ for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
-+ YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
-+ YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
-+}
-
--/* YYINITDEPTH indicates the initial size of the parser's stacks */
-+# define YY_REDUCE_PRINT(Rule) \
-+do { \
-+ if (yydebug) \
-+ yy_reduce_print (Rule); \
-+} while (0)
-+
-+/* Nonzero means print parse trace. It is left uninitialized so that
-+ multiple parsers can coexist. */
-+int yydebug;
-+#else /* !YYDEBUG */
-+# define YYDPRINTF(Args)
-+# define YYDSYMPRINT(Args)
-+# define YYDSYMPRINTF(Title, Token, Value, Location)
-+# define YY_STACK_PRINT(Bottom, Top)
-+# define YY_REDUCE_PRINT(Rule)
-+#endif /* !YYDEBUG */
-
-+
-+/* YYINITDEPTH -- initial size of the parser's stacks. */
- #ifndef YYINITDEPTH
--#define YYINITDEPTH 200
-+# define YYINITDEPTH 200
- #endif
-
--/* YYMAXDEPTH is the maximum size the stacks can grow to
-- (effective only if the built-in stack extension method is used). */
-+/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
-+ if the built-in stack extension method is used).
-+
-+ Do not make this value too large; the results are undefined if
-+ SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
-+ evaluated with infinite-precision integer arithmetic. */
-
- #if YYMAXDEPTH == 0
--#undef YYMAXDEPTH
-+# undef YYMAXDEPTH
- #endif
-
- #ifndef YYMAXDEPTH
--#define YYMAXDEPTH 10000
-+# define YYMAXDEPTH 10000
- #endif
-
--/* Prevent warning if -Wstrict-prototypes. */
--#ifdef __GNUC__
--int yyparse (void);
--#endif
-
--#if __GNUC__ > 1 /* GNU C and GNU C++ define this. */
--#define __yy_memcpy(TO,FROM,COUNT) __builtin_memcpy(TO,FROM,COUNT)
--#else /* not GNU C or C++ */
--#ifndef __cplusplus
-
--/* This is the most reliable way to avoid incompatibilities
-- in available built-in functions on various systems. */
--static void
--__yy_memcpy (to, from, count)
-- char *to;
-- char *from;
-- int count;
--{
-- register char *f = from;
-- register char *t = to;
-- register int i = count;
-+#if YYERROR_VERBOSE
-+
-+# ifndef yystrlen
-+# if defined (__GLIBC__) && defined (_STRING_H)
-+# define yystrlen strlen
-+# else
-+/* Return the length of YYSTR. */
-+static YYSIZE_T
-+# if defined (__STDC__) || defined (__cplusplus)
-+yystrlen (const char *yystr)
-+# else
-+yystrlen (yystr)
-+ const char *yystr;
-+# endif
-+{
-+ register const char *yys = yystr;
-
-- while (i-- > 0)
-- *t++ = *f++;
-+ while (*yys++ != '\0')
-+ continue;
-+
-+ return yys - yystr - 1;
- }
-+# endif
-+# endif
-+
-+# ifndef yystpcpy
-+# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
-+# define yystpcpy stpcpy
-+# else
-+/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
-+ YYDEST. */
-+static char *
-+# if defined (__STDC__) || defined (__cplusplus)
-+yystpcpy (char *yydest, const char *yysrc)
-+# else
-+yystpcpy (yydest, yysrc)
-+ char *yydest;
-+ const char *yysrc;
-+# endif
-+{
-+ register char *yyd = yydest;
-+ register const char *yys = yysrc;
-+
-+ while ((*yyd++ = *yys++) != '\0')
-+ continue;
-+
-+ return yyd - 1;
-+}
-+# endif
-+# endif
-+
-+#endif /* !YYERROR_VERBOSE */
-+
-+
-
--#else /* __cplusplus */
-+#if YYDEBUG
-+/*--------------------------------.
-+| Print this symbol on YYOUTPUT. |
-+`--------------------------------*/
-
--/* This is the most reliable way to avoid incompatibilities
-- in available built-in functions on various systems. */
-+#if defined (__STDC__) || defined (__cplusplus)
- static void
--__yy_memcpy (char *to, char *from, int count)
-+yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
-+#else
-+static void
-+yysymprint (yyoutput, yytype, yyvaluep)
-+ FILE *yyoutput;
-+ int yytype;
-+ YYSTYPE *yyvaluep;
-+#endif
- {
-- register char *f = from;
-- register char *t = to;
-- register int i = count;
-+ /* Pacify ``unused variable'' warnings. */
-+ (void) yyvaluep;
-+
-+ if (yytype < YYNTOKENS)
-+ {
-+ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
-+# ifdef YYPRINT
-+ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
-+# endif
-+ }
-+ else
-+ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
-
-- while (i-- > 0)
-- *t++ = *f++;
-+ switch (yytype)
-+ {
-+ default:
-+ break;
-+ }
-+ YYFPRINTF (yyoutput, ")");
- }
-
-+#endif /* ! YYDEBUG */
-+/*-----------------------------------------------.
-+| Release the memory associated to this symbol. |
-+`-----------------------------------------------*/
-+
-+#if defined (__STDC__) || defined (__cplusplus)
-+static void
-+yydestruct (int yytype, YYSTYPE *yyvaluep)
-+#else
-+static void
-+yydestruct (yytype, yyvaluep)
-+ int yytype;
-+ YYSTYPE *yyvaluep;
- #endif
--#endif
-+{
-+ /* Pacify ``unused variable'' warnings. */
-+ (void) yyvaluep;
-+
-+ switch (yytype)
-+ {
-+
-+ default:
-+ break;
-+ }
-+}
-
--#line 196 "/usr/share/bison.simple"
-
--/* The user can define YYPARSE_PARAM as the name of an argument to be passed
-- into yyparse. The argument should have type void *.
-- It should actually point to an object.
-- Grammar actions can access the variable by casting it
-- to the proper pointer type. */
-+/* Prevent warnings from -Wmissing-prototypes. */
-
- #ifdef YYPARSE_PARAM
--#ifdef __cplusplus
--#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
--#define YYPARSE_PARAM_DECL
--#else /* not __cplusplus */
--#define YYPARSE_PARAM_ARG YYPARSE_PARAM
--#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
--#endif /* not __cplusplus */
--#else /* not YYPARSE_PARAM */
--#define YYPARSE_PARAM_ARG
--#define YYPARSE_PARAM_DECL
--#endif /* not YYPARSE_PARAM */
-+# if defined (__STDC__) || defined (__cplusplus)
-+int yyparse (void *YYPARSE_PARAM);
-+# else
-+int yyparse ();
-+# endif
-+#else /* ! YYPARSE_PARAM */
-+#if defined (__STDC__) || defined (__cplusplus)
-+int yyparse (void);
-+#else
-+int yyparse ();
-+#endif
-+#endif /* ! YYPARSE_PARAM */
-+
-+
-+
-+/* The lookahead symbol. */
-+int yychar;
-+
-+/* The semantic value of the lookahead symbol. */
-+YYSTYPE yylval;
-+
-+/* Number of syntax errors so far. */
-+int yynerrs;
-
-+
-+
-+/*----------.
-+| yyparse. |
-+`----------*/
-+
-+#ifdef YYPARSE_PARAM
-+# if defined (__STDC__) || defined (__cplusplus)
-+int yyparse (void *YYPARSE_PARAM)
-+# else
-+int yyparse (YYPARSE_PARAM)
-+ void *YYPARSE_PARAM;
-+# endif
-+#else /* ! YYPARSE_PARAM */
-+#if defined (__STDC__) || defined (__cplusplus)
-+int
-+yyparse (void)
-+#else
- int
--yyparse(YYPARSE_PARAM_ARG)
-- YYPARSE_PARAM_DECL
-+yyparse ()
-+
-+#endif
-+#endif
- {
-+
- register int yystate;
- register int yyn;
-+ int yyresult;
-+ /* Number of tokens to shift before error messages enabled. */
-+ int yyerrstatus;
-+ /* Lookahead token as an internal (translated) token number. */
-+ int yytoken = 0;
-+
-+ /* Three stacks and their tools:
-+ `yyss': related to states,
-+ `yyvs': related to semantic values,
-+ `yyls': related to locations.
-+
-+ Refer to the stacks thru separate pointers, to allow yyoverflow
-+ to reallocate them elsewhere. */
-+
-+ /* The state stack. */
-+ short yyssa[YYINITDEPTH];
-+ short *yyss = yyssa;
- register short *yyssp;
-- register YYSTYPE *yyvsp;
-- int yyerrstatus; /* number of tokens to shift before error messages enabled */
-- int yychar1 = 0; /* lookahead token as an internal (translated) token number */
-
-- short yyssa[YYINITDEPTH]; /* the state stack */
-- YYSTYPE yyvsa[YYINITDEPTH]; /* the semantic value stack */
-+ /* The semantic value stack. */
-+ YYSTYPE yyvsa[YYINITDEPTH];
-+ YYSTYPE *yyvs = yyvsa;
-+ register YYSTYPE *yyvsp;
-
-- short *yyss = yyssa; /* refer to the stacks thru separate pointers */
-- YYSTYPE *yyvs = yyvsa; /* to allow yyoverflow to reallocate them elsewhere */
-
--#ifdef YYLSP_NEEDED
-- YYLTYPE yylsa[YYINITDEPTH]; /* the location stack */
-- YYLTYPE *yyls = yylsa;
-- YYLTYPE *yylsp;
-
--#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
--#else
- #define YYPOPSTACK (yyvsp--, yyssp--)
--#endif
-
-- int yystacksize = YYINITDEPTH;
-+ YYSIZE_T yystacksize = YYINITDEPTH;
-
--#ifdef YYPURE
-- int yychar;
-- YYSTYPE yylval;
-- int yynerrs;
--#ifdef YYLSP_NEEDED
-- YYLTYPE yylloc;
--#endif
--#endif
-+ /* The variables used to return semantic value and location from the
-+ action routines. */
-+ YYSTYPE yyval;
-
-- YYSTYPE yyval; /* the variable used to return */
-- /* semantic values from the action */
-- /* routines */
-
-+ /* When reducing, the number of symbols on the RHS of the reduced
-+ rule. */
- int yylen;
-
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Starting parse\n");
--#endif
-+ YYDPRINTF ((stderr, "Starting parse\n"));
-
- yystate = 0;
- yyerrstatus = 0;
-@@ -637,96 +1040,96 @@
- so that they stay on the same level as the state stack.
- The wasted elements are never initialized. */
-
-- yyssp = yyss - 1;
-+ yyssp = yyss;
- yyvsp = yyvs;
--#ifdef YYLSP_NEEDED
-- yylsp = yyls;
--#endif
-
--/* Push a new state, which is found in yystate . */
--/* In all cases, when you get here, the value and location stacks
-- have just been pushed. so pushing a state here evens the stacks. */
--yynewstate:
-+ goto yysetstate;
-
-- *++yyssp = yystate;
-+/*------------------------------------------------------------.
-+| yynewstate -- Push a new state, which is found in yystate. |
-+`------------------------------------------------------------*/
-+ yynewstate:
-+ /* In all cases, when you get here, the value and location stacks
-+ have just been pushed. so pushing a state here evens the stacks.
-+ */
-+ yyssp++;
-
-- if (yyssp >= yyss + yystacksize - 1)
-- {
-- /* Give user a chance to reallocate the stack */
-- /* Use copies of these so that the &'s don't force the real ones into memory. */
-- YYSTYPE *yyvs1 = yyvs;
-- short *yyss1 = yyss;
--#ifdef YYLSP_NEEDED
-- YYLTYPE *yyls1 = yyls;
--#endif
-+ yysetstate:
-+ *yyssp = yystate;
-
-+ if (yyss + yystacksize - 1 <= yyssp)
-+ {
- /* Get the current used size of the three stacks, in elements. */
-- int size = yyssp - yyss + 1;
-+ YYSIZE_T yysize = yyssp - yyss + 1;
-
- #ifdef yyoverflow
-- /* Each stack pointer address is followed by the size of
-- the data in use in that stack, in bytes. */
--#ifdef YYLSP_NEEDED
-- /* This used to be a conditional around just the two extra args,
-- but that might be undefined if yyoverflow is a macro. */
-- yyoverflow("parser stack overflow",
-- &yyss1, size * sizeof (*yyssp),
-- &yyvs1, size * sizeof (*yyvsp),
-- &yyls1, size * sizeof (*yylsp),
-- &yystacksize);
--#else
-- yyoverflow("parser stack overflow",
-- &yyss1, size * sizeof (*yyssp),
-- &yyvs1, size * sizeof (*yyvsp),
-- &yystacksize);
--#endif
-+ {
-+ /* Give user a chance to reallocate the stack. Use copies of
-+ these so that the &'s don't force the real ones into
-+ memory. */
-+ YYSTYPE *yyvs1 = yyvs;
-+ short *yyss1 = yyss;
-+
-+
-+ /* Each stack pointer address is followed by the size of the
-+ data in use in that stack, in bytes. This used to be a
-+ conditional around just the two extra args, but that might
-+ be undefined if yyoverflow is a macro. */
-+ yyoverflow ("parser stack overflow",
-+ &yyss1, yysize * sizeof (*yyssp),
-+ &yyvs1, yysize * sizeof (*yyvsp),
-
-- yyss = yyss1; yyvs = yyvs1;
--#ifdef YYLSP_NEEDED
-- yyls = yyls1;
--#endif
-+ &yystacksize);
-+
-+ yyss = yyss1;
-+ yyvs = yyvs1;
-+ }
- #else /* no yyoverflow */
-+# ifndef YYSTACK_RELOCATE
-+ goto yyoverflowlab;
-+# else
- /* Extend the stack our own way. */
-- if (yystacksize >= YYMAXDEPTH)
-- {
-- yyerror("parser stack overflow");
-- return 2;
-- }
-+ if (YYMAXDEPTH <= yystacksize)
-+ goto yyoverflowlab;
- yystacksize *= 2;
-- if (yystacksize > YYMAXDEPTH)
-+ if (YYMAXDEPTH < yystacksize)
- yystacksize = YYMAXDEPTH;
-- yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
-- __yy_memcpy ((char *)yyss, (char *)yyss1, size * sizeof (*yyssp));
-- yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
-- __yy_memcpy ((char *)yyvs, (char *)yyvs1, size * sizeof (*yyvsp));
--#ifdef YYLSP_NEEDED
-- yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
-- __yy_memcpy ((char *)yyls, (char *)yyls1, size * sizeof (*yylsp));
--#endif
-+
-+ {
-+ short *yyss1 = yyss;
-+ union yyalloc *yyptr =
-+ (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
-+ if (! yyptr)
-+ goto yyoverflowlab;
-+ YYSTACK_RELOCATE (yyss);
-+ YYSTACK_RELOCATE (yyvs);
-+
-+# undef YYSTACK_RELOCATE
-+ if (yyss1 != yyssa)
-+ YYSTACK_FREE (yyss1);
-+ }
-+# endif
- #endif /* no yyoverflow */
-
-- yyssp = yyss + size - 1;
-- yyvsp = yyvs + size - 1;
--#ifdef YYLSP_NEEDED
-- yylsp = yyls + size - 1;
--#endif
-+ yyssp = yyss + yysize - 1;
-+ yyvsp = yyvs + yysize - 1;
-
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Stack size increased to %d\n", yystacksize);
--#endif
-
-- if (yyssp >= yyss + yystacksize - 1)
-+ YYDPRINTF ((stderr, "Stack size increased to %lu\n",
-+ (unsigned long int) yystacksize));
-+
-+ if (yyss + yystacksize - 1 <= yyssp)
- YYABORT;
- }
-
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Entering state %d\n", yystate);
--#endif
-+ YYDPRINTF ((stderr, "Entering state %d\n", yystate));
-
- goto yybackup;
-- yybackup:
-+
-+/*-----------.
-+| yybackup. |
-+`-----------*/
-+yybackup:
-
- /* Do appropriate processing given the current state. */
- /* Read a lookahead token if we need one and don't already have one. */
-@@ -735,183 +1138,154 @@
- /* First try to decide what to do without reference to lookahead token. */
-
- yyn = yypact[yystate];
-- if (yyn == YYFLAG)
-+ if (yyn == YYPACT_NINF)
- goto yydefault;
-
- /* Not known => get a lookahead token if don't already have one. */
-
-- /* yychar is either YYEMPTY or YYEOF
-- or a valid token in external form. */
--
-+ /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
- if (yychar == YYEMPTY)
- {
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Reading a token: ");
--#endif
-+ YYDPRINTF ((stderr, "Reading a token: "));
- yychar = YYLEX;
- }
-
-- /* Convert token to internal form (in yychar1) for indexing tables with */
--
-- if (yychar <= 0) /* This means end of input. */
-+ if (yychar <= YYEOF)
- {
-- yychar1 = 0;
-- yychar = YYEOF; /* Don't call YYLEX any more */
--
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Now at end of input.\n");
--#endif
-+ yychar = yytoken = YYEOF;
-+ YYDPRINTF ((stderr, "Now at end of input.\n"));
- }
- else
- {
-- yychar1 = YYTRANSLATE(yychar);
--
--#if YYDEBUG != 0
-- if (yydebug)
-- {
-- fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
-- /* Give the individual parser a way to print the precise meaning
-- of a token, for further debugging info. */
--#ifdef YYPRINT
-- YYPRINT (stderr, yychar, yylval);
--#endif
-- fprintf (stderr, ")\n");
-- }
--#endif
-+ yytoken = YYTRANSLATE (yychar);
-+ YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);
- }
-
-- yyn += yychar1;
-- if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
-+ /* If the proper action on seeing token YYTOKEN is to reduce or to
-+ detect an error, take that action. */
-+ yyn += yytoken;
-+ if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
- goto yydefault;
--
- yyn = yytable[yyn];
--
-- /* yyn is what to do for this token type in this state.
-- Negative => reduce, -yyn is rule number.
-- Positive => shift, yyn is new state.
-- New state is final state => don't bother to shift,
-- just return success.
-- 0, or most negative number => error. */
--
-- if (yyn < 0)
-+ if (yyn <= 0)
- {
-- if (yyn == YYFLAG)
-+ if (yyn == 0 || yyn == YYTABLE_NINF)
- goto yyerrlab;
- yyn = -yyn;
- goto yyreduce;
- }
-- else if (yyn == 0)
-- goto yyerrlab;
-
- if (yyn == YYFINAL)
- YYACCEPT;
-
- /* Shift the lookahead token. */
--
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
--#endif
-+ YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));
-
- /* Discard the token being shifted unless it is eof. */
- if (yychar != YYEOF)
- yychar = YYEMPTY;
-
- *++yyvsp = yylval;
--#ifdef YYLSP_NEEDED
-- *++yylsp = yylloc;
--#endif
-
-- /* count tokens shifted since error; after three, turn off error status. */
-- if (yyerrstatus) yyerrstatus--;
-+
-+ /* Count tokens shifted since error; after three, turn off error
-+ status. */
-+ if (yyerrstatus)
-+ yyerrstatus--;
-
- yystate = yyn;
- goto yynewstate;
-
--/* Do the default action for the current state. */
--yydefault:
-
-+/*-----------------------------------------------------------.
-+| yydefault -- do the default action for the current state. |
-+`-----------------------------------------------------------*/
-+yydefault:
- yyn = yydefact[yystate];
- if (yyn == 0)
- goto yyerrlab;
-+ goto yyreduce;
-+
-
--/* Do a reduction. yyn is the number of a rule to reduce with. */
-+/*-----------------------------.
-+| yyreduce -- Do a reduction. |
-+`-----------------------------*/
- yyreduce:
-+ /* yyn is the number of a rule to reduce with. */
- yylen = yyr2[yyn];
-- if (yylen > 0)
-- yyval = yyvsp[1-yylen]; /* implement default value of the action */
--
--#if YYDEBUG != 0
-- if (yydebug)
-- {
-- int i;
-
-- fprintf (stderr, "Reducing via rule %d (line %d), ",
-- yyn, yyrline[yyn]);
--
-- /* Print the symbols being reduced, and their result. */
-- for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
-- fprintf (stderr, "%s ", yytname[yyrhs[i]]);
-- fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
-- }
--#endif
-+ /* If YYLEN is nonzero, implement the default value of the action:
-+ `$$ = $1'.
-
-+ Otherwise, the following line sets YYVAL to garbage.
-+ This behavior is undocumented and Bison
-+ users should not rely upon it. Assigning to YYVAL
-+ unconditionally makes the parser a bit smaller, and it avoids a
-+ GCC warning that YYVAL may be used uninitialized. */
-+ yyval = yyvsp[1-yylen];
-
-- switch (yyn) {
-
--case 3:
-+ YY_REDUCE_PRINT (yyn);
-+ switch (yyn)
-+ {
-+ case 4:
- #line 195 "getdate.y"
--{
-+ {
- yyHaveTime++;
-- ;
-- break;}
--case 4:
-+ }
-+ break;
-+
-+ case 5:
- #line 198 "getdate.y"
--{
-+ {
- yyHaveZone++;
-- ;
-- break;}
--case 5:
-+ }
-+ break;
-+
-+ case 6:
- #line 201 "getdate.y"
--{
-+ {
- yyHaveDate++;
-- ;
-- break;}
--case 6:
-+ }
-+ break;
-+
-+ case 7:
- #line 204 "getdate.y"
--{
-+ {
- yyHaveDay++;
-- ;
-- break;}
--case 7:
-+ }
-+ break;
-+
-+ case 8:
- #line 207 "getdate.y"
--{
-+ {
- yyHaveRel++;
-- ;
-- break;}
--case 9:
-+ }
-+ break;
-+
-+ case 10:
- #line 213 "getdate.y"
--{
-+ {
- yyHour = yyvsp[-1].Number;
- yyMinutes = 0;
- yySeconds = 0;
- yyMeridian = yyvsp[0].Meridian;
-- ;
-- break;}
--case 10:
-+ }
-+ break;
-+
-+ case 11:
- #line 219 "getdate.y"
--{
-+ {
- yyHour = yyvsp[-3].Number;
- yyMinutes = yyvsp[-1].Number;
- yySeconds = 0;
- yyMeridian = yyvsp[0].Meridian;
-- ;
-- break;}
--case 11:
-+ }
-+ break;
-+
-+ case 12:
- #line 225 "getdate.y"
--{
-+ {
- yyHour = yyvsp[-3].Number;
- yyMinutes = yyvsp[-1].Number;
- yyMeridian = MER24;
-@@ -919,20 +1293,22 @@
- yyTimezone = (yyvsp[0].Number < 0
- ? -yyvsp[0].Number % 100 + (-yyvsp[0].Number / 100) * 60
- : - (yyvsp[0].Number % 100 + (yyvsp[0].Number / 100) * 60));
-- ;
-- break;}
--case 12:
-+ }
-+ break;
-+
-+ case 13:
- #line 234 "getdate.y"
--{
-+ {
- yyHour = yyvsp[-5].Number;
- yyMinutes = yyvsp[-3].Number;
- yySeconds = yyvsp[-1].Number;
- yyMeridian = yyvsp[0].Meridian;
-- ;
-- break;}
--case 13:
-+ }
-+ break;
-+
-+ case 14:
- #line 240 "getdate.y"
--{
-+ {
- yyHour = yyvsp[-5].Number;
- yyMinutes = yyvsp[-3].Number;
- yySeconds = yyvsp[-1].Number;
-@@ -941,57 +1317,65 @@
- yyTimezone = (yyvsp[0].Number < 0
- ? -yyvsp[0].Number % 100 + (-yyvsp[0].Number / 100) * 60
- : - (yyvsp[0].Number % 100 + (yyvsp[0].Number / 100) * 60));
-- ;
-- break;}
--case 14:
-+ }
-+ break;
-+
-+ case 15:
- #line 252 "getdate.y"
--{
-+ {
- yyTimezone = yyvsp[0].Number;
-- ;
-- break;}
--case 15:
-+ }
-+ break;
-+
-+ case 16:
- #line 255 "getdate.y"
--{
-+ {
- yyTimezone = yyvsp[0].Number - 60;
-- ;
-- break;}
--case 16:
-+ }
-+ break;
-+
-+ case 17:
- #line 259 "getdate.y"
--{
-+ {
- yyTimezone = yyvsp[-1].Number - 60;
-- ;
-- break;}
--case 17:
-+ }
-+ break;
-+
-+ case 18:
- #line 264 "getdate.y"
--{
-+ {
- yyDayOrdinal = 1;
- yyDayNumber = yyvsp[0].Number;
-- ;
-- break;}
--case 18:
-+ }
-+ break;
-+
-+ case 19:
- #line 268 "getdate.y"
--{
-+ {
- yyDayOrdinal = 1;
- yyDayNumber = yyvsp[-1].Number;
-- ;
-- break;}
--case 19:
-+ }
-+ break;
-+
-+ case 20:
- #line 272 "getdate.y"
--{
-+ {
- yyDayOrdinal = yyvsp[-1].Number;
- yyDayNumber = yyvsp[0].Number;
-- ;
-- break;}
--case 20:
-+ }
-+ break;
-+
-+ case 21:
- #line 278 "getdate.y"
--{
-+ {
- yyMonth = yyvsp[-2].Number;
- yyDay = yyvsp[0].Number;
-- ;
-- break;}
--case 21:
-+ }
-+ break;
-+
-+ case 22:
- #line 282 "getdate.y"
--{
-+ {
- /* Interpret as YYYY/MM/DD if $1 >= 1000, otherwise as MM/DD/YY.
- The goal in recognizing YYYY/MM/DD is solely to support legacy
- machine-generated dates like those in an RCS log listing. If
-@@ -1008,178 +1392,204 @@
- yyDay = yyvsp[-2].Number;
- yyYear = yyvsp[0].Number;
- }
-- ;
-- break;}
--case 22:
-+ }
-+ break;
-+
-+ case 23:
- #line 300 "getdate.y"
--{
-+ {
- /* ISO 8601 format. yyyy-mm-dd. */
- yyYear = yyvsp[-2].Number;
- yyMonth = -yyvsp[-1].Number;
- yyDay = -yyvsp[0].Number;
-- ;
-- break;}
--case 23:
-+ }
-+ break;
-+
-+ case 24:
- #line 306 "getdate.y"
--{
-+ {
- /* e.g. 17-JUN-1992. */
- yyDay = yyvsp[-2].Number;
- yyMonth = yyvsp[-1].Number;
- yyYear = -yyvsp[0].Number;
-- ;
-- break;}
--case 24:
-+ }
-+ break;
-+
-+ case 25:
- #line 312 "getdate.y"
--{
-+ {
- yyMonth = yyvsp[-1].Number;
- yyDay = yyvsp[0].Number;
-- ;
-- break;}
--case 25:
-+ }
-+ break;
-+
-+ case 26:
- #line 316 "getdate.y"
--{
-+ {
- yyMonth = yyvsp[-3].Number;
- yyDay = yyvsp[-2].Number;
- yyYear = yyvsp[0].Number;
-- ;
-- break;}
--case 26:
-+ }
-+ break;
-+
-+ case 27:
- #line 321 "getdate.y"
--{
-+ {
- yyMonth = yyvsp[0].Number;
- yyDay = yyvsp[-1].Number;
-- ;
-- break;}
--case 27:
-+ }
-+ break;
-+
-+ case 28:
- #line 325 "getdate.y"
--{
-+ {
- yyMonth = yyvsp[-1].Number;
- yyDay = yyvsp[-2].Number;
- yyYear = yyvsp[0].Number;
-- ;
-- break;}
--case 28:
-+ }
-+ break;
-+
-+ case 29:
- #line 332 "getdate.y"
--{
-+ {
- yyRelSeconds = -yyRelSeconds;
- yyRelMinutes = -yyRelMinutes;
- yyRelHour = -yyRelHour;
- yyRelDay = -yyRelDay;
- yyRelMonth = -yyRelMonth;
- yyRelYear = -yyRelYear;
-- ;
-- break;}
--case 30:
-+ }
-+ break;
-+
-+ case 31:
- #line 343 "getdate.y"
--{
-+ {
- yyRelYear += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 31:
-+ }
-+ break;
-+
-+ case 32:
- #line 346 "getdate.y"
--{
-+ {
- yyRelYear += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 32:
-+ }
-+ break;
-+
-+ case 33:
- #line 349 "getdate.y"
--{
-+ {
- yyRelYear++;
-- ;
-- break;}
--case 33:
-+ }
-+ break;
-+
-+ case 34:
- #line 352 "getdate.y"
--{
-+ {
- yyRelMonth += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 34:
-+ }
-+ break;
-+
-+ case 35:
- #line 355 "getdate.y"
--{
-+ {
- yyRelMonth += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 35:
-+ }
-+ break;
-+
-+ case 36:
- #line 358 "getdate.y"
--{
-+ {
- yyRelMonth++;
-- ;
-- break;}
--case 36:
-+ }
-+ break;
-+
-+ case 37:
- #line 361 "getdate.y"
--{
-+ {
- yyRelDay += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 37:
-+ }
-+ break;
-+
-+ case 38:
- #line 364 "getdate.y"
--{
-+ {
- yyRelDay += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 38:
-+ }
-+ break;
-+
-+ case 39:
- #line 367 "getdate.y"
--{
-+ {
- yyRelDay++;
-- ;
-- break;}
--case 39:
-+ }
-+ break;
-+
-+ case 40:
- #line 370 "getdate.y"
--{
-+ {
- yyRelHour += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 40:
-+ }
-+ break;
-+
-+ case 41:
- #line 373 "getdate.y"
--{
-+ {
- yyRelHour += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 41:
-+ }
-+ break;
-+
-+ case 42:
- #line 376 "getdate.y"
--{
-+ {
- yyRelHour++;
-- ;
-- break;}
--case 42:
-+ }
-+ break;
-+
-+ case 43:
- #line 379 "getdate.y"
--{
-+ {
- yyRelMinutes += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 43:
-+ }
-+ break;
-+
-+ case 44:
- #line 382 "getdate.y"
--{
-+ {
- yyRelMinutes += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 44:
-+ }
-+ break;
-+
-+ case 45:
- #line 385 "getdate.y"
--{
-+ {
- yyRelMinutes++;
-- ;
-- break;}
--case 45:
-+ }
-+ break;
-+
-+ case 46:
- #line 388 "getdate.y"
--{
-+ {
- yyRelSeconds += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 46:
-+ }
-+ break;
-+
-+ case 47:
- #line 391 "getdate.y"
--{
-+ {
- yyRelSeconds += yyvsp[-1].Number * yyvsp[0].Number;
-- ;
-- break;}
--case 47:
-+ }
-+ break;
-+
-+ case 48:
- #line 394 "getdate.y"
--{
-+ {
- yyRelSeconds++;
-- ;
-- break;}
--case 48:
-+ }
-+ break;
-+
-+ case 49:
- #line 400 "getdate.y"
--{
-+ {
- if (yyHaveTime && yyHaveDate && !yyHaveRel)
- yyYear = yyvsp[0].Number;
- else
-@@ -1208,218 +1618,221 @@
- yyMeridian = MER24;
- }
- }
-- ;
-- break;}
--case 49:
-+ }
-+ break;
-+
-+ case 50:
- #line 433 "getdate.y"
--{
-+ {
- yyval.Meridian = MER24;
-- ;
-- break;}
--case 50:
-+ }
-+ break;
-+
-+ case 51:
- #line 437 "getdate.y"
--{
-+ {
- yyval.Meridian = yyvsp[0].Meridian;
-- ;
-- break;}
--}
-- /* the action file gets copied in in place of this dollarsign */
--#line 498 "/usr/share/bison.simple"
-+ }
-+ break;
-+
-+
-+ }
-+
-+/* Line 999 of yacc.c. */
-+#line 1643 "getdate.c"
-
- yyvsp -= yylen;
- yyssp -= yylen;
--#ifdef YYLSP_NEEDED
-- yylsp -= yylen;
--#endif
-
--#if YYDEBUG != 0
-- if (yydebug)
-- {
-- short *ssp1 = yyss - 1;
-- fprintf (stderr, "state stack now");
-- while (ssp1 != yyssp)
-- fprintf (stderr, " %d", *++ssp1);
-- fprintf (stderr, "\n");
-- }
--#endif
-+
-+ YY_STACK_PRINT (yyss, yyssp);
-
- *++yyvsp = yyval;
-
--#ifdef YYLSP_NEEDED
-- yylsp++;
-- if (yylen == 0)
-- {
-- yylsp->first_line = yylloc.first_line;
-- yylsp->first_column = yylloc.first_column;
-- yylsp->last_line = (yylsp-1)->last_line;
-- yylsp->last_column = (yylsp-1)->last_column;
-- yylsp->text = 0;
-- }
-- else
-- {
-- yylsp->last_line = (yylsp+yylen-1)->last_line;
-- yylsp->last_column = (yylsp+yylen-1)->last_column;
-- }
--#endif
-
-- /* Now "shift" the result of the reduction.
-- Determine what state that goes to,
-- based on the state we popped back to
-- and the rule number reduced by. */
-+ /* Now `shift' the result of the reduction. Determine what state
-+ that goes to, based on the state we popped back to and the rule
-+ number reduced by. */
-
- yyn = yyr1[yyn];
-
-- yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
-- if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
-+ yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
-+ if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
- yystate = yytable[yystate];
- else
-- yystate = yydefgoto[yyn - YYNTBASE];
-+ yystate = yydefgoto[yyn - YYNTOKENS];
-
- goto yynewstate;
-
--yyerrlab: /* here on detecting error */
-
-- if (! yyerrstatus)
-- /* If not already recovering from an error, report this error. */
-+/*------------------------------------.
-+| yyerrlab -- here on detecting error |
-+`------------------------------------*/
-+yyerrlab:
-+ /* If not already recovering from an error, report this error. */
-+ if (!yyerrstatus)
- {
- ++yynerrs;
--
--#ifdef YYERROR_VERBOSE
-+#if YYERROR_VERBOSE
- yyn = yypact[yystate];
-
-- if (yyn > YYFLAG && yyn < YYLAST)
-+ if (YYPACT_NINF < yyn && yyn < YYLAST)
- {
-- int size = 0;
-- char *msg;
-- int x, count;
--
-- count = 0;
-- /* Start X at -yyn if nec to avoid negative indexes in yycheck. */
-- for (x = (yyn < 0 ? -yyn : 0);
-- x < (sizeof(yytname) / sizeof(char *)); x++)
-- if (yycheck[x + yyn] == x)
-- size += strlen(yytname[x]) + 15, count++;
-- msg = (char *) malloc(size + 15);
-- if (msg != 0)
-+ YYSIZE_T yysize = 0;
-+ int yytype = YYTRANSLATE (yychar);
-+ char *yymsg;
-+ int yyx, yycount;
-+
-+ yycount = 0;
-+ /* Start YYX at -YYN if negative to avoid negative indexes in
-+ YYCHECK. */
-+ for (yyx = yyn < 0 ? -yyn : 0;
-+ yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)
-+ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
-+ yysize += yystrlen (yytname[yyx]) + 15, yycount++;
-+ yysize += yystrlen ("syntax error, unexpected ") + 1;
-+ yysize += yystrlen (yytname[yytype]);
-+ yymsg = (char *) YYSTACK_ALLOC (yysize);
-+ if (yymsg != 0)
- {
-- strcpy(msg, "parse error");
-+ char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");
-+ yyp = yystpcpy (yyp, yytname[yytype]);
-
-- if (count < 5)
-+ if (yycount < 5)
- {
-- count = 0;
-- for (x = (yyn < 0 ? -yyn : 0);
-- x < (sizeof(yytname) / sizeof(char *)); x++)
-- if (yycheck[x + yyn] == x)
-+ yycount = 0;
-+ for (yyx = yyn < 0 ? -yyn : 0;
-+ yyx < (int) (sizeof (yytname) / sizeof (char *));
-+ yyx++)
-+ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
- {
-- strcat(msg, count == 0 ? ", expecting `" : " or `");
-- strcat(msg, yytname[x]);
-- strcat(msg, "'");
-- count++;
-+ const char *yyq = ! yycount ? ", expecting " : " or ";
-+ yyp = yystpcpy (yyp, yyq);
-+ yyp = yystpcpy (yyp, yytname[yyx]);
-+ yycount++;
- }
- }
-- yyerror(msg);
-- free(msg);
-+ yyerror (yymsg);
-+ YYSTACK_FREE (yymsg);
- }
- else
-- yyerror ("parse error; also virtual memory exceeded");
-+ yyerror ("syntax error; also virtual memory exhausted");
- }
- else
- #endif /* YYERROR_VERBOSE */
-- yyerror("parse error");
-+ yyerror ("syntax error");
- }
-
-- goto yyerrlab1;
--yyerrlab1: /* here on error raised explicitly by an action */
-+
-
- if (yyerrstatus == 3)
- {
-- /* if just tried and failed to reuse lookahead token after an error, discard it. */
-+ /* If just tried and failed to reuse lookahead token after an
-+ error, discard it. */
-
-- /* return failure if at end of input */
-+ /* Return failure if at end of input. */
- if (yychar == YYEOF)
-- YYABORT;
--
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Discarding token %d (%s).\n", yychar, yytname[yychar1]);
--#endif
-+ {
-+ /* Pop the error token. */
-+ YYPOPSTACK;
-+ /* Pop the rest of the stack. */
-+ while (yyss < yyssp)
-+ {
-+ YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
-+ yydestruct (yystos[*yyssp], yyvsp);
-+ YYPOPSTACK;
-+ }
-+ YYABORT;
-+ }
-
-+ YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);
-+ yydestruct (yytoken, &yylval);
- yychar = YYEMPTY;
-- }
--
-- /* Else will try to reuse lookahead token
-- after shifting the error token. */
-
-- yyerrstatus = 3; /* Each real token shifted decrements this */
--
-- goto yyerrhandle;
--
--yyerrdefault: /* current state does not do anything special for the error token. */
-+ }
-
--#if 0
-- /* This is wrong; only states that explicitly want error tokens
-- should shift them. */
-- yyn = yydefact[yystate]; /* If its default is to accept any token, ok. Otherwise pop it.*/
-- if (yyn) goto yydefault;
--#endif
-+ /* Else will try to reuse lookahead token after shifting the error
-+ token. */
-+ goto yyerrlab1;
-
--yyerrpop: /* pop the current state because it cannot handle the error token */
-
-- if (yyssp == yyss) YYABORT;
-- yyvsp--;
-- yystate = *--yyssp;
--#ifdef YYLSP_NEEDED
-- yylsp--;
--#endif
-+/*----------------------------------------------------.
-+| yyerrlab1 -- error raised explicitly by an action. |
-+`----------------------------------------------------*/
-+yyerrlab1:
-+ yyerrstatus = 3; /* Each real token shifted decrements this. */
-
--#if YYDEBUG != 0
-- if (yydebug)
-+ for (;;)
- {
-- short *ssp1 = yyss - 1;
-- fprintf (stderr, "Error: state stack now");
-- while (ssp1 != yyssp)
-- fprintf (stderr, " %d", *++ssp1);
-- fprintf (stderr, "\n");
-- }
--#endif
--
--yyerrhandle:
-+ yyn = yypact[yystate];
-+ if (yyn != YYPACT_NINF)
-+ {
-+ yyn += YYTERROR;
-+ if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
-+ {
-+ yyn = yytable[yyn];
-+ if (0 < yyn)
-+ break;
-+ }
-+ }
-
-- yyn = yypact[yystate];
-- if (yyn == YYFLAG)
-- goto yyerrdefault;
-+ /* Pop the current state because it cannot handle the error token. */
-+ if (yyssp == yyss)
-+ YYABORT;
-
-- yyn += YYTERROR;
-- if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
-- goto yyerrdefault;
-+ YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
-+ yydestruct (yystos[yystate], yyvsp);
-+ yyvsp--;
-+ yystate = *--yyssp;
-
-- yyn = yytable[yyn];
-- if (yyn < 0)
-- {
-- if (yyn == YYFLAG)
-- goto yyerrpop;
-- yyn = -yyn;
-- goto yyreduce;
-+ YY_STACK_PRINT (yyss, yyssp);
- }
-- else if (yyn == 0)
-- goto yyerrpop;
-
- if (yyn == YYFINAL)
- YYACCEPT;
-
--#if YYDEBUG != 0
-- if (yydebug)
-- fprintf(stderr, "Shifting error token, ");
--#endif
-+ YYDPRINTF ((stderr, "Shifting error token, "));
-
- *++yyvsp = yylval;
--#ifdef YYLSP_NEEDED
-- *++yylsp = yylloc;
--#endif
-+
-
- yystate = yyn;
- goto yynewstate;
-+
-+
-+/*-------------------------------------.
-+| yyacceptlab -- YYACCEPT comes here. |
-+`-------------------------------------*/
-+yyacceptlab:
-+ yyresult = 0;
-+ goto yyreturn;
-+
-+/*-----------------------------------.
-+| yyabortlab -- YYABORT comes here. |
-+`-----------------------------------*/
-+yyabortlab:
-+ yyresult = 1;
-+ goto yyreturn;
-+
-+#ifndef yyoverflow
-+/*----------------------------------------------.
-+| yyoverflowlab -- parser overflow comes here. |
-+`----------------------------------------------*/
-+yyoverflowlab:
-+ yyerror ("parser stack overflow");
-+ yyresult = 2;
-+ /* Fall through. */
-+#endif
-+
-+yyreturn:
-+#ifndef yyoverflow
-+ if (yyss != yyssa)
-+ YYSTACK_FREE (yyss);
-+#endif
-+ return yyresult;
- }
-+
-+
- #line 442 "getdate.y"
-
-
-@@ -2004,3 +2417,5 @@
- /* NOTREACHED */
- }
- #endif /* defined (TEST) */
-+
-+
Deleted: branches/experimental/debian/patches/443_man_it_Makefile.am
===================================================================
--- branches/experimental/debian/patches/443_man_it_Makefile.am 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/443_man_it_Makefile.am 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,19 +0,0 @@
-Goal: fix Italian man pages distribution
- (man_MANS was commented out, due to a trailing \)
-
-Status wrt upstream: has been applied
-
-Index: shadow-4.0.11.1/man/it/Makefile.am
-===================================================================
---- shadow-4.0.11.1.orig/man/it/Makefile.am 2005-07-10 19:34:41.000000000 +0200
-+++ shadow-4.0.11.1/man/it/Makefile.am 2005-07-26 00:17:16.000000000 +0200
-@@ -2,9 +2,6 @@
-
- mandir = @mandir@/it
-
--# Links to missing pages:
--# grpconv.8 \
--# grpunconv.8 \
- man_MANS = \
- chage.1 \
- chfn.1 \
Deleted: branches/experimental/debian/patches/444_missing_Italian_manpages
===================================================================
--- branches/experimental/debian/patches/444_missing_Italian_manpages 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/444_missing_Italian_manpages 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,2761 +0,0 @@
-Goal: add Italian man pages missing from upstream release.
- (the man pages are in the upstream CVS)
-
-Status wrt upstream: No more needed as 443 was applied.
-
-Index: shadow-4.0.10/man/it/chage.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/chage.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,105 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: chage.1,v 1.1 2005/04/21 21:03:15 kloczek Exp $
-+.\" 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 NOME
-+chage \- cambia le informazioni sulla scadenza della password
-+.SH SINTASSI
-+.TP 6
-+\fBchage\fP [\fB\-m\fP \fIgg_min\fP] [\fB\-M\fP \fIgg_max\fP] [\fB\-d\fP \fIultimo_giorno\fP] [\fB\-I\fP \fIinattività\fP]
-+[\fB\-E\fP \fIdata_scadenza\fP] [\fB\-W\fP \fIgg_avviso\fP] \fIutente\fP
-+.TP 6
-+\fBchage\fP \fB\-l\fP \fIutente\fP
-+.SH DESCRIZIONE
-+\fBchage\fP modifica il numero minimo di giorni tra i cambi di password e la
-+data dell'ultimo cambio. Queste informazioni sono usate dal sistema per
-+determinare quando un utente deve cambiare la propria password.
-+.PP
-+L'uso del comando \fBchage\fP è permesso solo all'utente root, tranne per
-+l'opzione \fB\-l\fP, che può essere usata da un utente non privilegiato per
-+conoscere la scadenza della propria password o dell'account.
-+.SH OPZIONI
-+Il comando \fBchage\fP accetta le seguenti opzioni:
-+.IP "\fB\-d\fP \fIultimo_giorno\fP"
-+Imposta la data dell'ultimo cambio della password, espressa come il numero
-+di giorni trascorsi dal 1 gennaio 1970. La data può anche essere
-+specificata nel formato AAAA\-MM\-GG o nella notazione comunemente usata nel
-+proprio paese.
-+.IP "\fB\-E\fP \fIdata_scadenza\fP"
-+Imposta la data in cui l'account dell'utente non sarà più
-+accessibile. L'opzione \fIdata_scadenza\fP indica la data in cui l'account
-+viene bloccato, espressa come il numero di giorni trascorsi dal 1 gennaio
-+1970. La data può anche essere specificata nel formato AAAA\-MM\-GG o nella
-+notazione comunemente usata nel proprio paese. Un utente con l'account
-+bloccato deve contattare l'amministratore prima di poter usare ancora il
-+sistema.
-+.IP "\fB\-I\fP \fIinattività\fP"
-+Imposta il numero di giorni di inattività dopo la scadenza della password
-+dopo i quali l'account viene bloccato. L'opzione \fIinattività\fP indica il
-+numero di giorni di inattività; un valore pari a zero disabilita questa
-+funzione. Un utente con l'account bloccato deve contattare l'amministratore
-+prima di poter usare ancora il sistema.
-+.IP "\fB\-m\fP \fIgg_min\fP"
-+Imposta il numero minimo di giorni tra i cambi di password. Un valore pari a
-+zero indica che l'utente può cambiare la propria password in qualsiasi
-+momento.
-+.IP "\fB\-M\fP \fIgg_max\fP"
-+Imposta il numero massimo di giorni di validità di una password. Quando la
-+somma di \fIgg_max\fP e \fIgg_min\fP è inferiore ai giorni attualmente trascorsi,
-+l'utente è obbligato a cambiare la password prima di poter usare ancora il
-+proprio account. Questo evento può essere reso noto in anticipo usando
-+l'opzione \fB\-W\fP, che fornisce un preavviso all'utente.
-+.IP "\fB\-W\fP \fIgg_avviso\fP"
-+Imposta il numero di giorni di preavviso prima che sia obbligatorio cambiare
-+la password. L'opzione \fIgg_avviso\fP indica il numero di giorni prima della
-+scadenza della password in cui l'utente viene avvertito dell'imminente
-+scadenza.
-+.PP
-+Se non viene specificata nessuna opzione, \fBchage\fP opera in modalità
-+interattiva, mostrando tra parentesi quadre il valore attuale di ciascun
-+campo e chiedendo il nuovo valore all'utente. Inserire un nuovo valore per
-+modificare il campo, oppure lasciare la riga vuota per continuare a usare il
-+valore attuale.
-+.SH NOTA
-+\fBchage\fP richiede che il file delle shadow password sia disponibile. Non è
-+possibile usare questo programma se le password sono memorizzate nel file
-+passwd.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shadow\fP \- informazioni sicure sugli account degli utenti
-+.SH "VEDERE ANCHE"
-+\fBpasswd\fP(5), \fBshadow\fP(5)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/chfn.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/chfn.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,68 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: chfn.1,v 1.5 2005/04/21 21:03:15 kloczek Exp $
-+.\" 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 NOME
-+chfn \- cambia le informazioni personali dell'utente
-+.SH SINTASSI
-+.TP 5
-+\fBchfn\fP
-+[\fB\-f\fP \fInome_completo\fP] [\fB\-r\fP \fInumero_stanza\fP] [\fB\-w\fP \fItel_lavoro\fP]
-+[\fB\-h\fP \fItel_casa\fP] [\fB\-o\fP \fIaltro\fP] [\fIutente\fP]
-+.SH DESCRIZIONE
-+\fBchfn\fP permette di cambiare informazioni quali il nome completo, il numero
-+dell'ufficio, il telefono dell'ufficio e il numero telefonico di casa
-+dell'utente. Queste informazioni sono generalmente mostrate da \fBfinger\fP(1)
-+e programmi simili. Un utente qualsiasi può modificare solo i propri dati,
-+mentre l'amministratore può cambiare i dati di ogni account. Inoltre,
-+soltatnto all'amministratore è permesso usare l'opzione \fB\-o\fP per cambiare
-+le parti non definite del campo GECOS.
-+.PP
-+L'unica limitazione sul contenuto dei campi è che non possono essere
-+presenti virgole, due punti o segni di uguaglianza, né altri caratteri di
-+controllo. Fa eccezione il campo \fIaltro\fP, in cui sono memorizzare
-+informazioni di accounting usate da altre applicazioni.
-+.PP
-+Se non viene specificata nessuna opzione, \fBchfn\fP opera in modalità
-+interattiva, mostrando tra parentesi quadre il valore attuale di ciascun
-+campo e chiedendo il nuovo valore all'utente. Inserire un nuovo valore per
-+modificare il campo, oppure lasciare la riga vuota per continuare a usare il
-+valore attuale. Le informazioni modificate sono quelle relative all'utente
-+corrente.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.SH "VEDERE ANCHE"
-+\fBpasswd\fP(5)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/chpasswd.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/chpasswd.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,68 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: chpasswd.8,v 1.1 2005/04/21 21:03:15 kloczek Exp $
-+.\" 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 NOME
-+chpasswd \- aggiorna le password in modo non interattivo
-+.SH SINTASSI
-+\fBchpasswd\fP [\fBopzioni\fP]
-+.SH DESCRIZIONE
-+\fBchpasswd\fP legge da standard input un elenco di coppie di nomi utente e
-+password e usa queste informazioni per aggiornare un gruppo di utenti
-+esistenti. Ciascuna riga usa il formato:
-+.sp 1
-+ \fInome_utente\fP:\fIpassword\fP
-+.sp 1
-+Come impostazione predefinita, si devono fornire password in
-+chiaro. L'algoritmo di cifratura predefinito è DES. Se sono presenti,
-+vengono aggiornate anche le informazioni sulla durata delle password.
-+.PP
-+Questo comando è appositamente pensato per grossi sistemi in cui si abbia
-+la necessità di creare molti account nello stesso momento.
-+.SH OPZIONI
-+Il comando \fBchpasswd\fP accetta le seguenti opzioni:
-+.IP "\fB\-e\fP, \fB\-\-encrypted\fP"
-+Le password fornite sono in forma cifrata.
-+.IP "\fB\-h\fP, \fB\-\-help\fP"
-+Mostra un messaggio di aiuto ed esce.
-+.IP "\fB\-m\fP, \fB\-\-md5\fP"
-+Usa la cifratura MD5 anziché DES quando le password fornite non sono
-+cifrate.
-+.SH AVVISI/CAVEAT
-+Evitare che il file usato come input per il comando \fBchpasswd\fP sia
-+accessibile in lettura se contiene password non cifrate.
-+.SH "VEDERE ANCHE"
-+\fBpasswd\fP(1), \fBnewusers\fP(8), \fBuseradd\fP(8)
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/chsh.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/chsh.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,69 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: chsh.1,v 1.3 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NOME
-+chsh \- cambia la shell di login
-+.SH SINTASSI
-+.TP 5
-+\fBchsh\fP [\fB\-s\fP \fIshell_di_login\fP] [\fIutente\fP]
-+.SH DESCRIZIONE
-+\fBchsh\fP cambia la shell di login dell'utente, in altre parole determina il
-+comando iniziale eseguito quando un utente fa il login. Un utente qualsiasi
-+può cambiare la shell di login solo per il proprio account, mentre
-+l'amministratore può cambiare la shell di login per ogni account.
-+.PP
-+L'unica limitazione sulla scelta della shell di login è che il nome del
-+comando deve essere presente in \fI/etc/shells\fP; fa eccezione
-+l'amministratore di sistema, che è libero di scegliere qualsiasi valore. Un
-+account con una shell di login limitata non può cambiare la propria shell
-+di login. Per questo motivo è sconsigliato includere \fB/bin/rsh\fP in
-+\fI/etc/shells\fP: se accidentalmente un utente selezionasse una shell
-+limitata, non potrebbe più tornare alla shell di login che usava
-+originariamente.
-+.PP
-+.SH OPZIONI
-+Se non viene specificata l'opzione \fB\-s\fP, \fBchsh\fP opera in modalità
-+interattiva, mostrando tra parentesi quadre la shell di login attuale e
-+chiedendo all'utente di selezionarne una nuova. Inserire un nuovo valore per
-+cambiare la shell, oppure lasciare la riga vuota per continuare a usare
-+quella attuale.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shells\fP \- elenco delle shell di login ammesse
-+.SH "VEDERE ANCHE"
-+\fBchfn\fP(1), \fBpasswd\fP(5)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/expiry.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/expiry.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,54 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: expiry.1,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" Copyright 1990 - 1994 Julianne Frances Haugh
-+.\" All rights reserved.
-+.\" Modified for expiry by Ben Collins <bcollins at debian.org>, 1999
-+.\"
-+.\" 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 EXPIRY 1
-+.SH NOME
-+expiry \- controlla e fa rispettare la scadenza della password
-+.SH SINTASSI
-+.TP 6
-+\fBexpiry\fP [\fB\-c\fP] [\fB\-f\fP]
-+.SH DESCRIZIONE
-+\fBexpiry\fP controlla (\fB\-c\fP) la scadenza della password in uso e, se
-+necessario, richiede (\fB\-f\fP) che venga cambiata. Questo comando può essere
-+eseguito da un utente qualsiasi.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shadow\fP \- informazioni sicure sugli account degli utenti
-+.SH "VEDERE ANCHE"
-+\fBpasswd\fP(5), \fBshadow\fP(5)
-+.SH AUTORE
-+Ben Collins <bcollins at debian.org>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/faillog.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/faillog.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,83 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\" $Id: faillog.8,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NOME
-+faillog \- mostra i conteggi e imposta i limiti degli accessi falliti
-+.SH SINTASSI
-+.TP 6
-+\fBfaillog\fP [\fBopzioni\fP]
-+.SH DESCRIZIONE
-+\fBfaillog\fP mostra il log degli accessi falliti, contenuto nel file
-+\fI/var/log/faillog\fP; può anche essere usato per impostare i conteggi e i
-+limiti dei tentativi falliti. Eseguire \fBfaillog\fP senza argomenti per
-+ottenere un elenco degli utenti che hanno fallito almeno un tentativo di
-+accesso.
-+.SH OPZIONI
-+Il comando \fBfaillog\fP accetta le seguenti opzioni:
-+.IP "\fB\-a\fP, \fB\-\-all\fP"
-+Mostra i record degli accessi falliti per tutti gli utenti.
-+.IP "\fB\-h\fP, \fB\-\-help\fP"
-+Mostra un messaggio di aiuto ed esce.
-+.IP "\fB\-l\fP, \fB\-\-lock\-time\fP \fISEC\fP"
-+Blocca l'account per \fISEC\fP secondi dopo un tentativo di accesso fallito.
-+.IP "\fB\-m\fP, \fB\-\-maximum\fP \fIMAX\fP"
-+Imposta a \fIMAX\fP il numero massimo di tentativi permessi prima che l'account
-+venga disabilitato. Un valore pari a zero significa che non viene posto
-+nessun limite sul numero di tentativi falliti. Per impedire un possibile
-+attacco di tipo Denial of Service al sistema, si consiglia di impostare
-+questo valore a 0 per \fBroot\fP.
-+.IP "\fB\-r\fP, \fB\-\-reset\fP"
-+Azzera i conteggi degli accessi falliti per tutti gli utenti, o per un
-+utente solo se usato con l'opzione \fB\-u\fP \fILOGIN\fP. Per usare questa opzione
-+è richiesto l'accesso in scrittura a \fI/var/log/faillog\fP.
-+.IP "\fB\-t\fP, \fB\-\-time\fP \fIGIORNI\fP"
-+Mostra i record degli accessi falliti più recenti di un numero di
-+\fIGIORNI\fP. L'opzione \fB\-t\fP ha la precedenza sull'uso di \fB\-u\fP.
-+.IP "\fB\-u\fP, \fB\-\-user\fP \fILOGIN\fP"
-+Mostra il record degli accessi falliti o, se sono state usate con le opzioni
-+\fB\-r\fP, \fB\-m\fP o \fB\-l\fP, imposta conteggi e limiti solo per l'utente
-+specificato da \fILOGIN\fP.
-+.SH AVVISI/CAVEAT
-+\fBfaillog\fP mostra solo gli utenti che non hanno effettuato nessun accesso
-+corretto dopo l'ultimo tentativo fallito. Un utente che abbia completato
-+correttamente un accesso dopo l'ultimo tentativo fallito è mostrato solo se
-+viene richiesto esplicitamente con l'opzione \fB\-u\fP o se viene richiesto di
-+mostrare tutti gli utenti con l'opzione \fB\-a\fP.
-+.SH FILE
-+\fI/var/log/faillog\fP \- file di log degli accessi falliti
-+.SH "VEDERE ANCHE"
-+\fBlogin\fP(1), \fBfaillog\fP(5)
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/getspnam.3
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/getspnam.3 2005-07-09 15:30:01.000000000 +0200
-@@ -0,0 +1 @@
-+.so shadow.3
-Index: shadow-4.0.10/man/it/gpasswd.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/gpasswd.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,76 @@
-+.\" Copyright 1996, Rafal Maszkowski, rzm at 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.4 2005/04/05 19:08:54 kloczek Exp $
-+.\"
-+.\" Traduzione in italiano a cura di Isabella Ruocco <isacher at nettaxi.com>
-+.\" luglio 1999
-+.\"
-+.TH GPASSWD 1
-+.SH NOME
-+gpasswd \- amministra il file /etc/group
-+.br
-+.SH SINTASSI
-+.B gpasswd \fIgruppo\fR
-+.br
-+.B gpasswd
-+.B \-a
-+\fIutente\fR \fIgruppo\fR
-+.br
-+.B gpasswd
-+.B \-d
-+\fIutente\fR \fIgruppo\fR
-+.br
-+.B gpasswd
-+.B \-R
-+\fIgruppo\fR
-+.br
-+.B gpasswd
-+.B \-r
-+\fIgruppo\fR
-+.br
-+.B gpasswd
-+.RB [ \-A
-+\fIutente\fR,...]
-+.RB [ \-M
-+\fIutente\fR,...]
-+\fIgruppo\fR
-+.br
-+.SH DESCRIZIONE
-+.B gpasswd
-+viene usato per amministrare il file /etc/group (ed il file /etc/gshadow
-+se compilato con SHADOWGRP definito). Ogni gruppo può avere amministratori,
-+membri ed una password. L'amministratore di sistema può usare l'opzione \fB\-A\fR
-+per definire l'amministratore/gli amministratori di gruppo e l'opzione \fB\-M\fR
-+per definire i membri ed ha tutti i diritti degli amministratori di gruppo e
-+dei membri.
-+.PP
-+L'amministratore di gruppo può aggiungere e rimuovere utenti usando
-+rispettivamente le opzioni \fB\-a\fR e \fB\-d\fR. Gli amministratori possono usare
-+l'opzione \fB\-r\fR per rimuovere la password di gruppo. Quando non è
-+impostata alcuna password solo i membri del gruppo possono usare
-+.BR newgrp (1)
-+per unirsi al gruppo. L'opzione \fB\-R\fR disabilita l'accesso al gruppo tramite
-+il comando
-+.BR newgrp (1).
-+.PP
-+.B gpasswd
-+invocata da un amministratore di gruppo con il solo nome del gruppo richiede
-+solamente la password di gruppo. Se la password è impostata i membri possono ancora
-+usare
-+.BR newgrp (1)
-+senza la password, i non\-membri devono fornire la password.
-+
-+.SH FILE
-+\fI/etc/group\fR \- informazioni sui gruppi
-+.br
-+\fI/etc/gshadow\fR \- informazioni sul gruppo shadow
-+.SH VEDERE ANCHE
-+.BR newgrp (1),
-+.BR groupadd (8),
-+.BR groupdel (8),
-+.BR groupmod (8),
-+.BR grpck (8)
-Index: shadow-4.0.10/man/it/groupadd.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/groupadd.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,65 @@
-+.\" 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.9 2005/04/05 19:08:54 kloczek Exp $
-+.\"
-+.\" Traduzione in italiano a cura di Isabella Ruocco <isacher at nettaxi.com>
-+.\" luglio 1999
-+.\"
-+.TH GROUPADD 8
-+.SH NOME
-+groupadd \- Crea un nuovo gruppo
-+.SH SINTASSI
-+\fBgroupadd\fR [\fB\-g\fR \fIgid\fR [\fB\-o\fR]] [\fB\-f\fR] \fIgruppo\fR
-+.SH DESCRIZIONE
-+Il comando \fBgroupadd\fR crea un nuovo account di gruppo usando i valori
-+specificati sulla linea di comando ed i valori predefiniti dal sistema.
-+Il nuovo gruppo verrà aggiunto ai file di sistema che lo necessitano.
-+.SH OPZIONI
-+Le opzioni che si applicano al comando \fBgroupadd\fR sono:
-+.IP "\fB\-g\fR \fIgid\fR"
-+Il valore numerico dell'identificatore (ID) del gruppo.
-+Questo valore deve essere univoco, a meno che non venga usata l'opzione \fB\-o\fR.
-+Il valore deve essere non\-negativo.
-+La scelta predefinita è quella di usare il minimo valore di ID superiore a 999
-+e superiore a qualunque altro gruppo.
-+Valori tra 0 e 999 sono tipicamente riservati per account di sistema.
-+.SH FILE
-+\fI/etc/group\fR \- informazioni sugli account di gruppo
-+.br
-+\fI/etc/gshadow\fR \- informazioni sicure sugli account di gruppo
-+.SH VEDERE ANCHE
-+.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 AUTORE
-+Julianne Frances Haugh (jfh at tab.com)
-Index: shadow-4.0.10/man/it/groupdel.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/groupdel.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,63 @@
-+.\" 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.4 2005/04/05 19:08:54 kloczek Exp $
-+.\"
-+.\" Traduzione in italiano a cura di Isabella Ruocco <isacher at nettaxi.com>
-+.\" luglio 1999
-+.\"
-+.TH GROUPDEL 8
-+.SH NOME
-+groupdel \- Rimuove un gruppo
-+.SH SINTASSI
-+.B groupdel
-+.I gruppo
-+.SH DESCRIZIONE
-+Il comando \fBgroupdel\fR modifica i file di account di sistema, rimuovendo
-+tutte le voci che si riferiscono a \fIgruppo\fR.
-+Il gruppo nominato deve esistere.
-+.PP
-+Occorre controllare manualmente tutti i filesystem per assicurarsi che non
-+rimanga alcun file avente come ID di gruppo del file il gruppo specificato.
-+.SH CAVEAT
-+Non si può rimuovere il gruppo primario di qualche utente esistente.
-+Occorre rimuovere l'utente prima di rimuovere il gruppo.
-+.SH FILE
-+\fI/etc/group\fR \- informazioni sui gruppi
-+.br
-+\fI/etc/gshadow\fR \- informazioni sicure sui gruppi
-+.SH VEDERE ANCHE
-+.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 AUTORE
-+Julianne Frances Haugh (jfh at tab.com)
-Index: shadow-4.0.10/man/it/groupmod.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/groupmod.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,67 @@
-+.\" 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.7 2005/04/05 19:08:54 kloczek Exp $
-+.\"
-+.\" Traduzione in italiano a cura di Isabella Ruocco <isacher at nettaxi.com>
-+.\" luglio 1999
-+.\"
-+.TH GROUPMOD 8
-+.SH NOME
-+groupmod \- Modifica un gruppo
-+.SH SINTASSI
-+\fBgroupmod\fR [\fB\-g\fR \fIgid\fR [\fB\-o\fR]] [\fB\-n\fR \fInome_gruppo\fR]
-+.I gruppo
-+.SH DESCRIZIONE
-+Il comando \fBgroupmod\fR modifica i file di account del sistema in modo
-+da riflettere i cambiamenti che sono specificati sulla linea di comando.
-+Le opzioni che si applicano al comando \fIgroupmod\fR sono
-+.IP "\fB\-g \fIgid\fR"
-+Il valore numerico dell'identificatore (ID) del gruppo.
-+Questo valore deve essere univoco, a meno che non venga usata l'opzione
-+\fB\-o\fR.
-+Il valore deve essere non\-negativo.
-+Valori tra 0 e 999 sono tipicamente riservati per gruppi di sistema.
-+Occorre modificare manualmente l'ID di gruppo di tutti i file
-+il cui ID di gruppo è quello vecchio.
-+.IP "\fB\-n \fInome_gruppo\fR"
-+Il nome del gruppo verrà modificato da \fIgruppo\fR a \fInome_gruppo\fR.
-+.SH FILE
-+\fI/etc/group\fR \- informazioni sui gruppi
-+.br
-+\fI/etc/gshadow\fR \- informazioni sicure sui gruppi
-+.SH VEDERE ANCHE
-+.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 AUTORE
-+Julianne Frances Haugh (jfh at tab.com)
-Index: shadow-4.0.10/man/it/grpck.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/grpck.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,106 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: grpck.8,v 1.5 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 8
-+.SH NOME
-+grpck \- verifica l'integrità dei file di gruppo
-+.SH SINTASSI
-+\fBgrpck\fP [\fB\-r\fP] [\fIgroup\fP \fIshadow\fP]
-+.SH DESCRIZIONE
-+\fBgrpck\fP verifica l'integrità delle informazioni di autenticazione del
-+sistema. Ogni voce in \fI/etc/group\fP e in \fI/etc/gshadow\fP viene controllata
-+per verificare che abbia il formato corretto e dati validi in ciascun
-+campo. Viene richiesto all'utente di rimuovere le voci che non hanno un
-+formato appropriato o che hanno altri errori impossibili da correggere.
-+.PP
-+Vengono fatti controlli per verificare che ogni voce abbia:
-+.sp
-+.in +.5i
-+\- il corretto numero di campi
-+.br
-+\- un nome univoco di gruppo
-+.br
-+\- una lista valida di membri e amministratori
-+.in \-.5i
-+.sp
-+.PP
-+Gli errori nelle verifiche sul corretto numero di campi e sull'univocità
-+del nome del gruppo sono irrimediabili. Se una voce ha un numero errato di
-+campi, all'utente viene chiesto di cancellare l'intera riga; se l'utente non
-+risponde affermativamente, vengono omessi tutti gli ulteriori
-+controlli. Viene richiesta la cancellazione anche per le voci aventi il nome
-+del gruppo duplicato, ma i rimanenti controlli vengono ugualmente
-+effettuati. Tutti gli altri errori non sono gravi e l'utente è invitato a
-+eseguire il comando \fBgroupmod\fP per correggerli.
-+.PP
-+I comandi che operano sul file \fI/etc/group\fP non sono in grado di modificare
-+voci corrotte o duplicate; in tali circostanze va usato \fBgrpck\fP per
-+rimuovere la voce scorretta.
-+.SH OPZIONI
-+Come impostazione predefinita, \fBgrpck\fP opera sui file \fI/etc/group\fP e in
-+\fI/etc/gshadow\fP. L'utente può selezionare file alternativi con i parametri
-+\fIgroup\fP e \fIshadow\fP. Inoltre, il comando può essere eseguito in modalità
-+di sola lettura specificando l'opzione \fB\-r\fP: questo fa in modo che, senza
-+l'intervento dell'utente, venga risposto \fBno\fP a tutte le domande che
-+riguardano i cambiamenti. Con \fBgrpck\fP si possono anche ordinare per GID le
-+voci in \fI/etc/group\fP e in \fI/etc/gshadow\fP, è sufficiente fornire l'opzione
-+\fB\-s\fP. Non viene effettuato nessun controllo, il programma si limita a
-+ordinare i file.
-+.SH FILE
-+\fI/etc/group\fP \- informazioni sugli account dei gruppi
-+.br
-+\fI/etc/gshadow\fP \- password cifrate e informazioni sugli amministratori dei
-+gruppi
-+.br
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.SH "VEDERE ANCHE"
-+\fBgroup\fP(5), \fBpasswd\fP(5), \fBshadow\fP(5), \fBgroupmod\fP(8)
-+.SH "VALORI RESTITUITI"
-+.TP 2
-+Il comando \fBgrpck\fP restituisce i seguenti valori:
-+.br
-+\fB0\fP \- successo
-+.br
-+\fB1\fP \- errore di sintassi
-+.br
-+\fB2\fP \- una o più voci di gruppo contengono errori
-+.br
-+\fB3\fP \- impossibile aprire i file dei gruppi
-+.br
-+\fB4\fP \- impossibile fare il lock dei file dei gruppi
-+.br
-+\fB5\fP \- impossibile aggiornare i file dei gruppi
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/grpconv.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/grpconv.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1 @@
-+.so man8/pwconv.8
-Index: shadow-4.0.10/man/it/grpunconv.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/grpunconv.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1 @@
-+.so man8/pwconv.8
-Index: shadow-4.0.10/man/it/id.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/id.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,54 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: id.1,v 1.3 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NOME
-+id \- mostra i nomi e gli ID dell'utente e del gruppo
-+.SH SINTASSI
-+\fBid\fP [\fB\-a\fP]
-+.SH DESCRIZIONE
-+\fBid\fP mostra i nomi o i valori degli ID reale ed efficace, sia dell'utente
-+che del gruppo corrente. Se non è presente in \fI/etc/passwd\fP o in
-+\fI/etc/group\fP una voce relativa al valore numerico, esso viene mostrato
-+senza il nome corrispondente. L'opzione facoltativa \fB\-a\fP mostra l'insieme
-+dei gruppi sui sistemi che supportano l'appartenenza a più gruppi
-+contemporaneamente.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/group\fP \- informazioni sugli account dei gruppi
-+.SH "VEDERE ANCHE"
-+\fBgetgid\fP(2), \fBgetgroups\fP(2), \fBgetuid\fP(2)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/lastlog.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/lastlog.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,76 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: lastlog.8,v 1.7 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NOME
-+lastlog \- esamina il file degli ultimi accessi
-+.SH SINTASSI
-+.TP 8
-+\fBlastlog\fP [\fBopzioni\fP]
-+.SH DESCRIZIONE
-+.PP
-+\fBlastlog\fP mostra il log degli ultimi accessi, contenuto nel file
-+\fI/var/log/lastlog\fP. Le informazioni mostrate sono il \fBnome utente\fP, la
-+\fBporta\fP, e la \fBdata dell'ultimo accesso\fP. Il comportamento predefinito
-+(nessuna opzione specificata) è di mostrare i record di ultimo accesso per
-+tutti gli utenti, nell'ordine in cui compaiono in \fB/etc/passwd\fP.
-+.SH OPZIONI
-+.TP
-+Il comando \fBlastlog\fP accetta le seguenti opzioni:
-+.IP "\fB\-h\fP, \fB\-\-help\fP"
-+Mostra un messaggio di aiuto ed esce.
-+.IP "\fB\-t\fP, \fB\-\-time\fP \fIGIORNI\fP"
-+Mostra solo i record di ultimo accesso più recenti di un numero di
-+\fIGIORNI\fP.
-+.IP "\fB\-u\fP, \fB\-\-user\fP \fILOGIN\fP"
-+Mostra il record di ultimo accesso per l'utente specificato da \fILOGIN\fP.
-+.TP
-+L'opzione \fB\-t\fP ha la precedenza sull'uso di \fB\-u\fP.
-+.PP
-+Se l'utente non ha mai effettuato accessi al sistema viene mostrato, al
-+posto della porta e della data, il messaggio \fB"**Nessun accesso
-+effettuato**"\fP.
-+.SH FILE
-+\fI/var/log/lastlog\fP \- file di log degli ultimi accessi
-+.SH AVVISI/CAVEAT
-+Se ci sono dei grossi scarti tra i valori di UID, il programma lastlog può
-+restare in esecuzione per un tempo prolungato senza produrre output sullo
-+schermo (ad es. se mmdf=800 e l'ultimo UID vale 170, il programma sembrerà
-+bloccato come se esaminasse gli UID tra 171 e 799).
-+.SH AUTORI
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.br
-+Phillip Street
-+.SH TRADUZIONE
-+.nf
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/login.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/login.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,129 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\" $Id: login.1,v 1.3 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NOME
-+login \- apre una sessione sul sistema
-+.SH SINTASSI
-+\fBlogin\fP [\fB\-p\fP] [\fInome_utente\fP] [\fIENV=VAR\fP ...]
-+.br
-+\fBlogin\fP [\fB\-p\fP] [\fB\-h\fP \fIhost\fP] [\fB\-f\fP \fInome_utente\fP]
-+.br
-+\fBlogin\fP [\fB\-p\fP] \fB\-r\fP \fIhost\fP
-+.SH DESCRIZIONE
-+\fBlogin\fP viene utilizzato per aprire una sessione sul sistema. Normalmente
-+viene invocato automaticamente rispondendo al prompt \fIlogin:\fP del
-+terminale. \fBlogin\fP può essere trattato in maniera speciale dalla shell e
-+non può essere invocato come sottoprocesso. Normalmente \fBlogin\fP è
-+trattato dalla shell come \fBexec login\fP che termina la shell utente
-+attuale. L'esecuzione di \fBlogin\fP da una shell che non sia quella di login
-+produce un messaggio d'errore.
-+.PP
-+All'utente viene quindi chiesta la password, se necessario. Durante questa
-+operazione l'eco sul terminale è disabilitato per non rivelare la
-+password. Solo un basso numero di tentativi falliti è permesso prima che
-+\fBlogin\fP termini e che la connessione sia rallentata.
-+.PP
-+Se la scadenza delle password è abilitata per il proprio account, prima di
-+proseguire ci può essere la richiesta di una nuova password. Il programma
-+chiederà prima la vecchia password e poi la nuova per poter continuare. Per
-+maggiori informazioni si faccia riferimento a \fBpasswd\fP(1).
-+.PP
-+
-+Dopo aver completato correttamente l'accesso, vengono mostrati eventuali
-+messaggi di sistema e si viene informati della presenza di nuova posta. Si
-+può evitare di visualizzare i messaggi in \fI/etc/motd\fP creando un file
-+vuoto chiamato \fI.hushlogin\fP nella propria directory di login. Il messaggio
-+relativo alla presenza di posta è "\fBC'è nuova posta.\fP", "\fBC'è la solita
-+posta.\fP" o "\fBNessun messaggio di posta.\fP" a seconda dello stato della
-+propria casella di posta.
-+
-+.PP
-+I propri ID di utente e gruppo vengono poi impostati in base ai valori
-+definiti nel file \fI/etc/passwd\fP. I valori di \fB$HOME\fP, \fB$SHELL\fP, \fB$PATH\fP,
-+\fB$LOGNAME\fP e \fB$MAIL\fP sono impostati in base ai corrispettivi valori nel
-+file delle password. I valori per ulimit, umask e nice possono essere
-+impostati in base al campo GECOS.
-+.PP
-+In alcune installazioni la variabile d'ambiente \fB$TERM\fP può essere
-+impostata in base al tipo di terminale della propria connessione, come
-+specificato in \fI/etc/ttytype\fP.
-+.PP
-+Può anche essere eseguito uno script di inizializzazione per il proprio
-+interprete dei comandi. Fare riferimento alla relativa pagina di manuale per
-+maggiori informazioni su questa funzione.
-+.PP
-+Un accesso a un sottosistema è indicato dalla presenza del carattere "*"
-+all'inizio della shell di login. La home directory impostata diventa la root
-+di un nuovo file system al quale l'utente accede.
-+.SH OPZIONI
-+.IP \fB\-f\fP
-+Non effettua l'autenticazione, l'utente è già autenticato
-+.IP \fB\-h\fP
-+Nome dell'host remoto per questo login.
-+.IP \fB\-p\fP
-+Non modifica l'ambiente.
-+.IP \fB\-r\fP
-+Attiva il protocollo autologin di rlogin.
-+.PP
-+Le opzioni \fB\-r\fP, \fB\-h\fP e \fB\-f\fP possono essere utilizzate solo quando
-+\fBlogin\fP viene invocato da root.
-+.SH AVVISI/CAVEAT
-+Questa versione di \fBlogin\fP ha molte opzioni di compilazione; solo una parte
-+di esse potrebbe essere in uso su un determinato sistema.
-+.PP
-+La posizione dei file è soggetta a differenze in base alla configurazione
-+del sistema.
-+.SH FILE
-+\fI/var/run/utmp\fP \t\- elenco delle sessioni di login attive
-+.br
-+\fI/var/log/wtmp\fP \t\- elenco delle sessioni di login precedenti
-+.br
-+\fI/etc/passwd\fP \t\- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shadow\fP \t\- informazioni sicure sugli account degli utenti
-+.br
-+\fI/etc/motd\fP \t \- file dei messaggi di sistema
-+.br
-+\fI/etc/nologin\fP \t\- inibisce l'accesso al sistema a tutti gli utenti tranne
-+root
-+.br
-+\fI/etc/ttytype\fP \t\- elenco di tipi di terminale
-+.br
-+\fI$HOME/.hushlogin\fP \- impedisce che vengano mostrati i messaggi di sistema
-+.SH "VEDERE ANCHE"
-+\fBmail\fP(1), \fBpasswd\fP(1), \fBsh\fP(1), \fBsu\fP(1), \fBlogin.defs\fP(5),
-+\fBnologin\fP(5), \fBpasswd\fP(5), \fBgetty\fP(8)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/logoutd.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/logoutd.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,52 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: logoutd.8,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NOME
-+logoutd \- fa rispettare le limitazioni sugli accessi
-+.SH SINTASSI
-+\fBlogoutd\fP
-+.SH DESCRIZIONE
-+\fBlogoutd\fP fa rispettare le limitazioni sugli orari e sulle porte di accesso
-+specificate in \fI/etc/porttime\fP. \fBlogoutd\fP andrebbe avviato da
-+\fI/etc/rc\fP. Il file \fI/var/run/utmp\fP viene controllato periodicamente per
-+verificare che a ciascun utente sia consentito l'accesso da quella
-+determinata porta e all'orario attuale. Ogni sessione di login che stia
-+violando le limitazioni in \fI/etc/porttime\fP viene terminata.
-+.SH FILE
-+\fI/etc/porttime\fP \- permessi e porte di accesso
-+.br
-+\fI/var/run/utmp\fP \- sessioni di login attive
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/newgrp.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/newgrp.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,80 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: newgrp.1,v 1.2 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NEWGRP 1
-+.SH NOME
-+newgrp \- effettua l'accesso a un nuovo gruppo
-+.br
-+sg \- esegue un comando con un diverso ID di gruppo
-+.SH SINTASSI
-+\fBnewgrp\fP [\fB\-\fP] [\fIgruppo\fP]
-+.br
-+\fBsg\fP [\fB\-\fP] [\fIgruppo\fP [[\fB\-c\fP] \fIcommndo\fP]]
-+.SH DESCRIZIONE
-+\fBnewgrp\fP permette di cambiare il proprio ID di gruppo durante una sessione
-+di login. Se viene specificato il flag \fB\-\fP, l'ambiente dell'utente viene
-+reinizializzato come se l'utente stesse effettuando il login, altrimenti
-+l'ambiente non viene modificato e la directory corrente non viene cambiata.
-+.PP
-+\fBnewgrp\fP changes the current real group ID to the named group, or to the
-+default group listed in \fI/etc/passwd\fP if no group name is given. \fBnewgrp\fP
-+also tries to add the group to the user groupset. If not root, the user will
-+be prompted for a password if she 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. If compiled with SHADOWPWD (respectively SHADOWGRP)
-+defined, the password of the user (respectively, the password and the
-+members of the group) will be overwritten by the value defined in
-+\fI/etc/shadow\fP (respectively in \fI/etc/gshadow\fP) if an entry exists for this
-+user (resp. group).
-+.PP
-+Il comando \fBsg\fP funziona in maniera analoga a \fBnewgrp\fP, ma accetta un
-+comando che viene eseguito con la shell \fB/bin/sh\fP. La maggior parte delle
-+shell che permettono l'uso di \fBsg\fP richiede che i comandi composti da più
-+parole siano inclusi tra apici. Un'altra differenza tra \fBnewgrp\fP e \fBsg\fP è
-+che alcune shell trattano \fBnewgrp\fP in maniera speciale, sostituendo se
-+stesse con la shell creata da \fBnewgrp\fP. Questo non accade con \fBsg\fP, per
-+cui all'uscita del comando \fBsg\fP si ritorna al precedente ID di gruppo.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shadow\fP \- informazioni sicure sugli account degli utenti
-+.br
-+\fI/etc/group\fP \- informazioni sugli account dei gruppi
-+.br
-+\fI/etc/gshadow\fP \- informazioni sicure sui gruppi
-+.SH "VEDERE ANCHE"
-+\fBid\fP(1), \fBlogin\fP(1), \fBsu\fP(1), \fBgpasswd\fP(1), \fBgroup\fP(5), \fBgshadow\fP(5)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/passwd.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/passwd.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,58 @@
-+.\" $Id: passwd.1,v 1.2 2005/04/13 10:02:27 kloczek Exp $
-+.\" Copyright 1992 Rickard E. Faith (faith at cs.unc.edu)
-+.\" May be distributed under the GNU General Public License
-+.\"
-+.\" Traduzione in italiano di Giovanni Bortolozzo <borto at dei.unipd.it>
-+.\" Agosto 1996
-+.\"
-+.\" " for hilit19
-+.TH PASSWD 1 "22 giugno 1994" "Linux 1.2" "Linux Programmer's Manual"
-+.SH NOME
-+passwd \- cambia la password
-+.SH SINTASSI
-+.BR "passwd [ " utente " [ " password " ] ]"
-+.SH DESCRIZIONE
-+Senza alcun argomento
-+.B passwd
-+cambierà la password per l'attuale utente. Per prima cosa all'utente è chiesta
-+la vecchia password, dopo di che, per evitare errori di battitura, va immessa
-+per due volte la nuova password. La nuova password deve essere lunga almeno
-+sei caratteri ed essere composta sia da maiuscole che da minuscole o da
-+caratteri non alfabetici. La nuova password non deve essere uguale alla
-+vecchia password, e non deve coincidere con il nome dell'utente.
-+
-+Le forme a uno e due argomenti possono essere usate solo dal superuser. Usando
-+la forma ad un argomento, il superuser può cambiare la password per
-+quell'utente. Al superuser non è chiesta la vecchia password, e non sono
-+applicate le regole per le password valide, poiché il superuser potrebbe
-+avere valide ragioni per scegliere una password che non ne sia conforme.
-+
-+La forma a due argomenti assegna ad
-+.I utente
-+la password passata come secondo argomento. Ciò può essere utile quando
-+si deve assegnare a molti utenti una password iniziale.
-+
-+Passando una stringa vuota come secondo argomento si cancella la password
-+dell'utente.
-+
-+.SH FILE
-+.I /etc/passwd
-+.br
-+.I /etc/shells
-+.SH BACHI
-+Sono permesse password composte solo da numeri.
-+.br
-+Non viene prodotto nessun messaggio d'avviso se il superuser sceglie una
-+password ``scadente''.
-+.br
-+Le opzioni
-+.B \-f
-+e
-+.B \-s
-+non sono supportare.
-+.SH "VEDERE ANCHE"
-+.BR group (5),
-+.BR passwd (5),
-+.BR shadow (5)
-+.SH AUTORE
-+Peter Orbaek (poe at daimi.aau.dk)
-Index: shadow-4.0.10/man/it/passwd.5
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/passwd.5 2005-07-09 15:30:04.000000000 +0200
-@@ -0,0 +1,136 @@
-+.\" $Id: passwd.5,v 1.2 2005/04/05 19:08:54 kloczek Exp $
-+.\" Copyright (c) 1993 Michael Haardt (u31b3hs at pool.informatik.rwth\-aachen.de)
-+.\" Fri Apr 2 11:32:09 MET DST 1993
-+.\"
-+.\" Traduzione in italiano di Giovanni Bortolozzo <borto at dei.unipd.it>
-+.\" Agosto 1996
-+.\"
-+.\" This is free documentation; you can redistribute it and/or
-+.\" modify it under the terms of the GNU General Public License as
-+.\" published by the Free Software Foundation; either version 2 of
-+.\" the License, or (at your option) any later version.
-+.\"
-+.\" The GNU General Public License's references to "object code"
-+.\" and "executables" are to be interpreted as the output of any
-+.\" document formatting or typesetting system, including
-+.\" intermediate and printed output.
-+.\"
-+.\" This manual is distributed in the hope that it will be useful,
-+.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
-+.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+.\" GNU General Public License for more details.
-+.\"
-+.\" You should have received a copy of the GNU General Public
-+.\" License along with this manual; if not, write to the Free
-+.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
-+.\" USA.
-+.\"
-+.\" Modified Sun Jul 25 10:46:28 1993 by Rik Faith (faith at cs.unc.edu)
-+.\" Modified Sun Aug 21 18:12:27 1994 by Rik Faith (faith at cs.unc.edu)
-+.\" Modified Sun Jun 18 01:53:57 1995 by Andries Brouwer (aeb at cwi.nl)
-+.\" Modified Mon Jan 5 20:24:40 MET 1998 by Michael Haardt
-+.\" (michael at cantor.informatik.rwth\-aachen.de)
-+.TH PASSWD 5 "5 gennaio 1988" "Linux" "Linux Programmer's Manual"
-+.SH NOME
-+passwd \- file delle password
-+.SH DESCRIZIONE
-+.B Passwd
-+è un file di testo che contiene un elenco degli account sul sistema, e
-+per ciascuno di questi riporta alcune informazioni utili come user ID,
-+group ID, home directory, ecc. Spesso contiene anche le password
-+criptate di ciascun account. Il file delle password dovrebbe avere
-+permessi di lettura per tutti (molte utility, come
-+.BR ls (1),
-+ne fanno uso per associare lo user ID allo user name), ma permesso di
-+scrittura solo per il superuser.
-+.PP
-+Nei buoni tempi andati, il permesso di lettura per tutti non era un
-+grosso problema: chiunque poteva leggere le password criptate, ma i
-+calcolatori erano troppo lenti per decifrare una password scelta
-+bene. Soprattutto, si supponeva di lavorare fra amici. Oggigiorno,
-+molti usano una qualche versione di shadow password (chiavi ombra), in
-+cui
-+.I /etc/passwd
-+contiene degli * al posto delle password criptate, che a loro volta
-+sono nel file \fI/etc/shadow\fP, che solo il superuser può leggere.
-+.PP
-+Sia che si utilizzino o meno le shadow password, molti amministratori di
-+sistema usano un asterisco nel campo della password per far sì che un
-+utente non possa autenticarsi con una password (vedi le note più
-+sotto).
-+.PP
-+Se si crea una nuova login, si metta un asterisco nel campo della
-+password, e poi si usi il programma
-+.BR passwd (1)
-+per riempirlo.
-+.PP
-+C'è una voce per riga, ed ogni riga ha il formato:
-+.sp
-+.RS
-+account:passwd:UID:GID:GECOS:directory:shell
-+.RE
-+.sp
-+Il significato dei campi è il seguente:
-+.sp
-+.RS
-+.TP 1.0in
-+.I account
-+il nome dell'utente nel sistema. Non dovrebbe contenere maiuscole.
-+.TP
-+.I password
-+la password criptata o un asterisco.
-+.TP
-+.I UID
-+l'identificativo numerico dell'utente (UID = User IDentifier).
-+.TP
-+.I GID
-+l'identificativo numerico del gruppo principale per l'utente (GID =
-+Group IDentifier).
-+.TP
-+.I GECOS
-+Questo campo è opzionale e viene usato solo per fornire
-+informazioni. Di solito contiene il nome per esteso dell'utente. GECOS
-+sta per General Electric Comprehensive Operating System, (sistema
-+operativo comprensivo della General Electric), ribattezzato GCOS
-+quando la divisione grandi sistemi della GE fu venduta alla
-+Honeywell. Dennis Ritchie riferì: «A volte dovevamo spedire una stampa
-+o un gruppo di lavori alla macchina GCOS. Il campo del gcos nel file
-+delle password era un posto in cui sbattere le informazioni per la
-+$IDENTcard. Per niente elegante.»
-+.TP
-+.I directory
-+la $HOME directory dell'utente.
-+.TP
-+.I shell
-+il programma lanciato al login (se è vuoto, viene usato
-+.BR /bin/sh ).
-+Se punta ad un programma che non esiste, l'utente non potrà avere
-+accesso tramite
-+.BR login (1).
-+.RE
-+.SH NOTE
-+Se si vuole creare un gruppo di utenti, il loro GID deve
-+essere uguale e ci deve essere una voce nel file \fI/etc/group\fP, o il
-+gruppo non esisterà.
-+.PP
-+Se la password criptata è un asterisco, l'utente non potrà fare login
-+tramite
-+.BR login (1).
-+ma potrà ugualmente accedere al suo account usando
-+.BR rlogin (1),
-+far girare processi esistenti o iniziarne nuovi con
-+.BR rsh (1),
-+.BR cron (1),
-+.BR at (1)
-+o filtri per la posta, ecc. Bloccare un account semplicemente
-+modificando il campo della shell ha lo stesso effetto e in più
-+permette l'uso di
-+.BR su (1).
-+.SH FILE
-+.I /etc/passwd
-+.SH "VEDERE ANCHE"
-+.BR passwd (1),
-+.BR login (1),
-+.BR su (1),
-+.BR group (5),
-+.BR shadow (5)
-Index: shadow-4.0.10/man/it/porttime.5
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/porttime.5 2005-07-09 15:30:04.000000000 +0200
-@@ -0,0 +1,87 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\" $Id: porttime.5,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" Copyright 1989 - 1990, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.TH PORTTIME 5
-+.SH NOME
-+porttime \- file delle porte e degli orari d'accesso
-+.SH DESCRIZIONE
-+\fIporttime\fP contiene un elenco di device tty, nomi utente e orari di accesso
-+permessi.
-+.PP
-+Ciascuna voce è composta da tre campi separati da due punti. Il primo è un
-+elenco di device tty, separati da virgole, oppure un asterisco per indicare
-+che la voce corrisponde a qualsiasi device. Il secondo campo è un elenco di
-+nomi utente, separati da virgole, oppure un asterisco per indicare che la
-+voce corrisponde ad ogni utente. Il terzo campo è un elenco degli orari,
-+separati da virgole, in cui è consentito l'accesso.
-+.PP
-+Un orario di accesso consiste in zero o più giorni della settimana
-+abbreviati in \fBMo\fP (lunedì), \fBTu\fP, \fBWe\fP, \fBTh\fP, \fBFr\fP, \fBSa\fP e \fBSu\fP
-+(domenica), seguiti da una coppia di orari, separate da un
-+trattino. L'abbreviazione \fBWk\fP rappresenta tutti i giorni da lunedì a
-+venerdì, mentre \fBAl\fP indica tutti i giorni della settimana. Se non si
-+specifica alcun giorno, viene usato implicitamente \fBAl\fP.
-+.SH ESEMPI
-+La voce seguente permette l'accesso all'utente \fBjfh\fP da qualsiasi porta
-+durante i giorni lavorativi dalle 9 alle 17.
-+.br
-+.sp 1
-+ *:jfh:Wk0900\-1700
-+.br
-+.sp 1
-+Le voci seguenti permettono l'accesso solo agli utenti \fBroot\fP e \fBoper\fP da
-+/dev/console a qualsiasi ora. Qui viene mostrato come il file
-+\fI/etc/porttime\fP sia una lista ordinata di orari d'accesso: ogni altro
-+utente corrisponderebbe alla seconda voce, che impedisce l'accesso in
-+qualsiasi orario.
-+.br
-+.sp 1
-+ console:root,oper:Al0000\-2400
-+.br
-+ console:*:
-+.br
-+.sp 1
-+La voce seguente permette l'accesso all'utente \fBgames\fP da qualsiasi porta
-+durante gli orari non lavorativi.
-+.br
-+.sp 1
-+ *:games:Wk1700\-0900,SaSu0000\-2400
-+.br
-+.sp 1
-+.SH FILE
-+\fI/etc/porttime\fP \- file contenente le porte e gli orari di accesso
-+.SH "VEDERE ANCHE"
-+\fBlogin\fP(1)
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/pwck.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/pwck.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,109 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: pwck.8,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" Copyright 1992, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.TH PWCK 8
-+.SH NOME
-+pwck \- verifica l'integrità dei file delle password
-+.SH SINTASSI
-+\fBpwck\fP [\fB\-sr\fP] [\fIpasswd\fP \fIshadow\fP]
-+.SH DESCRIZIONE
-+\fBgrpck\fP verifica l'integrità delle informazioni di autenticazione del
-+sistema. Ogni voce in \fI/etc/passwd\fP e in \fI/etc/shadow\fP viene controllata
-+per verificare che abbia il formato corretto e dati validi in ciascun
-+campo. Viene richiesto all'utente di rimuovere le voci che non hanno un
-+formato appropriato o che hanno altri errori impossibili da correggere.
-+.P
-+Vengono fatti controlli per verificare che ogni voce abbia:
-+.sp
-+.in +.5i
-+\- il corretto numero di campi
-+.br
-+\- un nome utente univoco
-+.br
-+\- identificatori validi dell'utente e del gruppo
-+.br
-+\- un gruppo primario valido
-+.br
-+\- una home directory valida
-+.br
-+\- una shell di login valida
-+.in \-.5i
-+.sp
-+.PP
-+Gli errori nelle verifiche sul corretto numero di campi e sull'univocità
-+del nome utente sono irrimediabili. Se una voce ha un numero errato di
-+campi, all'utente viene chiesto di cancellare l'intera riga; se l'utente non
-+risponde affermativamente, vengono omessi tutti gli ulteriori
-+controlli. Viene richiesta la cancellazione anche per le voci aventi il nome
-+utente duplicato, ma i rimanenti controlli vengono ugualmente
-+effettuati. Tutti gli altri errori non sono gravi e l'utente è invitato a
-+eseguire il comando \fBusermod\fP per correggerli.
-+.PP
-+I comandi che operano sul file \fI/etc/passwd\fP non sono in grado di
-+modificare voci corrotte o duplicate; in tali circostanze va usato \fBpwck\fP
-+per rimuovere la voce scorretta.
-+.SH OPZIONI
-+Come impostazione predefinita, \fBpwck\fP opera sui file \fI/etc/passwd\fP e in
-+\fI/etc/shadow\fP. L'utente può selezionare file alternativi con i parametri
-+\fIpasswd\fP e \fIshadow\fP. Inoltre, il comando può essere eseguito in modalità
-+di sola lettura specificando l'opzione \fB\-r\fP: questo fa in modo che, senza
-+l'intervento dell'utente, venga risposto \fBno\fP a tutte le domande che
-+riguardano i cambiamenti. Con \fBpwck\fP si possono anche ordinare per UID le
-+voci in \fI/etc/passwd\fP e in \fI/etc/shadow\fP, è sufficiente fornire l'opzione
-+\fB\-s\fP. Non viene effettuato nessun controllo, il programma si limita a
-+ordinare i file.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shadow\fP \- informazioni sicure sugli account degli utenti
-+.br
-+\fI/etc/group\fP \- informazioni sugli account dei gruppi
-+.SH "VEDERE ANCHE"
-+\fBgroup\fP(5), \fBpasswd\fP(5), \fBshadow\fP(5), \fBusermod\fP(8)
-+.SH "VALORI RESTITUITI"
-+.TP 2
-+Il comando \fBpwck\fP restituisce i seguenti valori:
-+\fB0\fP \- successo
-+.br
-+\fB1\fP \- sintassi del comando errata
-+.br
-+\fB2\fP \- una o più voci di password conengono errori
-+.br
-+\fB3\fP \- impossibile aprire i file delle password
-+.br
-+\fB4\fP \- impossibile fare il lock dei file delle password
-+.br
-+\fB5\fP \- impossibile aggiornare i file delle password
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/pwconv.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/pwconv.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,58 @@
-+.\" $Id: pwconv.8,v 1.1 2002/03/10 07:41:06 kloczek Exp $
-+.\" Traduzione in italiano di Isabella Ruocco <isacher at nettaxi.com>
-+.\" Giugno 1999
-+.TH PWCONV 8 "26 sep 1997"
-+.SH NOME
-+pwconv, pwunconv, grpconv, grpunconv \- convertono a e da password e gruppi shadow.
-+.SH SINTASSI
-+.B pwconv
-+.br
-+.B pwunconv
-+.br
-+.B grpconv
-+.br
-+.B grpunconv
-+.SH DESCRIPTION
-+Questi quattro programmi agiscono tutti sui file normali e e oscurati (shadow)
-+delle password e dei gruppi:
-+.IR /etc/passwd ", " /etc/group ", " /etc/shadow ", e " /etc/gshadow .
-+
-+.B pwconv
-+.RI "crea " shadow " da " passwd " e, in modo opzionale, da un preesistente " shadow .
-+.B pwunconv
-+.RI "crea " passwd " da " passwd " e " shadow " e quindi rimuove " shadow .
-+.B grpconv
-+.RI "crea " gshadow " da " group " e, in modo opzionale, da un preesistente " gshadow .
-+.B grpunconv
-+.RI "crea " group " da " group " e " gshadow " e quindi rimuove " gshadow .
-+
-+Ciascun programma, prima della conversione, acquisisce i lock necessari.
-+
-+.BR pwconv " e " grpconv
-+sono simili. Per prima cosa vengono rimosse le voci nel file oscurato che non esistono
-+nel file principale. Quindi vengono aggiornate le voci oscurate che
-+non hanno `x' come password nel file principale. Vengono aggiunte le eventuali voci
-+oscurate mancanti. Infine, le password nel file principale vengono
-+sostituite con `x'. Questi programmi possono essere usati per le conversioni iniziali
-+così come per aggiornare il file oscurato se il file principale viene editato
-+a mano.
-+
-+.B pwconv
-+userà i valori di
-+.BR PASS_MIN_GIORNI ", " PASS_MAX_GIORNI ", e " PASS_GIORNI_PREAVVISO
-+da
-+.I /etc/login.defs
-+quando si aggiungono nuove voci a
-+.IR /etc/shadow .
-+
-+.RB "Analogamente, " pwunconv " e " grpunconv
-+sono simili. Le password nel file principale vengono aggiornate
-+dal file oscurato. Voci che esistono nel file principale ma non
-+nel file oscurato vengono lasciate stare. Infine, viene rimosso il file oscurato.
-+
-+Alcune informazioni sull'invecchiamento delle password vengono perse da
-+.BR pwunconv .
-+Questo convertirà quello che potrà.
-+.SH "VEDERE ANCHE"
-+.BR login.defs (5),
-+.BR shadowconfig (8)
-Index: shadow-4.0.10/man/it/pwunconv.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/pwunconv.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1 @@
-+.so man8/pwconv.8
-Index: shadow-4.0.10/man/it/shadow.3
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/shadow.3 2005-07-09 15:30:01.000000000 +0200
-@@ -0,0 +1,141 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\" $Id: shadow.3,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" Copyright 1989 - 1993, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.TH SHADOW 3
-+.SH NOME
-+shadow \- gestione del file delle password cifrate
-+.SH SINTASSI
-+\fB#include <shadow.h>\fP
-+.PP
-+\fBstruct spwd *getspent();\fP
-+.PP
-+\fBstruct spwd *getspnam(char\fP \fI*name\fP\fB);\fP
-+.PP
-+\fBvoid setspent();\fP
-+.PP
-+\fBvoid endspent();\fP
-+.PP
-+\fBstruct spwd *fgetspent(FILE\fP \fI*fp\fP\fB);\fP
-+.PP
-+\fBstruct spwd *sgetspent(char\fP \fI*cp\fP\fB);\fP
-+.PP
-+\fBint putspent(struct spwd\fP \fI*p,\fP \fBFILE\fP \fI*fp\fP\fB);\fP
-+.PP
-+\fBint lckpwdf();\fP
-+.PP
-+\fBint ulckpwdf();\fP
-+.SH DESCRIZIONE
-+\fIshadow\fP manipola il contenuto del file delle shadow password,
-+\fI/etc/shadow\fP. La struttura nel file \fI#include\fP è la seguente:
-+.sp
-+struct spwd {
-+.in +.5i
-+.br
-+ char \t *sp_namp; /* login dell'utente */
-+.br
-+ char \t *sp_pwdp; /* password cifrata */
-+.br
-+ long int \tsp_lstchg; /* ultimo cambio della password */
-+.br
-+ long int \tsp_min; /* giorni minimi tra i cambi */
-+.br
-+ long int \tsp_max; /* giorni massimi tra i cambi */
-+.br
-+ long int \tsp_warn; /* giorni di preavviso */
-+.br
-+ long int \tsp_inact; /* giorni di inattività */
-+.br
-+ long int \tsp_expire; /* data di scadenza dell'account */
-+.br
-+ unsigned long int sp_flag; /* riservato per uso futuro */
-+.br
-+.in \-.5i
-+}
-+.PP
-+Ciascun campo significa:
-+.sp
-+sp_namp \- puntatore a una stringa null\-terminated che contiene il nome
-+utente.
-+.br
-+sp_pwdp \- puntatore a una stringa null\-terminated che contiene la password.
-+.br
-+sp_lstchg \- giorni a partire dal 1 gennaio 1970 in cui la password è stata
-+cambiata l'ultima volta.
-+.br
-+sp_min \- giorni prima dei quali la password non può essere cambiata.
-+.br
-+sp_max \- giorni dopo i quali la password deve essere cambiata.
-+.br
-+sp_warn \- giorni prima della scadenza della password in cui l'utente viene
-+avvertito.
-+.br
-+sp_inact \- giorni dopo la scadenza della password in cui l'account viene
-+considerato inattivo e disabilitato.
-+.br
-+sp_expire \- giorni a partire dal 1 gennaio 1970 dopo i quali l'account viene
-+disabilitato.
-+.br
-+sp_flag \- riservato per uso futuro.
-+.SH DESCRIZIONE
-+\fBgetspent\fP, \fBgetspname\fP, \fBfgetspent\fP e \fBsgetspent\fP restituiscono un
-+puntatore a uno \fBstruct spwd\fP. \fBgetspent\fP restituisce la voce successiva
-+nel file, \fBfgetspent\fP la voce successiva nello stream specificato, che si
-+suppone sia un file nel formato corretto. \fBsgetspent\fP restituisce un
-+puntatore a uno \fBstruct spwd\fP usando come input la stringa
-+fornita. \fBgetspnam\fP cerca una voce che corrisponde a \fBname\fP partendo dalla
-+posizione corrente nel file.
-+.PP
-+\fBsetspent\fP e \fBendspent\fP sono usate rispettivamente per iniziare e
-+terminare l'accesso al file delle shadow password.
-+.PP
-+Le funzioni \fBlckpwdf\fP e \fBulckpwdf\fP si usano per garantire l'accesso
-+esclusivo al file \fI/etc/shadow\fP. \fBlckpwdf\fP prova ad acquisire il lock
-+tramite \fBpw_lock\fP per un massimo di 15 secondi, dopodiché tenta di
-+ottenere un secondo lock usando \fBspw_lock\fP per il tempo che rimane dei 15
-+secondi iniziali. Se anche uno solo dei due tentativi fallisce dopo un
-+totale di 15 secondi, \fBlckpwdf\fP restituisce \-1, mentre restituisce 0 se
-+riesce ad acquisire entrambi i lock.
-+.SH DIAGNOSTICA
-+Le funzioni restituiscono NULL se non ci sono altre voci disponibili o se si
-+verifica un errore durante l'elaborazione. Le funzioni di tipo \fBint\fP
-+restituiscono 0 in caso di successo e \-1 in caso di errore.
-+.SH AVVISI/CAVEAT
-+Queste funzioni possono essere usate solo dall'amministratore, perché
-+l'accesso al file delle shadow password è riservato.
-+.SH FILE
-+\fI/etc/shadow\fP \- informazioni sicure sugli account degli utenti
-+.SH "VEDERE ANCHE"
-+\fBgetpwent\fP(3), \fBshadow\fP(5)
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/shadow.5
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/shadow.5 2005-07-09 15:30:04.000000000 +0200
-@@ -0,0 +1,99 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: shadow.5,v 1.4 2005/04/21 21:03:16 kloczek Exp $
-+.\" Copyright 1989 - 1990, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.TH SHADOW 5
-+.SH NOME
-+shadow \- file delle password cifrate
-+.SH DESCRIZIONE
-+\fIshadow\fP contiene le informazioni sulle password cifrate per gli account
-+degli utenti e, opzionalmente, le informazioni sulla durata delle
-+password. Sono inclusi:
-+.IP "" .5i
-+Nome di login
-+.IP "" .5i
-+Password cifrata
-+.IP "" .5i
-+Giorni a partire dal 1 gennaio 1970 in cui la password è stata cambiata
-+l'ultima volta
-+.IP "" .5i
-+Giorni prima dei quali la password non può essere cambiata
-+.IP "" .5i
-+Giorni dopo i quali la password deve essere cambiata
-+.IP "" .5i
-+Giorni prima della scadenza della password in cui l'utente viene avvertito
-+.IP "" .5i
-+Giorni dopo la scadenza della password in cui l'account viene disabilitato
-+.IP "" .5i
-+Giorni a partire dal 1 gennaio 1970 dopo i quali l'account viene
-+disabilitato
-+.IP "" .5i
-+Campo riservato
-+.PP
-+Il campo password non può essere vuoto. La password cifrata è composta da
-+un numero compreso tra 13 a 24 di caratteri scelti da un alfabeto di 64
-+caratteri: da a fino a z, da A a Z, da 0 a 9, . e /. Facoltativamente, la
-+password può iniziare con il carattere "$"; questo sta a indicare che la
-+password cifrata è stata generata usando un algoritmo diverso da DES. Ad
-+esempio, "$1$" significa che è stato usato un algoritmo basato su MD5.
-+.PP
-+Fare riferimento a \fBcrypt\fP(3) per dettagli sul modo in cui questa stringa
-+viene interpretata.
-+.PP
-+La data dell'ultimo cambio della password è espressa come il numero di
-+giorni trascorsi dal 1 gennaio 1970. La passowrd non può essere cambiata
-+nuovamente prima che sia passato il numero di giorni previsti, ma deve
-+obbligatoriamente essere cambiata dopo il massimo numero di giorni. Se il
-+numero minimo di giorni richiesti è superiore al numero massimo di giorni
-+concessi, all'utente non è permesso cambiare la password.
-+.PP
-+Un account viene considerato inattivo e viene disabilitato se, dopo la
-+scadenza, la password non viene cambiata entro il numero di giorni
-+specificato. Inoltre, un account viene disabilitato il giorno specificato,
-+senza tener conto di altre informazioni sulla scadenza della password.
-+.PP
-+Queste informazioni hanno la precedenza su qualunque informazione sulle
-+password o sulla loro durata presente in \fI/etc/passwd\fP.
-+.PP
-+Questo file non deve essere leggibile dagli utenti se si vuole mantenere la
-+sicurezza delle password.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shadow\fP \- informazioni sicure sugli account degli utenti
-+.SH "VEDERE ANCHE"
-+\fBchage\fP(1), \fBlogin\fP(1), \fBpasswd\fP(1), \fBsu\fP(1), \fBpasswd\fP(5),
-+\fBpwconv\fP(8), \fBpwunconv\fP(8), \fBsulogin\fP(8)
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/shadowconfig.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/shadowconfig.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,28 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: shadowconfig.8,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.TH SHADOWCONFIG 8 19/04/1997 "Debian GNU/Linux"
-+.SH NOME
-+shadowconfig \- abilita/disabilita le shadow password
-+.SH SINTASSI
-+\fBshadowconfig\fP \fIon\fP | \fIoff\fP
-+.SH DESCRIZIONE
-+.PP
-+
-+\fBshadowconfig on\fP abilita le shadow password, \fBshadowconfig off\fP le
-+disabilita. Se accade qualcosa di anomalo, \fBshadowconfig\fP mostra un
-+messaggio d'errore ed esce con un codice diverso da zero; in tal caso è
-+necessario correggere l'errore e riprovare. Tentare di attivare le shadow
-+password quando già lo sono o di disattivarle quando non lo sono è
-+un'azione senza conseguenze.
-+.P
-+Consultare \fI/usr/share/doc/passwd/README.debian\fP per una breve introduzione
-+alle shadow password e alle caratteristiche collegate.
-+.P
-+Notare che disattivando e riattivando le shadow password si perdono tutte le
-+informazioni sulla durata delle password.
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/su.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/su.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,78 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\" $Id: su.1,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" Copyright 1989 - 1990, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.TH SU 1
-+.SH NOME
-+su \- cambia ID utente o diventa amministratore
-+.SH SINTASSI
-+\fBsu\fP [\fB\-\fP] [\fInome_utente\fP [\fIargomenti\fP]]
-+.SH DESCRIZIONE
-+\fBsu\fP permette di diventare un altro utente durante una sessione di
-+login. Se nessun nome utente viene specificato, \fBsu\fP acquisice i privilegi
-+di amministratore. L'opzione \fB\-\fP può essere usata per fornire un ambiente
-+simile a quello che l'utente troverebbe se effettuasse il login
-+direttamente.
-+.PP
-+Dopo il nome utente, è possibile specificare argomenti aggiuntivi da
-+passare alla shell di login dell'utente. In particolare, molti interpreti di
-+comando adottano la convenzione per cui l'opzione \fB\-c\fP seguita da un
-+argomento fa sì che quest'ultimo sia considerato un comando.Il comando
-+viene eseguito dalla shell specificata in \fI/etc/passwd\fP per l'utente di
-+destinazione.
-+.PP
-+All'utente viene quindi chiesta la password, se necessario. Una password
-+errata viene segnalata da un messaggio d'errore. Viene effettuato il log di
-+tutti i tentativi, siano essi riusciti o meno, al fine di rilevare ogni
-+abuso del sistema.
-+.PP
-+Le variabili d'ambiente in uso vengono passate alla nuova shell, eccetto il
-+valore di \fB$PATH\fP che viene impostato a \fB/bin:/usr/bin\fP per gli utenti
-+qualsiasi e a \fB/sbin:/bin:/usr/sbin:/usr/bin\fP per l'amministratore. Questa
-+impostazione è controllata dalle definizioni \fBENV_PATH\fP ed \fBENV_SUPATH\fP
-+in \fI/etc/login.defs\fP.
-+.PP
-+Un accesso a un sottosistema è indicato dalla presenza del carattere "*"
-+all'inizio della shell di login. La home directory impostata diventa la root
-+di un nuovo file system al quale l'utente accede.
-+.SH AVVISI/CAVEAT
-+Questa versione di \fBsu\fP ha molte opzioni di compilazione; solo una parte di
-+esse potrebbe essere in uso su un determinato sistema.
-+.SH FILE
-+\fI/etc/passwd\fP \- informazioni sugli account degli utenti
-+.br
-+\fI/etc/shadow\fP \- informazioni sicure sugli account degli utenti
-+.SH "VEDERE ANCHE"
-+\fBlogin\fP(1), \fBsh\fP(1), \fBlogin.defs\fP(5), \fBsuauth\fP(5)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/useradd.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/useradd.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,198 @@
-+.\" Copyright 1991 \- 1994, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.\"
-+.\" $Id: useradd.8,v 1.7 2005/04/05 19:08:54 kloczek Exp $
-+.\"
-+.\" Traduzione in italiano a cura di Isabella Ruocco <isacher at nettaxi.com>
-+.\" luglio 1999
-+.\"
-+.TH USERADD 8
-+.SH NOME
-+useradd \- Crea un nuovo utente o aggiorna le informazioni predefinite per
-+i nuovi utenti
-+.SH SINTASSI
-+.TP 8
-+.B useradd
-+.\" .RB [ \-A
-+.\" .RI { metodo | \fBPREDEFINITO\fR "},... ]"
-+.RB [ \-c
-+.IR commento ]
-+.RB [ \-d
-+.IR home_dir ]
-+.br
-+.RB [ \-e
-+.IR data_scadenza ]
-+.RB [ \-f
-+.IR tempo_inattività ]
-+.br
-+.RB [ \-g
-+.IR gruppo_iniziale ]
-+.RB [ \-G
-+.IR gruppo [,...]]
-+.br
-+.RB [ \-m " [" \-k
-+.IR dir_scheletro ]]
-+.RB [ \-s
-+.IR shell ]
-+.br
-+.RB [ \-u
-+.IR uid " ["
-+.BR \-o ]]
-+.I login
-+.TP 8
-+.B useradd
-+\fB\-D\fR
-+[\fB\-g\fI gruppo_predefinito\fR]
-+[\fB\-b\fI home_predefinita\fR]
-+.br
-+[\fB\-f\fI inattività_predefinita\fR]
-+[\fB\-e\fI data_scadenza_predefinita\fR]
-+.br
-+[\fB\-s\fI shell_predefinita\fR]
-+.SH DESCRIZIONE
-+.SS Creare Nuovi Utenti
-+Quando viene invocato senza l'opzione \fB\-D\fR, il comando \fBuseradd\fR
-+crea un nuovo account di utente usando i valori specificati sulla linea di
-+comando ed i valori predefiniti dal sistema.
-+Il nuovo account di utente verrà aggiunto ai file di sistema che lo necessitano,
-+verrà creata la home directory, e lì verranno copiati i file iniziali, a seconda
-+delle opzioni sulla linea di comando.
-+.SH OPZIONI
-+Le opzioni che si applicano al comando \fBuseradd\fR sono:
-+.\" .IP "\fB\-A {\fImetodo\fR|\fBPREDEFINITO\fR},..."
-+.\" Il valore del metodo di autenticazione dell'utente.
-+.\" Il metodo di autenticazione è il nome di un programma che è responsabile
-+.\" della validazione dell'identità dell'utente.
-+.\" La stringa \fBPREDEFINITO\fR può essere usata per cambiare il metodo di
-+.\" autenticazione dell'utente con il metodo standard di sistema delle
-+.\" password.
-+.\" Questa è una lista di nomi di programmi separati da virgole.
-+.\" Può includere \fBPREDEFINITO\fR esattamente una volta.
-+.IP "\fB\-c \fIcommento\fR"
-+Il campo commento del nuovo utente nel file password.
-+.IP "\fB\-d \fIhome_dir\fR"
-+Il nuovo utente verrà creato usando \fIhome_dir\fR come valore per la
-+directory di login dell'utente.
-+Il comportamento predefinito è di appendere il nome \fIlogin\fR a
-+\fIhome_predefinita\fR ed usare quella come nome di directory di login.
-+.IP "\fB\-e \fIdata_scadenza\fR"
-+La data in cui verrà disabilitato l'account dell'utente.
-+La data è specificata nel formato \fIMM/GG/AA\fR.
-+.IP "\fB\-f \fIgiorni_inattività\fR"
-+Il numero di giorni dopo la scadenza della password fino a quando l'account
-+verrà permanentemente disabilitato.
-+Un valore pari a 0 disabilita l'account non appena è scaduta la password,
-+ed un valore pari a \-1 disabilita questa caratteristica.
-+Il valore predefinito è \-1.
-+.IP "\fB\-g \fIgruppo_iniziale\fR"
-+IL nome o numero del gruppo iniziale di login dell'utente.
-+Il nome del gruppo deve esistere. Un numero di gruppo deve fare riferimento
-+ad un gruppo già esistente.
-+Il numero di gruppo predefinito è 1.
-+.IP "\fB\-G \fIgruppo,[...]\fR"
-+Una lista di gruppi supplementari di cui l'utente è altresì membro.
-+Ciascun gruppo è separato dal successivo da una virgola, senza spazi
-+bianchi intermedi.
-+I gruppi sono soggetti alle stesse restrizioni del gruppo dato con
-+l'opzione \fB\-g\fR.
-+Il comportamento predefinito è che l'utente appartenga solo al gruppo
-+iniziale.
-+.IP \fB\-m\fR
-+La home directory dell'utente verrà creata se non esiste.
-+I file contenuti in \fIdir_scheletro\fR saranno copiati nella home directory
-+se viene usata l'opzione \fB\-k\fR, altrimenti verranno usati i file
-+contenuti in \fI/etc/skel\fR.
-+Anche tutte le directory contenute in \fIdir_scheletro\fR o \fI/etc/skel\fR
-+verranno create nella home directory dell'utente.
-+L'opzione \fB\-k\fR è valida solo in congiunzione con l'opzione \fB\-m\fR.
-+Il comportamento predefinito è di non creare la directory e di non copiarvi
-+alcun file.
-+.IP "\fB\-s \fIshell\fR"
-+Il nome della shell di login dell'utente.
-+Il comportamento predefinito è di lasciare vuoto questo campo, che fa sì che
-+il sistema selezioni la shell di connessione predefinita.
-+.IP "\fB\-u \fIuid\fR"
-+Il valore numerico dell'ID dell'utente.
-+Questo valore deve essere univoco, a meno che non venga usata l'opzione
-+\fI\-o\fR.
-+Il valore deve essere non\-negativo.
-+Il comportamento predefinito è di usare il minimo valore di ID superiore a 999
-+e superiore a quello di ogni altro utente.
-+Valori tra 0 e 999 sono tipicamente riservati per account di sistema.
-+.SS Cambiare i valori predefiniti
-+Quando invocato con l'opzione \fB\-D\fR, \fBuseradd\fR o mostrerà i valori
-+predefiniti correnti, oppure aggiornerà i valori predefiniti dalla linea
-+di comando.
-+Le opzioni valide sono
-+.IP "\fB\-b \fIhome_predefinita\fR"
-+Il prefisso del percorso per la home directory del nuovo utente.
-+Il nome dell'utente verrà aggiunto alla fine di \fIhome_predefinita\fR
-+per creare il nome della nuova directory se non viene usata l'opzione \fB\-d\fI
-+quando si crea un nuovo account.
-+.IP "\fB\-e \fIdata_scadenza_predefinita\fR"
-+La data in cui l'account dell'utente verrà disabilitato.
-+.IP "\fB\-f \fIinattività_predefinita\fR"
-+Il numero di giorni dopo la scadenza di una password prima che l'account
-+venga disabilitato.
-+.IP "\fB\-g \fIgruppo_predefinito\fR"
-+Il nome o ID del gruppo iniziale per un nuovo utente.
-+Il gruppo nominato deve esistere, ed un ID numerico di gruppo deve avere una
-+voce esistente.
-+.IP "\fB\-s \fIshell_predifinita\fR"
-+Il nome della shell di login per un nuovo utente.
-+Il programma nominato verrà usato per tutti gli account dei futuri nuovi
-+utenti.
-+.PP
-+Se non è specificata alcuna opzione, \fBuseradd\fR mostra i valori predefiniti
-+correnti.
-+.SH NOTE
-+L'amministratore di sistema è responsabile del posizionamento dei file
-+predefiniti degli utenti nella directory \fI/etc/skel\fR.
-+.SH CAVEAT
-+Non è possibile aggiungere un utente ad un gruppo NIS.
-+Questo deve essere fatto sul server NIS.
-+.SH FILE
-+\fI/etc/passwd\fR \- informazioni sugli account di utenti
-+.br
-+\fI/etc/shadow\fR \- informazioni sicure sugli account di utenti
-+.br
-+\fI/etc/group\fR \- informazioni sui gruppi
-+.br
-+\fI/etc/default/useradd\fR \- informazioni predefinite
-+.br
-+\fI/etc/skel/ \fR\- directory contenente i file predefiniti
-+.SH VEDERE ANCHE
-+.BR chfn (1),
-+.BR chsh (1),
-+.BR groupadd (8),
-+.BR groupdel (8),
-+.BR groupmod (8),
-+.BR passwd (1),
-+.BR userdel (8),
-+.BR usermod (8)
-+.SH AUTORE
-+Julianne Frances Haugh (jfh at tab.com)
-Index: shadow-4.0.10/man/it/userdel.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/userdel.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,72 @@
-+.\" Copyright 1991 \- 1994, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.\"
-+.\" $Id: userdel.8,v 1.4 2005/04/05 19:08:54 kloczek Exp $
-+.\"
-+.\" Traduzione in italiano a cura di Isabella Ruocco <isacher at nettaxi.com>
-+.\" luglio 1999
-+.\"
-+.TH USERDEL 8
-+.SH NOME
-+userdel \- Rimuove l'account di un utente ed i file relativi
-+.SH SINTASSI
-+.B userdel
-+[\fB\-r\fR]
-+.I login
-+.SH DESCRIZIONE
-+Il comando \fBuserdel\fR modifica i file di account del sistema, rimuovendo
-+tutte le voci che si riferiscono a \fIlogin\fR.
-+L'utente nominato deve esistere.
-+.IP \fB\-r\fR
-+I file nella home directory dell'utente verranno rimossi insieme alla home
-+directory stessa.
-+I file collocati in altri file system dovranno essere ricercati e rimossi
-+manualmente.
-+.SH FILE
-+\fI/etc/passwd\fR \- informazioni sugli account di utenti
-+.br
-+\fI/etc/shadow\fR \- informazioni sicure sugli account di utenti
-+.br
-+\fI/etc/group\fR \- informazioni sui gruppi
-+.SH CAVEAT
-+\fBuserdel\fR non permetterà di rimuovere alcun account se l'utente è
-+attualmente connesso.
-+Occorre uccidere qualunque processo in esecuzione che appartenga ad un account
-+che si sta rimuovendo.
-+Non è possibile rimuovere nessun attributo NIS su un client NIS.
-+Questo deve essere fatto sul server NIS.
-+.SH VEDERE ANCHE
-+.BR chfn (1),
-+.BR chsh (1),
-+.BR groupadd (8),
-+.BR groupdel (8),
-+.BR groupmod (8),
-+.BR passwd (1),
-+.BR useradd (8),
-+.BR usermod (8)
-+.SH AUTORE
-+Julianne Frances Haugh (jfh at tab.com)
-Index: shadow-4.0.10/man/it/usermod.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/usermod.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,142 @@
-+.\" Copyright 1991 \- 1994, Julianne Frances Haugh
-+.\" All rights reserved.
-+.\"
-+.\" Redistribution and use in source and binary forms, with or without
-+.\" modification, are permitted provided that the following conditions
-+.\" are met:
-+.\" 1. Redistributions of source code must retain the above copyright
-+.\" notice, this list of conditions and the following disclaimer.
-+.\" 2. Redistributions in binary form must reproduce the above copyright
-+.\" notice, this list of conditions and the following disclaimer in the
-+.\" documentation and/or other materials provided with the distribution.
-+.\" 3. Neither the name of Julianne F. Haugh nor the names of its contributors
-+.\" may be used to endorse or promote products derived from this software
-+.\" without specific prior written permission.
-+.\"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.\"
-+.\" $Id: usermod.8,v 1.7 2005/04/05 19:08:54 kloczek Exp $
-+.\"
-+.\" Traduzione in italiano a cura di Isabella Ruocco <isacher at nettaxi.com>
-+.\" luglio 1999
-+.\"
-+.TH USERMOD 8
-+.SH NOME
-+usermod \- Modifica l'account di un utente
-+.SH SINTASSI
-+.TP 8
-+.B usermod
-+.RB [ \-c
-+.IR commento ]
-+.RB [ \-d
-+.IR home_dir " ["
-+.BR \-m ]]
-+.br
-+.RB [ \-e
-+.IR data_scadenza ]
-+.RB [ \-f
-+.IR tempo_inattività ]
-+.br
-+.RB [ \-g
-+.IR gruppo_iniziale ]
-+.RB [ \-G
-+.IR gruppo [,...]]
-+.br
-+.RB [ \-l
-+.IR nome_login ]
-+.RB [ \-s
-+.IR shell ]
-+.br
-+.RB [ \-u
-+.IR uid " ["
-+.BR \-o ]]
-+.I login
-+.SH DESCRIZIONE
-+Il comando \fBusermod\fR modifica i file di account di sistema in modo da
-+riflettere le modifiche specificate sulla linea di comando.
-+Le opzioni che si applicano al comando \fBusermod\fR sono
-+.IP "\fB\-c\fR \fIcommento\fR"
-+Il campo commento del nuovo utente nel file password.
-+Normalmente viene modificato usando l'utilità \fBchfn\fR(1).
-+.IP "\fB\-d\fR \fIhome_dir\fR"
-+La nuova directory di login dell'utente.
-+Se è data l'opzione \fB\-m\fR il contenuto della home directory corrente
-+sarà spostato nella nuova home directory, che viene creata se non esiste già.
-+.IP "\fB\-e\fR \fIdata_scadenza\fR"
-+La data in cui l'account dell'utente verrà disabilitato.
-+La data è specificata nel formato \fIMM/GG/AA\fR.
-+.IP "\fB\-f\fR \fIgiorni_inattività\fR"
-+Il numero di giorni dopo la scadenza di una password prima che l'account
-+venga permanentemente disabilitato.
-+Un valore pari a 0 disabilita l'account non appena la password è scaduta,
-+ed un valore pari a \-1 disabilita la caratteristica.
-+Il valore predefinito è \-1.
-+.IP "\fB\-g\fR \fIgruppo_iniziale\fR"
-+Il nuome o numero del nuovo gruppo di connessione dell'utente.
-+Il nome del gruppo deve esistere. Un numero di gruppo deve riferirsi ad un
-+gruppo già esistente.
-+Il numero di gruppo predefinito è 1.
-+.IP "\fB\-G\fR \fIgruppo,[...]\fR"
-+Una lista di gruppi supplementari di cui l'utente è altresì membro.
-+Ciascun gruppo è separato dal successivo da una virgola, senza spazi bianchi
-+intermedi.
-+I gruppi sono soggetti alle stesse restrizioni del gruppo dato con l'opzione
-+\fB\-g\fR.
-+Se l'utente è attualmente membro di un gruppo che non è elencato, l'utente
-+verrà rimosso dal gruppo.
-+.IP "\fB\-l\fR \fInome_login\fR"
-+Il nome dell'utente verrà cambiato da \fIlogin\fR a \fInome_login\fR.
-+Niente altro viene cambiato.
-+In particolare, la home directory dell'utente dovrebbe probabilmente
-+essere modificata in modo da riflettere il nuovo nome di login.
-+.IP "\fB\-s\fR \fIshell\fR"
-+Il nome della nuova shell di login dell'utente.
-+Lasciando questo campo vuoto si fa in modo che il sistema selezioni la shell
-+di connessione predefinita.
-+.IP "\fB\-u\fR \fIuid\fR"
-+Il valore numerico dell'ID dell'utente.
-+Questo valore deve essere univoco, a meno che non venga usata l'opzione
-+\fB\-o\fR.
-+Questo valore deve essere non\-negativo.
-+Valori tra 0 e 999 sono tipicamente riservati ad account di sistema.
-+Tutti i file che l'utente possiede e che sono posiszionati nell'albero di
-+directory avente come radice la home directory dell'utente avranno l'ID utente del
-+file cambiato automaticamente.
-+I file fuori della home directory dell'utente devono essere modificati
-+manualmente.
-+.SH CAVEAT
-+\fBusermod\fR non permetterà di modificare il nome di un utente che è
-+attualmente connesso.
-+Occorre essere certi che l'utente nominato non sta eseguendo alcun processo
-+quando questo comando viene eseguito se l'ID numerico dell'utente sta per
-+essere cambiato.
-+Occorre cambiare il proprietario di ogni file crontab manualmente.
-+Occorre cambiare il proprietario di ogni job manualmente.
-+Occorre fare qualunque cambiamento che riguarda NIS sul server NIS.
-+.SH FILE
-+\fI/etc/passwd\fR \- informazioni sugli account di utenti
-+.br
-+\fI/etc/shadow\fR \- informazioni sicure sugli account di utenti
-+.br
-+\fI/etc/group\fR \- informazioni sui gruppi
-+.SH VEDERE ANCHE
-+.BR chfn (1),
-+.BR chsh (1),
-+.BR groupadd (8),
-+.BR groupdel (8),
-+.BR groupmod (8),
-+.BR passwd (1),
-+.BR useradd (8),
-+.BR userdel (8)
-+.SH AUTORE
-+Julianne Frances Haugh (jfh at tab.com)
-Index: shadow-4.0.10/man/it/vigr.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/vigr.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1 @@
-+.so man8/vipw.8
-Index: shadow-4.0.10/man/it/vipw.8
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/vipw.8 2005-07-09 15:30:08.000000000 +0200
-@@ -0,0 +1,27 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: vipw.8,v 1.3 2005/04/21 21:03:16 kloczek Exp $
-+.TH VIPW 8 26/09/1997
-+.SH NOME
-+vipw, vigr \- modificano i file delle password, dei gruppi, delle shadow
-+password o dei gruppi shadow
-+.SH SINTASSI
-+\fBvipw\fP [\fB\-s\fP]
-+.br
-+\fBvigr\fP [\fB\-s\fP]
-+.SH DESCRIZIONE
-+\fBvipw\fP e \fBvigr\fP permettono di modificare rispettivamente i file
-+\fI/etc/passwd\fP e \fI/etc/group\fP. Con l'opzione \fB\-s\fP, vengono aperte le
-+versioni shadow di quei file, rispettivamente \fI/etc/shadow\fP e
-+\fI/etc/gshadow\fP. I programmi si occupano di impostare i lock necessari per
-+evitare la corruzione dei file. Per determinare l'editor da usare, i
-+programmi prima provano con la variabile d'ambiente \fBVISUAL\fP, poi con la
-+variabile d'ambiente \fBEDITOR\fP e infine con l'editor predefinito, \fBvi\fP.
-+.SH "VEDERE ANCHE"
-+\fBgroup\fP(5), \fBpasswd\fP(5), \fBshadow\fP(5)
-+.SH TRADUZIONE
-+.nf
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/faillog.5
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/faillog.5 2005-07-09 19:16:05.000000000 +0200
-@@ -0,0 +1,62 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: faillog.5,v 1.1 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 5
-+.SH NOME
-+faillog \- file di log degli accessi falliti
-+.SH DESCRIZIONE
-+\fI/var/log/faillog\fP mantiene i conteggi e i limiti dei tentativi di accesso
-+falliti per ciascun account. Il file è composto da record di lunghezza
-+fissa, indicizzati dal valore numerico di UID. Ciascun record contiene il
-+conteggio degli accessi falliti a partire dall'ultimo login corretto, il
-+numero massimo di tentativi permessi prima che l'account venga disabilitato,
-+il terminale sul quale l'ultimo tentativo fallito è avvenuto e infine la
-+data in cui è avvenuto.
-+.PP
-+La struttura del file è la seguente:
-+.DS
-+
-+ struct faillog {
-+ short fail_cnt;
-+ short fail_max;
-+ char fail_line[12];
-+ time_t fail_time;
-+ };
-+.DE
-+.SH FILE
-+\fI/var/log/faillog\fP \- log degli accessi falliti
-+.SH "VEDERE ANCHE"
-+\fBfaillog\fP(8)
-+.SH AUTORE
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/groups.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/groups.1 2005-07-09 15:29:58.000000000 +0200
-@@ -0,0 +1,55 @@
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: groups.1,v 1.3 2005/04/21 21:03:16 kloczek Exp $
-+.\" 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 NOME
-+groups \- mostra i nomi dei gruppi correnti
-+.SH SINTASSI
-+\fBgroups\fP [\fIutente\fP]
-+.SH DESCRIZIONE
-+Per ciascuno dei gruppi correnti, \fBgroups\fP mostra i nomi o i valori ID. Se
-+un valore non ha nessuna voce corrispondente in \fI/etc/group\fP, esso viene
-+mostrato in forma numerica. Se viene specificato un \fIutente\fP, vengono
-+mostrati i gruppi a cui appartiene quel determinato \fIutente\fP.
-+.SH NOTA
-+Sui sistemi che non supportano l'appartenenza a più gruppi
-+contemporaneamente, vengono riportate le informazioni da
-+\fI/etc/group\fP. L'utente deve usare \fBnewgrp\fP o \fBsg\fP per cambiare gli ID dei
-+gruppi reale ed efficace.
-+.SH FILE
-+\fI/etc/group\fP \- informazioni sugli account dei gruppi
-+.SH "VEDERE ANCHE"
-+\fBnewgrp\fP(1), \fBgetgid\fP(2), \fBgetgroups\fP(2), \fBgetuid\fP(2)
-+.SH AUTORE
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.SH TRADUZIONE
-+.nf
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.fi
-Index: shadow-4.0.10/man/it/sg.1
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ shadow-4.0.10/man/it/sg.1 2005-07-09 23:46:40.000000000 +0200
-@@ -0,0 +1 @@
-+.so man1/newgrp.1
Modified: branches/experimental/debian/patches/series
===================================================================
--- branches/experimental/debian/patches/series 2005-08-30 22:47:07 UTC (rev 500)
+++ branches/experimental/debian/patches/series 2005-08-31 10:49:57 UTC (rev 501)
@@ -1,5 +1,3 @@
-# 002 has been applied by Tomasz in 4.0.12
-# 002_more-i18n.dpatch
004_configure.in.dpatch
005_manpages.dpatch
# 336 has been applied in 4.0.12
@@ -20,23 +18,16 @@
437_su_add_GNU_options_6
# 363 has been applied in 4.0.12
# 363_su_ignore_SIGINT
-# 008_su_check_user_earlier # not used with 437_su_add_GNU_options_4
008_su_no_sanitize_env
008_su_get_PAM_username
439_su_PAM_session
# 008_login_MAXHOSTNAMELEN # It should probably be dropped.
428_grpck_add_prune_option
434_login_stop_checking_args_after--
-# 349_login_opt-f_with_username_after-- # applied
433_login_more_LOG_UNKFAIL_ENAB
008_login_log_failure_in_FTMP
429_login_FAILLOG_ENAB
432_login_cancel_timout_after_authentication
-# 355_login_close_session_as_root # applied
-# 347_login_log_pam_user_if_USE_PAM # applied
-# 348_login_PAM_SILENT_if_hushed_login # applied
-# 359_usermod_warn_old_home_not_removed # applied
-# 358_userdel_remove_group_from_gshadow # applied
#
# 360_newgrp_preserve_env # not needed
438_su_GNU_origin
@@ -89,28 +80,9 @@
# 206_ko-manpages.dpatch
#
# 311_high-uids.dpatch # upstream uses AC_SYS_LARGEFILE in configure.in
-# 312_usermod-302388.dpatch # applied
-# 313_pam_access_with_preauth.dpatch # applied
-# 314_passwd.1_formatting.dpatch # applied
-# 315_chage.1_document_expiration_removal.dpatch # applied
-# 316_vipw-race-242407.dpatch # applied
-# 317_lastlog_usage_249611.dpatch # applied
-# 318_passwd_src_warning.dpatch # applied
#
# 319_time_structures.dpatch # must be checked another time
-# 320_nscd_header.dpatch # applied
-# 321_remove_malloc_definition.dpatch # applied
-# 324_configure.in-no-debian-dir.dpatch # applied
-# 325_gshadow_5_manpage # applied
-# 326_su.1_pwconv.8-typos # applied
-# 327_newgrp_162303 # applied
-# 328_successful_password_change # applied
-# 329_libmisc_failure_ngettext # applied
-# 330_CAN-2004-1001_passwd_check # applied
-# 331_chpasswd-md5.dpatch # applied
-# 332_grpck.8-type_and_section # applied
333_shadow.5-typo_312430
-# 334_chage.1-typo # applied
401_cppw_src.dpatch
# 402 has been applied upstream (surprising because Tomasz once said he wouldn't)
# 402_usermod.8-system-users-range-286258
@@ -120,8 +92,6 @@
406_good_name.dpatch
407_32char_grnames.dpatch
421_login.1_pishing
-# need to be tested, but it is probably not needed
-#422_getdate.c_generated_file
010_more-i18ned-messages
# 356_su-stop_cont-proxy # no more needed?
# NOTE: you must use only one of these 423
@@ -129,25 +99,16 @@
# 423_su_pass_args_without_concatenation # upstream don't suffer from this
423_su_arguments_are_concatenated
424_pwck.8_quiet_option
-# 361_lastlog_8_sparse # will be in 4.0.11
357_newgrp-stop_cont-proxy
426_grpck_group-gshadow_members_consistency
427_chage_expiry_0
442_useradd-O_option
-# 443 has been applied in 4.0.12
-# 443_man_it_Makefile.am
-# 444 has been applied in 4.0.12
-# 444_missing_Italian_manpages
362_warning_messages
443_chage_exit_values
-# 364 has been fixed in 4.0.12
-# 364_ENV_SUPATH
365_PAM_copy_environ_later
445_su_password_expired
446_newgrp.1_no_SHADOWPWD
#207_id-manpages
-# 999 applied to debian/* files. It has been applied directly
-# 999_hack_build_package
# 999-2 is about using cdbs. It does not patch upstream files
# so shouldn't be here, but we keep it for the future
# 999-2_build_using_cdbs
More information about the Pkg-shadow-commits
mailing list