[Pkg-shadow-commits] r715 - trunk/debian/patches
Christian Perrier
bubulle at costa.debian.org
Fri Dec 16 10:39:02 UTC 2005
Author: bubulle
Date: 2005-12-16 10:39:00 +0000 (Fri, 16 Dec 2005)
New Revision: 715
Removed:
trunk/debian/patches/008_login_MAXHOSTNAMELEN
trunk/debian/patches/304_pt_BR-manpages.dpatch
trunk/debian/patches/305_it-manpages.dpatch
trunk/debian/patches/306_ko-manpages.dpatch
trunk/debian/patches/321_login.1_pishing
trunk/debian/patches/324_pwck.8_quiet_option
trunk/debian/patches/327_chage_expiry_0
trunk/debian/patches/335_su_addenv_HOME_and_SHELL
trunk/debian/patches/345_su_password_expired
trunk/debian/patches/347_missing_login.defs_variables
trunk/debian/patches/353_userdel_-f_removes_group
trunk/debian/patches/355_userdel.8.xml
trunk/debian/patches/356_configure_typo_logdir
trunk/debian/patches/357_document_useradd_groupadd_nis
trunk/debian/patches/358_manpages_typos
trunk/debian/patches/360_vipw-quiet
trunk/debian/patches/367_usermod_longopts
trunk/debian/patches/423_su_pass_args_without_concatenation
trunk/debian/patches/437_su_add_GNU_options_1
trunk/debian/patches/437_su_add_GNU_options_2
trunk/debian/patches/437_su_add_GNU_options_3
trunk/debian/patches/437_su_add_GNU_options_4
trunk/debian/patches/437_su_add_GNU_options_5
trunk/debian/patches/437_su_add_GNU_options_6
trunk/debian/patches/437_su_add_GNU_options_7
trunk/debian/patches/441_manpages-shadow.5
Log:
Remove patches we no more use in series
Deleted: trunk/debian/patches/008_login_MAXHOSTNAMELEN
===================================================================
--- trunk/debian/patches/008_login_MAXHOSTNAMELEN 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/008_login_MAXHOSTNAMELEN 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,22 +0,0 @@
-Goal: ???
-
-I think it should be dropped. The MAXHOSTNAMELEN macro is not used.
-It is usually used for the gethostname buffer.
-
-
-Index: shadow-4.0.3/src/login.c
-===================================================================
---- shadow-4.0.3.orig/src/login.c 2005-05-29 11:07:14.638975000 +0200
-+++ shadow-4.0.3/src/login.c 2005-05-29 11:09:47.018975000 +0200
-@@ -58,6 +58,11 @@
- #include <sys/proc.h>
- #include <sys/sysi86.h>
- #endif
-+
-+#ifndef MAXHOSTNAMELEN
-+#define MAXHOSTNAMELEN 64
-+#endif
-+
- #ifdef RADIUS
- /*
- * Support for RADIUS authentication based on a hacked util-linux login
Deleted: trunk/debian/patches/304_pt_BR-manpages.dpatch
===================================================================
--- trunk/debian/patches/304_pt_BR-manpages.dpatch 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/304_pt_BR-manpages.dpatch 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,23 +0,0 @@
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/man/pt_BR/gpasswd.1
-===================================================================
---- shadow-4.0.13.orig/man/pt_BR/gpasswd.1 2005-04-05 21:08:56.000000000 +0200
-+++ shadow-4.0.13/man/pt_BR/gpasswd.1 2005-10-09 18:20:53.000000000 +0200
-@@ -28,7 +28,7 @@
- .SH NOME
- gpasswd \- administra o arquivo \fI/etc/group\fR
- .br
--.SH SINOSPE
-+.SH SINOPSE
- \fBgpasswd\fR \fIgrupo\fR
- .br
- \fBgpasswd \-a\fR \fIusuário\fR \fIgrupo\fR
-@@ -87,4 +87,7 @@
- .BR grpck (8)
- .SH TRADUÇÃO E REVISÃO PARA A LÍNGUA PORTUGUESA
- Sandro Nunes Henrique <sandro at conectiva.com.br> (tradução)
-+.br
- Rodrigo Stulzer Lopes <rodrigo at conectiva.com.br> (revisão)
-+.br
-+Guilherme de S. Pastore <gpastore at colband.com.br> (revisão)
Deleted: trunk/debian/patches/305_it-manpages.dpatch
===================================================================
--- trunk/debian/patches/305_it-manpages.dpatch 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/305_it-manpages.dpatch 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,1116 +0,0 @@
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/man/it/groupdel.8
-===================================================================
---- shadow-4.0.13.orig/man/it/groupdel.8 2005-04-05 21:08:54.000000000 +0200
-+++ shadow-4.0.13/man/it/groupdel.8 2005-10-12 22:36:52.000000000 +0200
-@@ -1,4 +1,7 @@
--.\" Copyright 1991 \- 1993, Julianne Frances Haugh
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: groupdel.8,v 1.1 2005/03/20 15:34:24 bubulle Exp $
-+.\" Copyright 1991 - 1993, Julianne Frances Haugh
- .\" All rights reserved.
- .\"
- .\" Redistribution and use in source and binary forms, with or without
-@@ -24,40 +27,52 @@
- .\" 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
-+.TH GROUPDEL 8
- .SH NOME
- groupdel \- Rimuove un gruppo
- .SH SINTASSI
--.B groupdel
--.I gruppo
-+\fBgroupdel\fP \fIgruppo\fP
- .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.
-+Il comando \fBgroupdel\fP modifica i file di account di sistema, rimuovendo
-+tutte le voci che si riferiscono a \fIgruppo\fP. 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.
-+Occorre controllare manualmente tutti i filesystem per assicurarsi che non
-+rimanga alcun file avente come ID di gruppo il gruppo specificato.
- .SH CAVEAT
--Non si può rimuovere il gruppo primario di qualche utente esistente.
-+Non si può rimuovere un gruppo che sia gruppo primario di un utente.
- Occorre rimuovere l'utente prima di rimuovere il gruppo.
- .SH FILE
--\fI/etc/group\fR \- informazioni sui gruppi
-+/etc/group \- informazioni sui gruppi
-+.br
-+/etc/gshadow \- informazioni sicure sui gruppi
-+.SH "VALORI RESTITUITI"
-+0 \- successo
-+.br
-+2 \- errore di sintassi
-+.br
-+6 \- il gruppo specificato non esiste
-+.br
-+8 \- operazione impossibile perché il gruppo è primario per un utente
- .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)
-+10 \- non è possibile aggiornare il file group
-+.SH "VEDERE ANCHE"
-+\fBchfn\fP(1), \fBchsh\fP(1), \fBpasswd\fP(1), \fBgroupadd\fP(8), \fBgroupmod\fP(8)
-+\fBuseradd\fP(8), \fBuserdel\fP(8), \fBusermod\fP(8),
- .SH AUTORE
--Julianne Frances Haugh (jfh at tab.com)
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.\" Questa sezione si trova in un file separato che viene aggiunto
-+.\" automaticamente alla pagina tradotta.
-+.\" Per semplicità ho usato lo stesso file per tutte le traduzioni,
-+.\" di conseguenza mischiando tutti i nomi dei traduttori: mi auguro
-+.\" che non sia un problema per nessuno.
-+.\" -- Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.SH TRADUZIONE
-+.nf
-+Giovanni Bortolozzo <borto at dei.unipd.it>, 1996-1997
-+Roberto Pertile <triplej at iol.it>, 1999
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+.fi
-+.\" Conversione a PO4A:
-+.\" Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-Index: shadow-4.0.13/man/it/passwd.1
-===================================================================
---- shadow-4.0.13.orig/man/it/passwd.1 2005-04-13 12:02:27.000000000 +0200
-+++ shadow-4.0.13/man/it/passwd.1 2005-10-12 22:36:52.000000000 +0200
-@@ -1,58 +1,197 @@
--.\" $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
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: passwd.1,v 1.1 2005/03/20 15:34:24 bubulle Exp $
-+.\" Copyright 1989 - 1994, Julianne Frances Haugh
-+.\" All rights reserved.
- .\"
--.\" Traduzione in italiano di Giovanni Bortolozzo <borto at dei.unipd.it>
--.\" Agosto 1996
-+.\" 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.
- .\"
--.\" " for hilit19
--.TH PASSWD 1 "22 giugno 1994" "Linux 1.2" "Linux Programmer's Manual"
-+.\" THIS SOFTWARE IS PROVIDED BY JULIE HAUGH AND CONTRIBUTORS ``AS IS'' AND
-+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+.\" ARE DISCLAIMED. IN NO EVENT SHALL JULIE HAUGH OR CONTRIBUTORS BE LIABLE
-+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+.\" SUCH DAMAGE.
-+.TH PASSWD 1
- .SH NOME
--passwd \- cambia la password
-+passwd \- cambia la password utente
- .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
-+\fBpasswd\fP [\fB\-f\fP|\fB\-s\fP] [\fInome\fP]
- .br
--.I /etc/shells
--.SH BACHI
--Sono permesse password composte solo da numeri.
-+\fBpasswd\fP [\fB\-g\fP] [\fB\-r\fP|\fB\-R\fP] \fIgruppo\fP
- .br
--Non viene prodotto nessun messaggio d'avviso se il superuser sceglie una
--password ``scadente''.
-+\fBpasswd\fP [\fB\-x \fP\fImax\fP] [\fB\-n \fP\fImin\fP] [\fB\-w \fP\fIwarn\fP] [\fB\-i \fP\fIinact\fP]
-+\fIlogin\fP
- .br
--Le opzioni
--.B \-f
--e
--.B \-s
--non sono supportare.
-+\fBpasswd\fP {\fB\-l\fP|\fB\-u\fP|\fB\-d\fP|\fB\-S\fP|\fB\-e\fP} \fIlogin\fP
-+.SH DESCRIZIONE
-+\fBpasswd\fP cambia la password per account utente o di gruppo. Un utente
-+normale può solo cambiare la password per il proprio account, mentre il
-+super utente può cambiarla per qualsiasi account. L'amministratore di un
-+gruppo può cambiare la password del gruppo. \fBpasswd\fP può cambiare altri
-+dati dell\'utente come il nome completo, la shell di login, la data e
-+l\'intervallo di scadenza della password.
-+.PP
-+L\'opzione \fB\-s\fP fa sì che \fBpasswd\fP chiami \fBchsh\fP per cambiare la shell
-+utente. L\'opzione \fB\-f\fP fa sì che passwd chiami chfn per cambiare le
-+informazioni GECOS dell\'utente. Queste due opzioni sono presenti solo per
-+compatibilità perché gli altri programmi possono essere chiamati
-+direttamente.
-+.SS "Modifiche delle password"
-+All\'utente viene prima chiesta la propria password attuale, se presente.
-+Questa password viene cifrata e confrontata con quella memorizzata.
-+All\'utente viene data solo una possibilità di inserire la password
-+corretta. Il super utente non ha questo obbligo.
-+.PP
-+Dopo che la password è stata inserita, vengono controllati i parametri
-+dell'invecchiamento delle password per verificare che l'utente possa
-+modificarla in questo momento. Se il risultato è negativo, \fBpasswd\fP non
-+fa cambiare la password ed esce.
-+.PP
-+All\'utente viene poi chiesta la nuova password. Viene misurata la
-+complessità della password. In linea di massima le password dovrebbero
-+contenere dai 6 agli 8 caratteri di uno o più dei seguenti insiemi:
-+.IP "" .5i
-+Lettere minuscole
-+.IP "" .5i
-+Lettere maiuscole
-+.IP "" .5i
-+Numeri da 0 a 9
-+.IP "" .5i
-+Segni di punteggiatura
-+.PP
-+Si deve fare attenzione a non inserire il carattere di cancellazione o di
-+kill (azzeramento della linea). \fBpasswd\fP non accetta password non
-+sufficientemente complesse.
-+.PP
-+Se la password viene accettata, \fBpasswd\fP la chiede una seconda volta e
-+confronta le due password. Le due password devono essere eguali affinché
-+la password venga accettata.
-+.SS "Password di gruppo"
-+Quando viene speficata l\'opzione \fB\-g\fP, viene cambiata la password per il
-+gruppo specificato. L\'utente deve essere il super utente oppure
-+l'amministratore del gruppo. La password corrente non viene richiesta.
-+L\'opzione \fB\-r\fP, assieme alla \fB\-g\fP elimina la password attuale dal
-+gruppo. Questo permette l'accesso al gruppo a tutti i membri.
-+.SS "Informazioni sulla scadenza della password"
-+Le informazioni sull\'invecchiamanto delle password possono essere
-+modificate dal super utente con le opzioni \fB\-x\fP, \fB\-n\fP, \fB\-w\fP e \fB\-i\fP.
-+L\'opzione \fB\-x\fP è usata per impostare il massimo numero di giorni per il
-+quale la password è valida. Dopo il numero \fImax\fP di giorni viene
-+richiesta la modifica della password. L\'opzione \fB\-n\fP è usata per
-+impostare il minimo numero di giorni prima che una password possa essere
-+modificata. L\'utente non potrà modificare la password prima che siano
-+passati \fImin\fP giorni. L\'opzione \fB\-w\fP è usata per impostare il numero di
-+giorni durante i quali l\'utente verrà avvisato che la propria password è
-+in scadenza. L'avviso parte \fIwarn\fP giorni prima della scadenza e riporta
-+il numero di giorni che ancora gli rimangono. L\'opzione \fB\-i\fP è usata per
-+disabilitare un account dopo che non è stato più usato per un certo numero
-+di giorni. Dopo che un account non è stato usato per \fIinact\fP giorni
-+successivi alla scadenza, l\'utente non può più accedere al sistema.
-+.PP
-+Se si vuole fare scadere subito una password, si può utilizzare l\'opzione
-+\fB\-e\fP. Questo in pratica obbliga l\'utente a inserire una nuova password al
-+successivo login. Si può anche utilizzare l\'opzione \fB\-d\fP per azzerare una
-+password. Usare questa opzione con attenzione perché potrebbe permettere
-+l\'accesso al sistema senza l\'utilizzo di una password, lasciando quindi
-+spazio di azione a intrusi.
-+.SS "Gestione dell\'account"
-+Gli account utente possono essere bloccati e sbloccati con i flag \fB\-l\fP e
-+\fB\-u\fP. L\'opzione \fB\-l\fP disabilita l\'account impostando la password ad un
-+valore che non corrisponde a nessuna possibile password cifrata. L\'opzione
-+\fB\-u\fP abilita un account impostando la password al suo valore precedente.
-+.PP
-+Lo stato attuale di un account può essere ispeziona con l\'opzione
-+\fB\-S\fP. Lo stato consiste di 7 campi. Il primo campo è il nome
-+dell\'utente. Il secondo campo indica se l\'account è bloccato (L), non ha
-+password (NP) o ha una password valida (P). Il terzo campo contiene la data
-+di ultima modifica della password. I successivi quattro campi sono l'età
-+minima, la massima, il periodi di avviso e quello di iniattività. Queste
-+età sono espresse in giorni. Vedere la precedente discussione su
-+\fBInformazioni sulla scadenza della password\fP per una discussione su questi
-+campi.
-+.SS "Suggerimenti per password utente"
-+La sicurezza di una password dipende dalla resistenza dell\'algoritmo e
-+dalla dimensione della chiave utilizzata. Il metodi di cifratura del
-+sistema \fB\s-2UNIX\s+2\fP si basa sull'algoritmo NBS DES ed è abbastanza
-+sicuro. La dimensione della chiave dipende dall aleatorità della password
-+che viene utilizzata.
-+.PP
-+La compromissione di una password avviene normalmente a seguito di incuria
-+nella scelta o nella gestione della password. Per questo motivo non si
-+devono utilizzare password che appaiono nei dizionari o che devono essere
-+scritte. La password non deve essere uno nome proprio, il numero della
-+patente, la data di nascita o l'indirizzo. Uno qualunque di questi potrebbe
-+essere indovinato per violare la sicurezza del sistema.
-+.PP
-+La password deve essere facile da ricordare in modo tale da non essere
-+costretti a scriversela. Un modo per farlo è quello di concatenare due
-+parole brevi separandole con della punteggiatura o un numero. Per esempio
-+Pass%word.
-+.PP
-+Un altro metodo di costruzione di implica la selezione di una frase imparata
-+a memoria perché presente in letteratura, selezionandone le prime o ultime
-+lettere di ogni parola. Un esempio di questo tipo è
-+.IP "" .5i
-+Non chiedere per chi suona la campana.
-+.PP
-+che produce
-+.IP "" .5i
-+NcXcslc.
-+.PP
-+Si può essere abbastanza certi che pochi malintenzionati l\'abbiano inclusa
-+nel proprio dizionario. Si dovrebbe, comunque, selezionare un proprio
-+metodo per contruire password e non affidarsi esclusivamente a quelli
-+proposti qui.
-+.SS "Note sulle password di gruppo"
-+Le password di gruppo non un problema di sicurezza perché più di una
-+persona deve conoscerle. Ciononostante i gruppi sono uno strumento molto
-+utile per la cooperazione tra vari utenti.
-+.SH CAVEAT
-+Non tutte le opzioni potrebbero essere supportate. Il controllo della
-+complessità delle password varia da sistema a sistema. L\'utente deve
-+poter selezionare la possibilità di selezionare una password che ritenga
-+sufficientemente complessa. Gli utenti potrebbero non essere in condizione
-+di modificare la propria password se NIS è abilitato e loro non hanno fatto
-+il login sul server NIS.
-+.SH FILE
-+.TP
-+\fI/etc/passwd\fP
-+informazioni sugli account utente
-+.TP
-+\fI/etc/shadow\fP
-+password utenti cifrate
- .SH "VEDERE ANCHE"
--.BR group (5),
--.BR passwd (5),
--.BR shadow (5)
-+\fBgroup\fP(5), \fBpasswd\fP(5), \fBshadow\fP(5)
- .SH AUTORE
--Peter Orbaek (poe at daimi.aau.dk)
-+Julianne Frances Haugh <jockgrrl at ix.netcom.com>
-+.\" Questa sezione si trova in un file separato che viene aggiunto
-+.\" automaticamente alla pagina tradotta.
-+.\" Per semplicità ho usato lo stesso file per tutte le traduzioni,
-+.\" di conseguenza mischiando tutti i nomi dei traduttori: mi auguro
-+.\" che non sia un problema per nessuno.
-+.\" -- Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.SH TRADUZIONE
-+.nf
-+Giovanni Bortolozzo <borto at dei.unipd.it>, 1996-1997
-+Roberto Pertile <triplej at iol.it>, 1999
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+.fi
-+.\" Conversione a PO4A:
-+.\" Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-Index: shadow-4.0.13/man/it/pwconv.8
-===================================================================
---- shadow-4.0.13.orig/man/it/pwconv.8 2002-03-10 08:41:06.000000000 +0100
-+++ shadow-4.0.13/man/it/pwconv.8 2005-10-12 22:36:53.000000000 +0200
-@@ -1,58 +1,69 @@
--.\" $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"
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: pwconv.8,v 1.1 2005/03/20 15:34:24 bubulle Exp $
-+.TH PWCONV 8 "26 sep 1997"
- .SH NOME
--pwconv, pwunconv, grpconv, grpunconv \- convertono a e da password e gruppi shadow.
-+pwconv, pwunconv, grpconv, grpunconv \- convertono a e da password e gruppi
-+shadow.
- .SH SINTASSI
--.B pwconv
-+\fBpwconv\fP
- .br
--.B pwunconv
-+\fBpwunconv\fP
- .br
--.B grpconv
-+\fBgrpconv\fP
- .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 .
-+\fBgrpunconv\fP
-+.SH DESCRIZIONE
-+Questi quattro programmi agiscono tutti sui file normali e oscurati (shadow)
-+delle password e dei gruppi: \fI/etc/passwd\fP, \fI/etc/group\fP, \fI/etc/shadow\fP e
-+\fI/etc/gshadow\fP.
-+
-+\fBpwconv\fP crea \fIshadow\fP da \fIpasswd\fP e, in modo opzionale, da un
-+preesistente \fIshadow\fP. \fBpwunconv\fP crea \fIpasswd\fP da \fIpasswd\fP e \fIshadow\fP
-+e quindi rimuove \fIshadow\fP. \fBgrpconv\fP crea \fIgshadow\fP da \fIgroup\fP e, in
-+modo opzionale, da un preesistente \fIgshadow\fP. \fBgrpunconv\fP crea \fIgroup\fP
-+da \fIgroup\fP e \fIgshadow\fP e quindi rimuove \fIgshadow\fP.
-
- 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à.
-+\fBpwconv\fP e \fBgrpconv\fP 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.
-+
-+\fBpwconv\fP userà i valori di \fBPASS_MIN_DAYS\fP, \fBPASS_MAX_DAYS\fP e
-+\fBPASS_WARN_AGE\fP da \fI/etc/login.defs\fP quando si aggiungono nuove voci a
-+\fI/etc/shadow\fP.
-+
-+Analogamente, \fBpwunconv\fP e \fBgrpunconv\fP 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
-+\fBpwunconv\fP. Convertirà solo quello che potrà.
-+.SH PROBLEMI
-+Errors in the password or group files (such as invalid or duplicate entries)
-+may cause these programs to loop forever or fail in other strange ways.
-+Please run \fBpwck\fP and \fBgrpck\fP to correct any such errors before converting
-+to or from shadow passwords or groups.
- .SH "VEDERE ANCHE"
--.BR login.defs (5),
--.BR shadowconfig (8)
-+\fBlogin.defs\fP(5), \fBshadowconfig\fP(8), \fBpwck\fP(8)
-+.\" Questa sezione si trova in un file separato che viene aggiunto
-+.\" automaticamente alla pagina tradotta.
-+.\" Per semplicità ho usato lo stesso file per tutte le traduzioni,
-+.\" di conseguenza mischiando tutti i nomi dei traduttori: mi auguro
-+.\" che non sia un problema per nessuno.
-+.\" -- Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.SH TRADUZIONE
-+.nf
-+Giovanni Bortolozzo <borto at dei.unipd.it>, 1996-1997
-+Roberto Pertile <triplej at iol.it>, 1999
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+.fi
-+.\" Conversione a PO4A:
-+.\" Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-Index: shadow-4.0.13/man/it/useradd.8
-===================================================================
---- shadow-4.0.13.orig/man/it/useradd.8 2005-04-05 21:08:54.000000000 +0200
-+++ shadow-4.0.13/man/it/useradd.8 2005-10-12 22:36:53.000000000 +0200
-@@ -1,4 +1,7 @@
--.\" Copyright 1991 \- 1994, Julianne Frances Haugh
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: useradd.8,v 1.1 2005/03/20 15:34:24 bubulle Exp $
-+.\" Copyright 1991 - 1994, Julianne Frances Haugh
- .\" All rights reserved.
- .\"
- .\" Redistribution and use in source and binary forms, with or without
-@@ -24,175 +27,140 @@
- .\" 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
-+.TH USERADD 8
- .SH NOME
--useradd \- Crea un nuovo utente o aggiorna le informazioni predefinite per
--i nuovi utenti
-+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
-+\fBuseradd\fP [\fB\-c\fP \fIcommento\fP] [\fB\-d\fP \fIhome_dir\fP]
-+.br
-+[\fB\-e\fP \fIdata_scadenza\fP] [\fB\-f\fP \fItempo_inattività\fP]
-+.br
-+[\fB\-g\fP \fIgruppo_iniziale\fP] [\fB\-G\fP \fIgruppo\fP[,...]]
-+.br
-+[\fB\-m\fP [\fB\-k\fP \fIdir_scheletro\fP]] [ \fB\-o\fP] [\fB\-p\fP \fIpassword\fP]
-+.br
-+[\fB\-s\fP \fIshell\fP] [\fB\-u\fP \fIuid\fP] \fIlogin\fP
- .TP 8
--.B useradd
--\fB\-D\fR
--[\fB\-g\fI gruppo_predefinito\fR]
--[\fB\-b\fI home_predefinita\fR]
-+\fBuseradd\fP \fB\-D\fP [\fB\-g\fP\fIgruppo_predefinito\fP] [\fB\-b\fP\fIhome_predefinita\fP]
- .br
--[\fB\-f\fI inattività_predefinita\fR]
--[\fB\-e\fI data_scadenza_predefinita\fR]
-+[\fB\-e\fP\fI data_scadenza_predefinita\fP] [\fB\-f\fP\fI inattività_predefinita\fP]
- .br
--[\fB\-s\fI shell_predefinita\fR]
-+[\fB\-s\fP\fI shell_predefinita\fP]
- .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"
-+.SS "Creare Nuovi Utenti"
-+Quando viene invocato senza l'opzione \fB\-D\fP, il comando \fBuseradd\fP 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. Le opzioni che si applicano al comando \fBuseradd\fP
-+sono
-+.IP "\fB\-c \fP\fIcommento\fP"
- 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"
-+.IP "\fB\-d \fP\fIhome_dir\fP"
-+Il nuovo utente verrà creato usando \fIhome_dir\fP come valore per la
-+directory di login dell'utente. Il comportamento predefinito è di
-+appendere il nome \fIlogin\fP a \fIhome_predefinita\fP ed usare quella come nome
-+di directory di login.
-+.IP "\fB\-e \fP\fIdata_scadenza\fP"
-+La data in cui l'account dell'utente verrà disabilitato. La data è
-+specificata nel formato \fIMM/GG/AA\fP.
-+.IP "\fB\-f \fP\fIgiorni_inattività\fP"
-+Il numero di giorni dopo la scadenza della password prima che l'account
-+verrà permanentemente disabilitato. Un valore pari a 0 disabilita
-+l'account non appena la password è scaduta, ed un valore pari a \-1
-+disabilita questa caratteristica. Il valore predefinito è \-1.
-+.IP "\fB\-g \fP\fIgruppo_iniziale\fP"
-+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 \fP\fIgruppo,[...]\fP"
-+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\fP. Il comportamento predefinito è che
-+l'utente appartenga solo al gruppo iniziale.
-+.IP \fB\-m\fP
-+La home directory dell'utente verrà creata se non esiste. I file contenuti
-+in \fIdir_scheletro\fP saranno copiati nella home directory se viene usata
-+l'opzione \fB\-k\fP, altrimenti verranno usati i file contenuti in
-+\fI/etc/skel\fP. Anche tutte le directory contenute in \fIdir_scheletro\fP o
-+\fI/etc/skel\fP verranno create nella home directory dell'utente. L'opzione
-+\fB\-k\fP è valida solo in congiunzione con l'opzione \fB\-m\fP. Il comportamento
-+predefinito è di non creare la directory e di non copiarvi alcun file.
-+.IP \fB\-o\fP
-+Allow create user with duplicate (non\-unique) UID.
-+.IP "\fB\-p \fP\fIpasswd\fP"
-+The encrypted password, as returned by \fBcrypt\fP(3). The default is to
-+disable the account.
-+.IP "\fB\-s \fP\fIshell\fP"
-+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 \fP\fIuid\fP"
-+Il valore numerico dell'ID dell'utente. Questo valore deve essere univoco,
-+a meno che non venga usata l'opzione \fI\-o\fP. Il valore deve essere
-+non\-negativo. Il comportamento predefinito è di usare il minimo valore di
-+ID superiore a 99 e superiore a quello di ogni altro utente. Valori tra 0 e
-+99 sono tipicamente riservati per account di sistema.
-+.SS "Cambiare i valori predefiniti"
-+Quando invocato con l'opzione \fB\-D\fP, \fBuseradd\fP o mostrerà i valori
-+predefiniti correnti, oppure aggiornerà i valori predefiniti dalla linea di
-+comando. Le opzioni valide sono
-+.IP "\fB\-b \fP\fIhome_predefinita\fP"
-+Il prefisso del percorso per la home directory del nuovo utente. Il nome
-+dell'utente verrà aggiunto alla fine di \fIhome_predefinita\fP per creare il
-+nome della nuova directory se non viene usata l'opzione \fB\-d\fP\fI quando si
-+crea un nuovo account.\fP
-+.IP "\fB\-e \fP\fIdata_scadenza_predefinita\fP"
- 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
-+.IP "\fB\-f \fP\fIinattività_predefinita\fP"
-+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.
-+.IP "\fB\-g \fP\fIgruppo_predefinito\fP"
-+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 \fP\fIshell_predifinita\fP"
-+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
-+Se non è specificata alcuna opzione, \fBuseradd\fP 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.
-+L'amministratore di sistema è responsabile del posizionamento dei file
-+predefiniti degli utenti nella directory \fI/etc/skel\fP.
- .SH CAVEAT
--Non è possibile aggiungere un utente ad un gruppo NIS.
--Questo deve essere fatto sul server NIS.
-+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
-+/etc/passwd \- informazioni sugli account utente
- .br
--\fI/etc/shadow\fR \- informazioni sicure sugli account di utenti
-+/etc/shadow \- informazioni sicure sugli account di utenti
- .br
--\fI/etc/group\fR \- informazioni sui gruppi
-+/etc/group \- informazioni sui gruppi
- .br
--\fI/etc/default/useradd\fR \- informazioni predefinite
-+/etc/default/useradd \- 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)
-+/etc/skel \- directory contenente i file predefiniti
-+.SH "VEDERE ANCHE"
-+\fBchfn\fP(1), \fBchsh\fP(1), \fBgroupadd\fP(8), \fBgroupdel\fP(8), \fBgroupmod\fP(8),
-+\fBpasswd\fP(1), \fBuserdel\fP(8), \fBusermod\fP(8)
- .SH AUTORE
--Julianne Frances Haugh (jfh at tab.com)
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.\" Questa sezione si trova in un file separato che viene aggiunto
-+.\" automaticamente alla pagina tradotta.
-+.\" Per semplicità ho usato lo stesso file per tutte le traduzioni,
-+.\" di conseguenza mischiando tutti i nomi dei traduttori: mi auguro
-+.\" che non sia un problema per nessuno.
-+.\" -- Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.SH TRADUZIONE
-+.nf
-+Giovanni Bortolozzo <borto at dei.unipd.it>, 1996-1997
-+Roberto Pertile <triplej at iol.it>, 1999
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+.fi
-+.\" Conversione a PO4A:
-+.\" Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-Index: shadow-4.0.13/man/it/userdel.8
-===================================================================
---- shadow-4.0.13.orig/man/it/userdel.8 2005-04-05 21:08:54.000000000 +0200
-+++ shadow-4.0.13/man/it/userdel.8 2005-10-12 22:36:54.000000000 +0200
-@@ -1,4 +1,7 @@
--.\" Copyright 1991 \- 1994, Julianne Frances Haugh
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: userdel.8,v 1.1 2005/03/20 15:34:24 bubulle Exp $
-+.\" Copyright 1991 - 1994, Julianne Frances Haugh
- .\" All rights reserved.
- .\"
- .\" Redistribution and use in source and binary forms, with or without
-@@ -24,49 +27,62 @@
- .\" 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
-+.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
-+\fBuserdel\fP [\fB\-r\fP] \fIlogin\fP
- .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.
-+Il comando \fBuserdel\fP modifica i file di account del sistema, rimuovendo
-+tutte le voci che si riferiscono a \fIlogin\fP. L'utente nominato deve
-+esistere.
-+.IP \fB\-r\fP
-+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
-+/etc/passwd \- informazioni sugli account utente
-+.br
-+/etc/shadow \- informazioni sicure sugli account di utenti
-+.br
-+/etc/group \- informazioni sui gruppi
-+.SH "VALORI RESTITUITI"
-+0 \- successo
-+.br
-+1 \- can't update password file
-+.br
-+2 \- errore di sintassi
-+.br
-+6 \- specified user doesn't exist
-+.br
-+8 \- user currently logged in
- .br
--\fI/etc/shadow\fR \- informazioni sicure sugli account di utenti
-+10 \- non è possibile aggiornare il file group
- .br
--\fI/etc/group\fR \- informazioni sui gruppi
-+12 \- can't remove home directory
- .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)
-+\fBuserdel\fP 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"
-+\fBchfn\fP(1), \fBchsh\fP(1), \fBgroupadd\fP(8), \fBgroupdel\fP(8), \fBgroupmod\fP(8),
-+\fBpasswd\fP(1), \fBuseradd\fP(8), \fBusermod\fP(8)
- .SH AUTORE
--Julianne Frances Haugh (jfh at tab.com)
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.\" Questa sezione si trova in un file separato che viene aggiunto
-+.\" automaticamente alla pagina tradotta.
-+.\" Per semplicità ho usato lo stesso file per tutte le traduzioni,
-+.\" di conseguenza mischiando tutti i nomi dei traduttori: mi auguro
-+.\" che non sia un problema per nessuno.
-+.\" -- Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.SH TRADUZIONE
-+.nf
-+Giovanni Bortolozzo <borto at dei.unipd.it>, 1996-1997
-+Roberto Pertile <triplej at iol.it>, 1999
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+.fi
-+.\" Conversione a PO4A:
-+.\" Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-Index: shadow-4.0.13/man/it/usermod.8
-===================================================================
---- shadow-4.0.13.orig/man/it/usermod.8 2005-04-05 21:08:54.000000000 +0200
-+++ shadow-4.0.13/man/it/usermod.8 2005-10-12 22:36:55.000000000 +0200
-@@ -1,4 +1,7 @@
--.\" Copyright 1991 \- 1994, Julianne Frances Haugh
-+.\" This file was generated with po4a. Translate the source file.
-+.\"
-+.\"$Id: usermod.8,v 1.2 2005/04/04 18:25:39 bubulle Exp $
-+.\" Copyright 1991 - 1994, Julianne Frances Haugh
- .\" All rights reserved.
- .\"
- .\" Redistribution and use in source and binary forms, with or without
-@@ -24,119 +27,108 @@
- .\" 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
-+.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
-+\fBusermod\fP [\fB\-c\fP \fIcommento\fP] [\fB\-d\fP \fIhome_dir\fP [\fB\-m\fP]]
-+.br
-+[\fB\-e\fP \fIdata_scadenza\fP] [\fB\-f\fP \fItempo_inattività\fP]
-+.br
-+[\fB\-g\fP \fIgruppo_iniziale\fP] [\fB\-G\fP \fIgruppo\fP[,...]]
-+.br
-+[\fB\-l\fP \fInome_login\fP] [\fB\-p\fP \fIpassword\fP]
-+.br
-+[\fB\-s\fP \fIshell\fP] [\fB\-u\fP \fIuid\fP [ \fB\-o\fP]] [\fB\-L\fP|\fB\-U\fP] \fIlogin\fP
- .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.
-+Il comando \fBusermod\fP 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\fP sono
-+.IP "\fB\-c \fP\fIcommento\fP"
-+Il campo commento del nuovo utente nel file password. Normalmente viene
-+modificato usando l'utilità \fBchfn\fP(1).
-+.IP "\fB\-d \fP\fIhome_dir\fP"
-+La nuova directory di login dell'utente. Se è data l'opzione \fB\-m\fP il
-+contenuto della home directory corrente sarà spostato nella nuova home
-+directory, che viene creata se non esiste già.
-+.IP "\fB\-e \fP\fIdata_scadenza\fP"
-+La data in cui l'account dell'utente verrà disabilitato. La data è
-+specificata nel formato \fIMM/GG/AA\fP.
-+.IP "\fB\-f \fP\fIgiorni_inattività\fP"
-+Il numero di giorni dopo la scadenza della password prima che l'account
-+verrà permanentemente disabilitato. Un valore pari a 0 disabilita
-+l'account non appena la password è scaduta, ed un valore pari a \-1
-+disabilita questa caratteristica. Il valore predefinito è \-1.
-+.IP "\fB\-g \fP\fIgruppo_iniziale\fP"
-+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 \fP\fIgruppo,[...]\fP"
-+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\fP. Se l'utente è attualmente membro di un
-+gruppo che non è elencato, l'utente verrà rimosso dal gruppo.
-+.IP "\fB\-l \fP\fInome_login\fP"
-+Il nome dell'utente verrà cambiato da \fIlogin\fP a \fInome_login\fP. 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\-o\fP
-+Used with \fI\-r\fP option allow change user ID to non\-unique value.
-+.IP "\fB\-p \fP\fIpasswd\fP"
-+The encrypted password, as returned by \fBcrypt\fP(3).
-+.IP "\fB\-s \fP\fIshell\fP"
-+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 \fP\fIuid\fP"
-+Il valore numerico dell'ID dell'utente. Questo valore deve essere univoco,
-+a meno che non venga usata l'opzione \fI\-o\fP. Questo valore deve essere
-+non\-negativo. Valori tra 0 e 99 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.
-+.IP \fB\-L\fP
-+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\fP or
-+\fI\-U\fP.
-+.IP \fB\-U\fP
-+Unlock a user's password. This removes the '!' in front of the encrypted
-+password. You can't use this option with \fI\-p\fP or \fI\-L\fP.
- .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.
-+\fBusermod\fP 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
-+/etc/passwd \- informazioni sugli account utente
- .br
--\fI/etc/shadow\fR \- informazioni sicure sugli account di utenti
-+/etc/shadow \- 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)
-+/etc/group \- informazioni sui gruppi
-+.SH "VEDERE ANCHE"
-+\fBchfn\fP(1), \fBchsh\fP(1), \fBgroupadd\fP(8), \fBgroupdel\fP(8), \fBgroupmod\fP(8),
-+\fBpasswd\fP(1), \fBuseradd\fP(8), \fBuserdel\fP(8)
- .SH AUTORE
--Julianne Frances Haugh (jfh at tab.com)
-+Julianne Frances Haugh (jockgrrl at ix.netcom.com)
-+.\" Questa sezione si trova in un file separato che viene aggiunto
-+.\" automaticamente alla pagina tradotta.
-+.\" Per semplicità ho usato lo stesso file per tutte le traduzioni,
-+.\" di conseguenza mischiando tutti i nomi dei traduttori: mi auguro
-+.\" che non sia un problema per nessuno.
-+.\" -- Danilo Piazzalunga <danilopiazza at libero.it>, 2005
-+.SH TRADUZIONE
-+.nf
-+Giovanni Bortolozzo <borto at dei.unipd.it>, 1996-1997
-+Roberto Pertile <triplej at iol.it>, 1999
-+Isabella Ruocco <isacher at nettaxi.com>, 1999
-+Giuseppe Sacco <eppesuig at debian.org>, 2005
-+.fi
-+.\" Conversione a PO4A:
-+.\" Danilo Piazzalunga <danilopiazza at libero.it>, 2005
Deleted: trunk/debian/patches/306_ko-manpages.dpatch
===================================================================
--- trunk/debian/patches/306_ko-manpages.dpatch 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/306_ko-manpages.dpatch 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,17 +0,0 @@
-Goal: Do not distribute the Korean translation of newgrp.1, which seems
- outdated.
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.3/man/ko/Makefile.am
-===================================================================
---- shadow-4.0.3.orig/man/ko/Makefile.am 2002-03-13 20:02:02.000000000 +0100
-+++ shadow-4.0.3/man/ko/Makefile.am 2005-07-23 13:27:47.000000000 +0200
-@@ -5,7 +5,6 @@
- chfn.1 \
- chsh.1 \
- login.1 \
-- newgrp.1 \
- passwd.5
-
- EXTRA_DIST = $(man_MANS) \
Deleted: trunk/debian/patches/321_login.1_pishing
===================================================================
--- trunk/debian/patches/321_login.1_pishing 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/321_login.1_pishing 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,24 +0,0 @@
-Goal: document how to initiate a trusted path on linux.
-Fixes: #305600 by documenting that the answer is in the kernel.
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/man/login.1.xml
-===================================================================
---- shadow-4.0.13.orig/man/login.1.xml 2005-10-04 08:07:13.018678338 +0200
-+++ shadow-4.0.13/man/login.1.xml 2005-10-04 08:07:33.744455350 +0200
-@@ -184,6 +184,14 @@
- will continue to appear to be logged in even after you log out of the
- "subsession".
- </para>
-+
-+ <para>As any program, <command>login</command> appearance could be faked.
-+ If non-trusted users have a physical access to the machine, an attacker
-+ could use this to obtain the password of the next person sitting in front
-+ of the machine. Under Linux, the SAK mecanism can be used by users to
-+ initiate of a trusted path and prevent this kind of attack.
-+ </para>
-+
- </refsect1>
-
- <refsect1 id='files'>
Deleted: trunk/debian/patches/324_pwck.8_quiet_option
===================================================================
--- trunk/debian/patches/324_pwck.8_quiet_option 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/324_pwck.8_quiet_option 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,31 +0,0 @@
-Goal: document the -q option:
- -q can be used with -r
- -q just mask warnings, but if an action is necessary, it asks for
- the proper action.
-Fixes: 309408
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/man/pwck.8.xml
-===================================================================
---- shadow-4.0.13.orig/man/pwck.8.xml 2005-10-04 08:06:30.495342810 +0200
-+++ shadow-4.0.13/man/pwck.8.xml 2005-10-04 08:07:35.150168930 +0200
-@@ -28,6 +28,7 @@
- </cmdsynopsis>
- <cmdsynopsis>
- <command>pwck</command>
-+ <arg choice='opt'>-q </arg>
- <arg choice='opt'>-r </arg>
- <arg choice='opt'>
- <arg choice='plain'>
-@@ -104,8 +105,8 @@
- </term>
- <listitem>
- <para>
-- Report errors only. Using this option will not require an action
-- from the user.
-+ Report errors only. The warnings which do not require any
-+ action from the user won't be displayed.
- </para>
- </listitem>
- </varlistentry>
Deleted: trunk/debian/patches/327_chage_expiry_0
===================================================================
--- trunk/debian/patches/327_chage_expiry_0 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/327_chage_expiry_0 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,21 +0,0 @@
-Goal: Fix chage display when the last change field is set to 0.
- This is consistent with PAM.
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-cvs/src/chage.c
-===================================================================
---- shadow-cvs.orig/src/chage.c 2005-10-06 02:48:24.000000000 +0300
-+++ shadow-cvs/src/chage.c 2005-10-06 02:48:44.000000000 +0300
-@@ -234,8 +234,10 @@
- * was last modified. The date is the number of days since 1/1/1970.
- */
- printf (_("Last password change\t\t\t\t\t: "));
-- if (lastday <= 0) {
-+ if (lastday < 0) {
- printf (_("never\n"));
-+ } else if (lastday == 0) {
-+ printf (_("password must be changed"));
- } else {
- changed = lastday * SCALE;
- print_date (changed);
Deleted: trunk/debian/patches/335_su_addenv_HOME_and_SHELL
===================================================================
--- trunk/debian/patches/335_su_addenv_HOME_and_SHELL 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/335_su_addenv_HOME_and_SHELL 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,22 +0,0 @@
-Goal: Export USER and SHELL as well as HOME.
-Fixes: maybe #11003 and #11189
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:06:34.164595165 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:14.573361562 +0200
-@@ -668,8 +668,11 @@
- if (fakelogin)
- setup_env (&pwent);
- #if 1 /* Suggested by Joey Hess. XXX - is this right? */
-- else
-+ else {
- addenv ("HOME", pwent.pw_dir);
-+ addenv ("USER", pwent.pw_name);
-+ addenv ("SHELL", pwent.pw_shell);
-+ }
- #endif
-
- /*
Deleted: trunk/debian/patches/345_su_password_expired
===================================================================
--- trunk/debian/patches/345_su_password_expired 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/345_su_password_expired 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,46 +0,0 @@
-Goal: If an password is expired, su should propose to change this password.
- This is important in systems without ssh, sudo and where root can't
- login in console.
-Fix: #321384
-
-Status wrt upstream: Fixed in 4.0.14
-
-Note: When su is not compiled with PAM, there is no syslog messages.
-
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:07:34.443312955 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:38.039580199 +0200
-@@ -702,6 +702,16 @@
- if (amroot) {
- fprintf (stderr, _("%s: %s\n(Ignored)\n"), Prog,
- pam_strerror (pamh, ret));
-+ } else if (ret == PAM_NEW_AUTHTOK_REQD) {
-+ ret = pam_chauthtok (pamh, PAM_CHANGE_EXPIRED_AUTHTOK);
-+ if (ret != PAM_SUCCESS) {
-+ SYSLOG ((LOG_ERR, "pam_chauthtok: %s",
-+ pam_strerror (pamh, ret)));
-+ fprintf (stderr, _("%s: %s\n"), Prog,
-+ pam_strerror (pamh, ret));
-+ pam_end (pamh, ret);
-+ su_failure (tty);
-+ }
- } else {
- SYSLOG ((LOG_ERR, "pam_acct_mgmt: %s",
- pam_strerror (pamh, ret)));
-@@ -747,10 +757,11 @@
- if (!spwd)
- spwd = pwd_to_spwd (&pwent);
-
-- if (isexpired (&pwent, spwd)) {
-- SYSLOG ((pwent.pw_uid ? LOG_WARN : LOG_CRIT,
-- "Expired account %s", name));
-- su_failure (tty);
-+ if (expire (&pwent, spwd)) {
-+ struct passwd *pwd = getpwnam (name);
-+ spwd = getspnam (name);
-+ if (pwd)
-+ pwent = *pwd;
- }
- }
-
Deleted: trunk/debian/patches/347_missing_login.defs_variables
===================================================================
--- trunk/debian/patches/347_missing_login.defs_variables 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/347_missing_login.defs_variables 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,31 +0,0 @@
-Goal: get the right set of variables in the getdef table.
-MAIL_FILE is used in userdel and usermod.
-
-MD5_CRYPT_ENAB is used by crypt_make_salt, which is used by chpasswd,
- gpasswd and newusers
-
-Status wrt upstream: will be fixed in 4.0.14
-
-
-Index: shadow-4.0.13/lib/getdef.c
-===================================================================
---- shadow-4.0.13.orig/lib/getdef.c 2005-10-04 08:07:25.860061834 +0200
-+++ shadow-4.0.13/lib/getdef.c 2005-10-04 08:07:38.742436989 +0200
-@@ -69,6 +69,8 @@
- {"LOG_OK_LOGINS", NULL},
- {"LOG_UNKFAIL_ENAB", NULL},
- {"MAIL_DIR", NULL},
-+ {"MAIL_FILE", NULL},
-+ {"MD5_CRYPT_ENAB", NULL},
- {"PASS_MAX_DAYS", NULL},
- {"PASS_MIN_DAYS", NULL},
- {"PASS_WARN_AGE", NULL},
-@@ -93,8 +95,6 @@
- {"LASTLOG_ENAB", NULL},
- {"LOGIN_STRING", NULL},
- {"MAIL_CHECK_ENAB", NULL},
-- {"MAIL_FILE", NULL},
-- {"MD5_CRYPT_ENAB", NULL},
- {"MOTD_FILE", NULL},
- {"NOLOGINS_FILE", NULL},
- {"OBSCURE_CHECKS_ENAB", NULL},
Deleted: trunk/debian/patches/353_userdel_-f_removes_group
===================================================================
--- trunk/debian/patches/353_userdel_-f_removes_group 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/353_userdel_-f_removes_group 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,27 +0,0 @@
-Goal: make the -f option force the removal of the user's group (even if it
- is the primary group of another user)
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/src/userdel.c
-===================================================================
---- shadow-4.0.13.orig/src/userdel.c 2005-10-12 00:47:01.000000000 +0200
-+++ shadow-4.0.13/src/userdel.c 2005-10-12 01:00:39.000000000 +0200
-@@ -172,6 +172,9 @@
- if (grp && getdef_bool ("USERGROUPS_ENAB")
- && (grp->gr_mem[0] == NULL)) {
-
-+ pwd = NULL;
-+ if (!fflg)
-+ {
- /*
- * Scan the passwd file to check if this group is still
- * used as a primary group.
-@@ -189,6 +192,7 @@
- }
- }
- endpwent ();
-+ }
-
- if (pwd == NULL) {
- /*
Deleted: trunk/debian/patches/355_userdel.8.xml
===================================================================
--- trunk/debian/patches/355_userdel.8.xml 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/355_userdel.8.xml 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,79 +0,0 @@
-Goal: Document the -f option
- Document the group removal behavior.
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/man/userdel.8.xml
-===================================================================
---- shadow-4.0.13.orig/man/userdel.8.xml 2005-09-30 18:16:21.000000000 +0200
-+++ shadow-4.0.13/man/userdel.8.xml 2005-10-12 01:16:05.000000000 +0200
-@@ -15,6 +15,7 @@
- <cmdsynopsis>
- <command>userdel</command>
- <arg choice='opt'>-r </arg>
-+ <arg choice='opt'>-f </arg>
- <arg choice='plain'>
- <replaceable>login_name</replaceable>
- </arg>
-@@ -47,6 +48,34 @@
- located in other file systems will have to be searched for and
- deleted manually.
- </para>
-+ <para>
-+ The mail spool is defined by the <emphasis>MAIL_DIR</emphasis>
-+ variable in the <filename>login.defs</filename> file.
-+ </para>
-+ </listitem>
-+ </varlistentry>
-+ <varlistentry>
-+ <term>
-+ <option>-f</option>
-+ </term>
-+ <listitem>
-+ <para>
-+ This option forces the removal of the user, even if she is
-+ still logged in.
-+ It also forces <command>userdel</command> to remove the user's
-+ home directory or her mail spool, even if another user uses
-+ the same home directory or if the mail spool is not owned by
-+ the specified user.
-+ If <emphasis>USERGROUPS_ENAB</emphasis> is defined to
-+ <emphasis remap='I'>yes</emphasis> in
-+ <filename>/etc/login.defs</filename> and if a group exists
-+ with the same name as the deleted user, then this group will
-+ be removed, even if it is still the primary group of another
-+ user.
-+ </para>
-+ <para><emphasis>Note:</emphasis> This option is dangerous and may
-+ let your system in an inconsistent state.
-+ </para>
- </listitem>
- </varlistentry>
- </variablelist>
-@@ -135,12 +164,21 @@
-
- <refsect1 id='caveats'>
- <title>CAVEATS</title>
-- <para>
-- <command>userdel</command> will not allow you to remove an account if
-+ <para><command>userdel</command> will not allow you to remove an account if
- the user is currently logged in. You must kill any running processes
-- which belong to an account that you are deleting. You may not remove
-- any NIS attributes on a NIS client. This must be performed on the NIS
-- server.
-+ which belong to an account that you are deleting.
-+ </para>
-+ <para>You may not remove any NIS attributes on a NIS client. This must
-+ be performed on the NIS server.
-+ </para>
-+ <para>If <emphasis>USERGROUPS_ENAB</emphasis> is defined to <emphasis
-+ remap='I'>yes</emphasis> in <filename>/etc/login.defs</filename>,
-+ <command>userdel</command> will delete the group with the same name
-+ as the user. To avoid inconsistencies in the passwd and group
-+ databases, <command>userdel</command> will check that this group is
-+ not used as a primary group for another user, and will just warn
-+ without deleting the user otherwise. The <option>-f</option> option
-+ can force the deletion of this group.
- </para>
- </refsect1>
-
Deleted: trunk/debian/patches/356_configure_typo_logdir
===================================================================
--- trunk/debian/patches/356_configure_typo_logdir 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/356_configure_typo_logdir 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,19 +0,0 @@
-Goal: Fix a typo in configure.in
-
-Thanks to Mike Frysinger <vapier at gentoo.org>
-
-Status wrt upstream: applied in 4.0.14
-
-Index: shadow-4.0.13/configure.in
-===================================================================
---- shadow-4.0.13.orig/configure.in 2005-10-12 00:47:01.000000000 +0200
-+++ shadow-4.0.13/configure.in 2005-10-12 01:20:48.000000000 +0200
-@@ -170,7 +170,7 @@
-
- AC_CACHE_CHECK([location of faillog/lastlog/wtmp], shadow_cv_logdir,
- [for shadow_cv_logdir in /var/log /var/adm /usr/adm /etc; do
-- if test -d $logdir; then
-+ if test -d $shadow_cv_logdir; then
- break
- fi
- done])
Deleted: trunk/debian/patches/357_document_useradd_groupadd_nis
===================================================================
--- trunk/debian/patches/357_document_useradd_groupadd_nis 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/357_document_useradd_groupadd_nis 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,45 +0,0 @@
-Goal: Document that useradd/groupadd refuse adding entries already in an
- external database.
-
-Fixes: #282184
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/man/groupadd.8.xml
-===================================================================
---- shadow-4.0.13.orig/man/groupadd.8.xml 2005-09-30 18:16:20.000000000 +0200
-+++ shadow-4.0.13/man/groupadd.8.xml 2005-10-14 19:21:31.889986342 +0200
-@@ -139,6 +139,15 @@
- follow. In regular expression terms: [a-z_][a-z0-9_-]*[$]
- </para>
- <para>Groupnames may only be up to 16 characters long.</para>
-+
-+ <para>
-+ If the groupname already exists in an external group database
-+ such as NIS, <command>groupadd</command> will deny the group
-+ creation request.
-+ </para>
-+
-+ <para>Groupnames may only be up to 16 characters long.</para>
-+
- </refsect1>
-
- <refsect1 id='exit_values'>
-Index: shadow-4.0.13/man/useradd.8.xml
-===================================================================
---- shadow-4.0.13.orig/man/useradd.8.xml 2005-10-14 19:20:57.559973008 +0200
-+++ shadow-4.0.13/man/useradd.8.xml 2005-10-14 19:21:41.078116422 +0200
-@@ -348,6 +348,13 @@
- You may not add a user to a NIS group. This must be performed on the
- NIS server.
- </para>
-+
-+ <para>
-+ Similarly, if the username already exists in an external group
-+ database such as NIS, <command>useradd</command> will deny
-+ the user account creation request.
-+ </para>
-+
- <para>
- Usernames must begin with a lower case letter or an underscore, and
- only lower case letters, underscores, dashes, and dollar signs may
Deleted: trunk/debian/patches/358_manpages_typos
===================================================================
--- trunk/debian/patches/358_manpages_typos 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/358_manpages_typos 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,47 +0,0 @@
-Goal: Fixe some typos.
-
-Status wrt upstream: Fixed in CVS for 4.0.14
-
-Fixes: #333995, #333994, #333993
-
-Thanks to A Costa <agcosta at gis.net>
-
-Index: shadow-4.0.13/man/chage.1.xml
-===================================================================
---- shadow-4.0.13.orig/man/chage.1.xml 2005-10-15 01:47:48.000000000 +0200
-+++ shadow-4.0.13/man/chage.1.xml 2005-10-15 01:49:49.000000000 +0200
-@@ -127,7 +127,7 @@
- When <replaceable>MAX_DAYS</replaceable> plus
- <replaceable>LAST_DAY</replaceable> is less than the current
- day, the user will be required to change her password before
-- being able to use her account. This occurence can be planned for
-+ being able to use her account. This occurrence can be planned for
- in advance by use of the <option>-W</option> option, which
- provides the user with advance warning.
- </para>
-Index: shadow-4.0.13/man/chpasswd.8.xml
-===================================================================
---- shadow-4.0.13.orig/man/chpasswd.8.xml 2005-10-15 01:47:48.000000000 +0200
-+++ shadow-4.0.13/man/chpasswd.8.xml 2005-10-15 01:49:49.000000000 +0200
-@@ -34,7 +34,7 @@
- </para>
- <para>
- By default the supplied password must be in clear-text. Default
-- encription algoritm is DES. Also the password age will be updated, if
-+ encription algorithm is DES. Also the password age will be updated, if
- present.
- </para>
- <para>
-Index: shadow-4.0.13/man/faillog.5.xml
-===================================================================
---- shadow-4.0.13.orig/man/faillog.5.xml 2005-10-15 01:47:48.000000000 +0200
-+++ shadow-4.0.13/man/faillog.5.xml 2005-10-15 01:49:49.000000000 +0200
-@@ -19,7 +19,7 @@
- record, indexed by numerical UID. Each record contains the count of
- login failures since the last successful login; the maximum number of
- failures before the account is disabled; the line the last login
-- failure occured on; and the date the last login failure occured.
-+ failure occurred on; and the date the last login failure occurred.
- </para>
-
- <para>The structure of the file is:</para>
Deleted: trunk/debian/patches/360_vipw-quiet
===================================================================
--- trunk/debian/patches/360_vipw-quiet 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/360_vipw-quiet 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,53 +0,0 @@
-Goal: Add a "quiet" mode to vipw and have it display on stdout
-
-Fixes: #190252
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13/src/vipw.c
-===================================================================
---- shadow-4.0.13.orig/src/vipw.c 2005-10-27 14:28:08.238320024 +0200
-+++ shadow-4.0.13/src/vipw.c 2005-10-27 14:36:15.101305600 +0200
-@@ -45,6 +45,7 @@
- static const char *progname, *filename, *fileeditname;
- static int filelocked = 0, createedit = 0;
- static int (*unlock) (void);
-+static int quiet = 0;
-
- /* local function prototypes */
- static int create_backup_file (FILE *, const char *, struct stat *);
-@@ -104,7 +105,8 @@
- fprintf (stderr, "%s: %s", progname, msg);
- if (syserr)
- fprintf (stderr, ": %s", strerror (err));
-- fprintf (stderr, _("\n%s: %s is unchanged\n"), progname, filename);
-+ if (!quiet)
-+ fprintf (stdout, _("\n%s: %s is unchanged\n"), progname, filename);
- exit (ret);
- }
-
-@@ -218,13 +220,15 @@
- progname = ((c = strrchr (*argv, '/')) ? c + 1 : *argv);
- do_vipw = (strcmp (progname, "vigr") != 0);
-
-- while ((flag = getopt (argc, argv, "ghps")) != EOF) {
-+ while ((flag = getopt (argc, argv, "ghpqs")) != EOF) {
- switch (flag) {
- case 'g':
- do_vipw = 0;
- break;
- case 'h':
- e = 0;
-+ case 'q':
-+ quiet = 1;
- case 'p':
- do_vipw = 1;
- break;
-@@ -235,6 +239,7 @@
- printf (_("Usage:\n\
- `vipw' edits /etc/passwd `vipw -s' edits /etc/shadow\n\
- `vigr' edits /etc/group `vigr -s' edits /etc/gshadow\n\
-+`{vipw|vigr} -q' quiet mode\n\
- "));
- exit (e);
- }
Deleted: trunk/debian/patches/367_usermod_longopts
===================================================================
--- trunk/debian/patches/367_usermod_longopts 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/367_usermod_longopts 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,377 +0,0 @@
-Goal: Add long options to usermod
-
-Fixes: #260149
-
-Status wrt upstream: Fixed in 4.0.14
-
-Index: shadow-4.0.13.old/src/usermod.c
-===================================================================
---- shadow-4.0.13.old.orig/src/usermod.c 2005-10-27 22:38:04.679596845 +0200
-+++ shadow-4.0.13.old/src/usermod.c 2005-10-31 08:56:42.910962461 +0100
-@@ -35,6 +35,7 @@
- #include <ctype.h>
- #include <errno.h>
- #include <fcntl.h>
-+#include <getopt.h>
- #include <grp.h>
- #include <lastlog.h>
- #include <pwd.h>
-@@ -272,16 +273,28 @@
- */
- static void usage (void)
- {
-- fprintf (stderr,
-- _
-- ("Usage: %s\t[-u uid [-o]] [-g group] [[-G group,...] [-a]] \n"),
-- Prog);
-- fprintf (stderr,
-- _
-- ("\t\t[-d home [-m]] [-s shell] [-c comment] [-l new_name]\n"));
-- fprintf (stderr, "\t\t");
-- fprintf (stderr, _("[-f inactive] [-e expire] "));
-- fprintf (stderr, _("[-p passwd] [-L|-U] name\n"));
-+ fprintf (stderr, _("Usage: usermod [options] LOGIN\n"
-+ "\n"
-+ "Options:\n"
-+ " -c, --comment COMMENT new value of the GECOS field\n"
-+ " -d, --home-dir HOME_DIR new login directory for the new user account\n"
-+ " -m, --move Use -m option to move data to \n"
-+ " the new directory\n"
-+ " -e, --expiredate EXPIRE_DATE set account expiration date to EXPIRE_DATE\n"
-+ " -f, --inactive INACTIVE set password inactive after expiration\n"
-+ " to INACTIVE\n"
-+ " -g, --gid GROUP force use GROUP as new initial login group\n"
-+ " -G, --groups GROUPS list of supplementary groups\n"
-+ " -a, --append Use -a option to append the user\n"
-+ " to the supplemental groups\n"
-+ " -h, --help display this help message and exit\n"
-+ " -l, --new-login LOGIN new value of the login name\n"
-+ " -L, --lock lock the user account\n"
-+ " -o, --non-unique allow using duplicate (non-unique) UID\n"
-+ " -p, --password PASSWORD use encrypted password for the new password\n"
-+ " -s, --shell SHELL new login shell for the user account\n"
-+ " -u, --uid UID new UID for the user account\n"
-+ " -U, --unlock unlock the user account\n"));
- exit (E_USAGE);
- }
-
-@@ -885,159 +898,186 @@
- #endif
- }
-
-- while ((arg = getopt (argc, argv, "ac:d:e:f:g:G:l:Lmop:s:u:U")) != EOF) {
-- switch (arg) {
-- case 'a':
-- aflg++;
-- break;
-- case 'c':
-- if (!VALID (optarg)) {
-- fprintf (stderr,
-- _("%s: invalid field `%s'\n"),
-- Prog, optarg);
-- exit (E_BAD_ARG);
-- }
-+ {
-+ /*
-+ * Parse the command line options.
-+ */
-+ int c;
-+ static struct option long_options[] = {
-+ {"append", required_argument, NULL, 'a'},
-+ {"comment", required_argument, NULL, 'c'},
-+ {"home-dir", required_argument, NULL, 'd'},
-+ {"expiredate", required_argument, NULL, 'e'},
-+ {"inactive", required_argument, NULL, 'f'},
-+ {"gid", required_argument, NULL, 'g'},
-+ {"groups", required_argument, NULL, 'G'},
-+ {"help", no_argument, NULL, 'h'},
-+ {"new-login", required_argument, NULL, 'l'},
-+ {"lock", no_argument, NULL, 'L'},
-+ {"move", no_argument, NULL, 'm'},
-+ {"non-unique", no_argument, NULL, 'o'},
-+ {"password", required_argument, NULL, 'p'},
-+ {"shell", required_argument, NULL, 's'},
-+ {"uid", required_argument, NULL, 'u'},
-+ {"unlock", no_argument, NULL, 'U'},
-+ {NULL, 0, NULL, '\0'}
-+ };
-+ while ((c =
-+ getopt_long (argc, argv, "ac:d:e:f:g:G:l:Lmop:s:u:U",
-+ long_options, NULL)) != -1) {
-+ switch (c) {
-+ case 'a':
-+ aflg++;
-+ break;
-+ case 'c':
-+ if (!VALID (optarg)) {
-+ fprintf (stderr,
-+ _("%s: invalid field `%s'\n"),
-+ Prog, optarg);
-+ exit (E_BAD_ARG);
-+ }
- #ifdef WITH_AUDIT
-- user_newcomment = optarg;
-+ user_newcomment = optarg;
- #else
-- user_comment = optarg;
-+ user_comment = optarg;
- #endif
-- cflg++;
-- break;
-- case 'd':
-- if (!VALID (optarg)) {
-- fprintf (stderr,
-- _("%s: invalid field `%s'\n"),
-- Prog, optarg);
-- exit (E_BAD_ARG);
-- }
-- dflg++;
-- user_newhome = optarg;
-- break;
-- case 'e':
-- if (*optarg) {
-+ cflg++;
-+ break;
-+ case 'd':
-+ if (!VALID (optarg)) {
-+ fprintf (stderr,
-+ _("%s: invalid field `%s'\n"),
-+ Prog, optarg);
-+ exit (E_BAD_ARG);
-+ }
-+ dflg++;
-+ user_newhome = optarg;
-+ break;
-+ case 'e':
-+ if (*optarg) {
- #ifdef WITH_AUDIT
-- user_newexpire = strtoday (optarg);
-- if (user_newexpire == -1) {
-+ user_newexpire = strtoday (optarg);
-+ if (user_newexpire == -1) {
- #else
-- user_expire = strtoday (optarg);
-+ user_expire = strtoday (optarg);
- if (user_expire == -1) {
- #endif
-- fprintf (stderr,
-- _
-- ("%s: invalid date `%s'\n"),
-- Prog, optarg);
-- exit (E_BAD_ARG);
-- }
-+ fprintf (stderr,
-+ _
-+ ("%s: invalid date `%s'\n"),
-+ Prog, optarg);
-+ exit (E_BAD_ARG);
-+ }
- #ifdef WITH_AUDIT
-- user_newexpire *= DAY / SCALE;
-+ user_newexpire *= DAY / SCALE;
- #else
-- user_expire *= DAY / SCALE;
-+ user_expire *= DAY / SCALE;
- #endif
-- } else
-+ } else
- #ifdef WITH_AUDIT
-- user_newexpire = -1;
-+ user_newexpire = -1;
- #else
-- user_expire = -1;
-+ user_expire = -1;
- #endif
-- eflg++;
-- break;
-- case 'f':
-+ eflg++;
-+ break;
-+ case 'f':
- #ifdef WITH_AUDIT
-- user_newinactive = get_number (optarg);
-+ user_newinactive = get_number (optarg);
- #else
-- user_inactive = get_number (optarg);
-+ user_inactive = get_number (optarg);
- #endif
-- fflg++;
-- break;
-- case 'g':
-- grp = getgr_nam_gid (optarg);
-- if (!grp) {
-- fprintf (stderr,
-- _("%s: unknown group %s\n"),
-- Prog, optarg);
-- exit (E_NOTFOUND);
-- }
-- user_newgid = grp->gr_gid;
-- gflg++;
-- break;
-- case 'G':
-- if (get_groups (optarg))
-- exit (E_NOTFOUND);
-- Gflg++;
-- break;
-- case 'l':
-- if (!check_user_name (optarg)) {
-- fprintf (stderr,
-- _("%s: invalid field `%s'\n"),
-- Prog, optarg);
-- exit (E_BAD_ARG);
-- }
--
-- /*
-- * If the name does not really change, we mustn't
-- * set the flag as this will cause rather serious
-- * problems later!
-- */
-- if (strcmp (user_name, optarg))
-- lflg++;
--
-- user_newname = optarg;
-- break;
-- case 'L':
-- if (Uflg || pflg)
-- usage ();
--
-- Lflg++;
-- break;
-- case 'm':
-- if (!dflg)
-- usage ();
--
-- mflg++;
-- break;
-- case 'o':
-- if (!uflg)
-- usage ();
--
-- oflg++;
-- break;
-- case 'p':
-- if (Lflg || Uflg)
-- usage ();
--
-- user_pass = optarg;
-- pflg++;
-- break;
-- case 's':
-- if (!VALID (optarg)) {
-- fprintf (stderr,
-- _("%s: invalid field `%s'\n"),
-- Prog, optarg);
-- exit (E_BAD_ARG);
-- }
-+ fflg++;
-+ break;
-+ case 'g':
-+ grp = getgr_nam_gid (optarg);
-+ if (!grp) {
-+ fprintf (stderr,
-+ _("%s: unknown group %s\n"),
-+ Prog, optarg);
-+ exit (E_NOTFOUND);
-+ }
-+ user_newgid = grp->gr_gid;
-+ gflg++;
-+ break;
-+ case 'G':
-+ if (get_groups (optarg))
-+ exit (E_NOTFOUND);
-+ Gflg++;
-+ break;
-+ case 'l':
-+ if (!check_user_name (optarg)) {
-+ fprintf (stderr,
-+ _("%s: invalid field `%s'\n"),
-+ Prog, optarg);
-+ exit (E_BAD_ARG);
-+ }
-+
-+ /*
-+ * If the name does not really change, we mustn't
-+ * set the flag as this will cause rather serious
-+ * problems later!
-+ */
-+ if (strcmp (user_name, optarg))
-+ lflg++;
-+
-+ user_newname = optarg;
-+ break;
-+ case 'L':
-+ if (Uflg || pflg)
-+ usage ();
-+
-+ Lflg++;
-+ break;
-+ case 'm':
-+ if (!dflg)
-+ usage ();
-+
-+ mflg++;
-+ break;
-+ case 'o':
-+ if (!uflg)
-+ usage ();
-+
-+ oflg++;
-+ break;
-+ case 'p':
-+ if (Lflg || Uflg)
-+ usage ();
-+
-+ user_pass = optarg;
-+ pflg++;
-+ break;
-+ case 's':
-+ if (!VALID (optarg)) {
-+ fprintf (stderr,
-+ _("%s: invalid field `%s'\n"),
-+ Prog, optarg);
-+ exit (E_BAD_ARG);
-+ }
- #ifdef WITH_AUDIT
-- user_newshell = optarg;
-+ user_newshell = optarg;
- #else
-- user_shell = optarg;
-+ user_shell = optarg;
- #endif
-- sflg++;
-- break;
-- case 'u':
-- user_newid = get_id (optarg);
-- uflg++;
-- break;
-- case 'U':
-- if (Lflg && pflg)
-- usage ();
--
-- Uflg++;
-- break;
-- default:
-- usage ();
-+ sflg++;
-+ break;
-+ case 'u':
-+ user_newid = get_id (optarg);
-+ uflg++;
-+ break;
-+ case 'U':
-+ if (Lflg && pflg)
-+ usage ();
-+
-+ Uflg++;
-+ break;
-+ default:
-+ usage ();
-+ }
-+ anyflag++;
-+ }
- }
-- anyflag++;
-- }
- if (anyflag == 0) {
- fprintf (stderr, _("%s: no flags given\n"), Prog);
- exit (E_USAGE);
Deleted: trunk/debian/patches/423_su_pass_args_without_concatenation
===================================================================
--- trunk/debian/patches/423_su_pass_args_without_concatenation 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/423_su_pass_args_without_concatenation 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,110 +0,0 @@
-Goal: * pass the argument to the shell or command without concatenation
- before the call to exec.
- (su --shell=/bin/sh -c 'printf :%q:\\n ${1+"$@"}' "$USER" sh a "b\'c" d)
- * If no command is provided, the arguments after the username are for the shell,
- no -c has to be appended.
- (su -- - "$LOGNAME" -x)
- * The submitter also reported some changes I consider being only aesthetical (only
- malloc the exact number of elements)
- * He also proposed another patch that would change the return type of
- "elements" to size_t instead of int. But I did not included this one.
-Fixes: #276419
-
-Status wrt upstream: Upstream do not concatenate arguments.
- Upstream never add a "-c" (there is no options to
- upstream su).
- (run_shell in upstream is quite different
- and don't suffer from the first point and don't have
- "elements" function, which voids the last two points)
-
-Index: shadow-4.0.3/src/su.c
-===================================================================
---- shadow-4.0.3.orig/src/su.c 2005-06-20 23:28:48.000000000 +0200
-+++ shadow-4.0.3/src/su.c 2005-06-21 20:49:22.128723000 +0200
-@@ -172,8 +172,9 @@
- {
- int n = 0;
-
-- for (n = 0; *arr; ++arr)
-- ++n;
-+ if (arr)
-+ for (n = 0; *arr; ++arr)
-+ ++n;
- return n;
- }
-
-@@ -183,16 +184,25 @@
- {
- const char **args;
- int argno = 1;
-- char cmd[BUFSIZ];
-- int cmd_len_left = sizeof(cmd) - 1;
-
-- cmd[0] = '\0';
--
-- if (additional_args)
-- args = (const char **) xmalloc (sizeof (char *)
-- * (10 + elements (additional_args)));
-- else
-- args = (const char **) xmalloc (sizeof (char *) * 10);
-+ /* Allocate 2 up to 4 more slots for the argument vector than there are
-+ additional args:
-+ 1 for args[0],
-+ 2 (optional) for a commandline, preceded with "-c",
-+ 1 for the args[]-terminating NULL entry.
-+ */
-+ args = (const char **)
-+ xmalloc (
-+ sizeof (char *) *
-+ (
-+ 1 /* args[0] */
-+ +
-+ (command ? 2 : 0) /* "-c" "commandline", if supplied */
-+ +
-+ elements (additional_args) /* number of additional args: */
-+ +
-+ 1 /* the terminating NULL entry */
-+ ));
-
- if (login)
- {
-@@ -210,30 +220,17 @@
- }
- else
- args[0] = Basename(shell);
-- if (command || additional_args)
-- args[argno++] = "-c";
-- if (command) {
-- if (strlen(command) > cmd_len_left) {
-- fprintf(stderr, _("Command line args too long\n"));
-- exit(1);
-+ if (command)
-+ { /* A command option "-c" or "--command" has been supplied. Insert
-+ * "-c" and its option argument, i.e. the commandline, into the
-+ * argument vector.
-+ */
-+ args[argno++] = "-c";
-+ args[argno++] = command;
- }
-- strcat(cmd, command);
-- cmd_len_left -= strlen(command);
-- }
- if (additional_args)
-- for (; *additional_args; ++additional_args) {
-- if ((strlen(*additional_args) + 1) > cmd_len_left) {
-- fprintf(stderr, _("Command line args too long\n"));
-- exit(1);
-- }
-- if (cmd[0]) {
-- strcat(cmd, " ");
-- cmd_len_left--;
-- }
-- strcat(cmd, *additional_args);
-- cmd_len_left -= strlen(*additional_args);
-- }
-- if (cmd[0]) args[argno++] = cmd;
-+ for (; *additional_args; ++additional_args)
-+ args[argno++] = *additional_args;
- args[argno] = NULL;
- execv (shell, (char **) args);
- fprintf (stderr, _("No shell\n"));
Deleted: trunk/debian/patches/437_su_add_GNU_options_1
===================================================================
--- trunk/debian/patches/437_su_add_GNU_options_1 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/437_su_add_GNU_options_1 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,183 +0,0 @@
-Goal: First patch to switch to getopt.
- Still incomplete.
- Done:
- * selection of the shell (-s).
- Broken:
- * additional_args is set, but not used.
- * !doshell is broken (argv is not incremented)
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:07:15.267220184 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:15.966077788 +0200
-@@ -31,6 +31,7 @@
-
- #ident "$Id: su.c,v 1.45 2005/09/07 15:00:45 kloczek Exp $"
-
-+#include <getopt.h>
- #include <grp.h>
- #include <pwd.h>
- #include <signal.h>
-@@ -76,6 +77,18 @@
-
- /* local function prototypes */
-
-+/* If nonzero, change some environment vars to indicate the user su'd to. */
-+static int change_environment;
-+
-+static struct option const longopts[] =
-+{
-+ {"command", required_argument, 0, 'c'},
-+ {"preserve-environment", no_argument, 0, 'p'},
-+ {"shell", required_argument, 0, 's'},
-+ {"help", no_argument, 0, 'h'},
-+ {0, 0, 0, 0}
-+};
-+
- #ifndef USE_PAM
-
- static RETSIGTYPE die (int);
-@@ -257,6 +270,8 @@
- uid_t my_uid;
- struct passwd *pw = 0;
- char **envp = environ;
-+ char *command = 0, *shell = 0, **additional_args = 0;
-+ int optc;
-
- #ifdef USE_PAM
- int ret;
-@@ -277,6 +292,8 @@
- bindtextdomain (PACKAGE, LOCALEDIR);
- textdomain (PACKAGE);
-
-+ change_environment = 1;
-+
- /*
- * Get the program name. The program name is used as a prefix to
- * most error messages.
-@@ -317,15 +334,57 @@
- /*
- * Process the command line arguments.
- */
-- argc--;
-- argv++; /* shift out command name */
-
-- if (argc > 0 && strcmp (argv[0], "-") == 0) {
-- fakelogin = 1;
-- argc--;
-- argv++; /* shift ... */
-+ while ((optc = getopt_long (argc, argv, "c:mps:h", longopts, NULL)) != -1) {
-+ switch (optc) {
-+ case 0:
-+ break;
-+ case 'c':
-+ command = optarg;
-+ break;
-+ case 'm':
-+ case 'p':
-+ change_environment = 0;
-+ break;
-+ case 's':
-+ shell = optarg;
-+ break;
-+ default:
-+ fprintf(stderr, _("\
-+Usage: su [OPTS] [-] [username [ARGS]]\n\
-+ - make this a login shell\n\
-+ -c, --command=<command>\n\
-+ pass command to the invoked shell using its -c\n\
-+ option\n\
-+ -m, -p, --preserve-environment\n\
-+ do not reset environment variables, and keep the\n\
-+ same shell\n\
-+ -s, --shell=<shell>\n\
-+ use shell instead of the default in /etc/passwd\n"));
-+ exit(1);
-+ }
-+ }
-+
-+ if (optind < argc && !strcmp (argv[optind], "-")) {
-+ fakelogin = 1;
-+ ++optind;
-+ }
-+
-+ if (optind < argc)
-+ strncpy(name, argv[optind++], sizeof(name) - 1);
-+ else {
-+ struct passwd *root_pw = getpwuid(0);
-+ if (root_pw == NULL) {
-+ SYSLOG((LOG_CRIT, "There is no UID 0 user."));
-+ su_failure(tty);
-+ }
-+ strcpy(name, root_pw->pw_name);
- }
-
-+ if (optind < argc)
-+ additional_args = argv + optind;
-+
-+
- /*
- * If a new login is being set up, the old environment will be
- * ignored and a new one created later on.
-@@ -361,28 +420,7 @@
- addenv (*envp++, NULL);
- }
-
-- /*
-- * The next argument must be either a user ID, or some flag to a
-- * subshell. Pretty sticky since you can't have an argument which
-- * doesn't start with a "-" unless you specify the new user name.
-- * Any remaining arguments will be passed to the user's login shell.
-- */
-- if (argc > 0 && argv[0][0] != '-') {
-- STRFCPY (name, argv[0]); /* use this login id */
-- argc--;
-- argv++; /* shift ... */
-- }
-- if (!name[0]) /* use default user ID */
-- {
-- struct passwd *root_pw = getpwuid(0);
-- if (root_pw == NULL) {
-- SYSLOG((LOG_CRIT, "There is no UID 0 user."));
-- su_failure(tty);
-- }
-- strcpy(name, root_pw->pw_name);
-- }
--
-- doshell = argc == 0; /* any arguments remaining? */
-+ doshell = optind == argc; /* any arguments remaining? */
-
- /*
- * Get the user's real name. The current UID is used to determine
-@@ -501,6 +539,23 @@
- if (pwent.pw_shell[0] == '\0')
- pwent.pw_shell = "/bin/sh"; /* XXX warning: const */
-
-+ /* If the user do not want to change the environment,
-+ * use the current SHELL.
-+ * (unless another shell is required by the command line)
-+ */
-+ if (shell == 0 && change_environment == 0)
-+ shell = getenv ("SHELL");
-+ /* For users whith non null UID, if this user has a restricted
-+ * shell, the shell must be the one specified in /etc/passwd
-+ */
-+ if (shell != 0 && getuid () && restricted_shell (pwent.pw_shell))
-+ shell = 0;
-+ /* If the shell is not set at this time, use the shell specified
-+ * in /etc/passwd.
-+ */
-+ if (shell == 0)
-+ shell = (char *) strdup (pwent.pw_shell);
-+
- signal (SIGINT, SIG_IGN);
- signal (SIGQUIT, SIG_IGN);
- #ifdef USE_PAM
-@@ -678,7 +733,7 @@
- else {
- addenv ("HOME", pwent.pw_dir);
- addenv ("USER", pwent.pw_name);
-- addenv ("SHELL", pwent.pw_shell);
-+ addenv ("SHELL", shell);
- }
- #endif
-
Deleted: trunk/debian/patches/437_su_add_GNU_options_2
===================================================================
--- trunk/debian/patches/437_su_add_GNU_options_2 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/437_su_add_GNU_options_2 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,193 +0,0 @@
-Goal:
- * need restricted_shell() for --preserve-environment
- * run_shell has to be available when !USE_PAM
- * for -c, we need to add arguments. It is safer to allocate a new
- array than using argv. We need the elements() function to compute the
- number of additional arguments.
- * arg0 is computed in run_shell.
- * There is no more need for doshell. We know that we only need to
- execute a shell when there is no additional arguments.
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:07:15.966077788 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:16.698928465 +0200
-@@ -127,6 +127,24 @@
- }
- #endif /* !USE_PAM */
-
-+/* borrowed from GNU sh-utils' "su.c" */
-+static int
-+restricted_shell (const char *shell)
-+{
-+ char *line;
-+
-+ setusershell ();
-+ while ((line = getusershell ()) != NULL) {
-+ if (*line != '#' && strcmp (line, shell) == 0) {
-+ endusershell ();
-+ return 0;
-+ }
-+ }
-+ endusershell ();
-+ return 1;
-+}
-+
-+
-
- static void su_failure (const char *tty)
- {
-@@ -149,23 +167,70 @@
- {
- ++caught;
- }
-+#endif
-+
-+/* borrowed from GNU sh-utils' "su.c" */
-+static int elements (char **arr)
-+{
-+ int n = 0;
-+ if (arr)
-+ for (n = 0; *arr; ++arr)
-+ ++n;
-+
-+ return n;
-+}
-
- /* This I ripped out of su.c from sh-utils after the Mandrake pam patch
- * have been applied. Some work was needed to get it integrated into
- * su.c from shadow.
- */
--static void run_shell (const char *shellstr, char *args[], int doshell)
-+static void run_shell (const char *shellstr, char **additional_args, int fakelogin)
- {
-+ const char **args;
- int child;
- sigset_t ourset;
- int status;
- int ret;
-+ int argno = 0;
-+
-+ args = (const char **)xmalloc(sizeof (char *)
-+ * (2 + elements (additional_args)));
-
-+ if (fakelogin) {
-+ char *arg0;
-+ char *shell_basename;
-+
-+ shell_basename = getdef_str ("SU_NAME");
-+ if (!shell_basename)
-+ shell_basename = Basename (shellstr);
-+
-+ arg0 = xmalloc (strlen (shell_basename) + 2);
-+ arg0[0] = '-';
-+ strcpy (arg0 + 1, shell_basename);
-+ args[0] = arg0;
-+ } else
-+ args[0] = Basename (shellstr);
-+ argno = 1;
-+
-+ if (additional_args) {
-+ for (; *additional_args; ++additional_args) {
-+ args[argno++] = *additional_args;
-+ }
-+ }
-+ args[argno] = NULL;
-+
-+#ifndef USE_PAM
-+ if (argno > 1)
-+ (void) execv (shellstr, args);
-+ else
-+ shell (shellstr, args[0]);
-+ /* NOT REACHED */
-+#else
- child = fork ();
- if (child == 0) { /* child shell */
- pam_end (pamh, PAM_SUCCESS);
-
-- if (doshell)
-+ if (argno == 1)
- shell (shellstr, (char *) args[0]);
- else
- (void) execv (shellstr, (char **) args);
-@@ -243,8 +308,8 @@
- }
-
- exit (WEXITSTATUS (status));
-+#endif /* USE_PAM */
- }
--#endif
-
- /*
- * su - switch user id
-@@ -264,7 +329,6 @@
- char *cp;
- char **envcp;
- const char *tty = 0; /* Name of tty SU is run from */
-- int doshell = 0;
- int fakelogin = 0;
- int amroot = 0;
- uid_t my_uid;
-@@ -384,7 +448,6 @@
- if (optind < argc)
- additional_args = argv + optind;
-
--
- /*
- * If a new login is being set up, the old environment will be
- * ignored and a new one created later on.
-@@ -420,8 +483,6 @@
- addenv (*envp++, NULL);
- }
-
-- doshell = optind == argc; /* any arguments remaining? */
--
- /*
- * Get the user's real name. The current UID is used to determine
- * who has executed su. That user ID must exist.
-@@ -746,45 +807,7 @@
- */
- closelog ();
-
-- /*
-- * See if the user has extra arguments on the command line. In that
-- * case they will be provided to the new user's shell as arguments.
-- */
-- if (fakelogin) {
-- char *arg0;
--
-- cp = getdef_str ("SU_NAME");
-- if (!cp)
-- cp = Basename (pwent.pw_shell);
--
-- arg0 = xmalloc (strlen (cp) + 2);
-- arg0[0] = '-';
-- strcpy (arg0 + 1, cp);
-- cp = arg0;
-- } else
-- cp = Basename (pwent.pw_shell);
--
-- if (!doshell) {
-- /*
-- * Use new user's shell from /etc/passwd and create an argv
-- * with the rest of the command line included.
-- */
-- argv[-1] = pwent.pw_shell;
--#ifndef USE_PAM
-- (void) execv (pwent.pw_shell, &argv[-1]);
--#else
-- run_shell (pwent.pw_shell, &argv[-1], 0);
--#endif
-- (void) fprintf (stderr, _("No shell\n"));
-- SYSLOG ((LOG_WARN, "Cannot execute %s", pwent.pw_shell));
-- closelog ();
-- exit (1);
-- }
--#ifndef USE_PAM
-- shell (pwent.pw_shell, cp);
--#else
-- run_shell (pwent.pw_shell, &cp, 1);
--#endif
-+ run_shell (shell, additional_args, fakelogin);
- /* NOT REACHED */
- exit (1);
- }
Deleted: trunk/debian/patches/437_su_add_GNU_options_3
===================================================================
--- trunk/debian/patches/437_su_add_GNU_options_3 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/437_su_add_GNU_options_3 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,116 +0,0 @@
-Goal:
- * add -c ability to run_shell.
- * only change environment if the user did not requested to preserve
- the environment, or if the user has a restricted shell.
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:07:16.698928465 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:17.407784032 +0200
-@@ -184,7 +184,10 @@
- * have been applied. Some work was needed to get it integrated into
- * su.c from shadow.
- */
--static void run_shell (const char *shellstr, char **additional_args, int fakelogin)
-+static void run_shell (const char *shellstr,
-+ const char *command,
-+ char **additional_args,
-+ int fakelogin)
- {
- const char **args;
- int child;
-@@ -193,8 +196,10 @@
- int ret;
- int argno = 0;
-
-+ /* There is at most 4 arguments (arg0, '-c', <command>, NULL) + the
-+ * number of arguments in the additional_args array. */
- args = (const char **)xmalloc(sizeof (char *)
-- * (2 + elements (additional_args)));
-+ * (4 + elements (additional_args)));
-
- if (fakelogin) {
- char *arg0;
-@@ -212,11 +217,17 @@
- args[0] = Basename (shellstr);
- argno = 1;
-
-+ if (command) {
-+ args[argno++] = "-c";
-+ args[argno++] = command;
-+ }
-+
- if (additional_args) {
- for (; *additional_args; ++additional_args) {
- args[argno++] = *additional_args;
- }
- }
-+
- args[argno] = NULL;
-
- #ifndef USE_PAM
-@@ -759,18 +770,20 @@
- exit (1);
- }
-
-- /* we need to setup the environment *after* pam_open_session(),
-- * else the UID is changed before stuff like pam_xauth could
-- * run, and we cannot access /etc/shadow and co
-- */
-- environ = newenvp; /* make new environment active */
-+ if (change_environment || restricted_shell(pwent.pw_shell)) {
-+ /* we need to setup the environment *after* pam_open_session(),
-+ * else the UID is changed before stuff like pam_xauth could
-+ * run, and we cannot access /etc/shadow and co
-+ */
-+ environ = newenvp; /* make new environment active */
-
-- /* update environment with all pam set variables */
-- envcp = pam_getenvlist (pamh);
-- if (envcp) {
-- while (*envcp) {
-- addenv (*envcp, NULL);
-- envcp++;
-+ /* update environment with all pam set variables */
-+ envcp = pam_getenvlist (pamh);
-+ if (envcp) {
-+ while (*envcp) {
-+ addenv (*envcp, NULL);
-+ envcp++;
-+ }
- }
- }
-
-@@ -788,15 +801,17 @@
- exit (1);
- #endif /* !USE_PAM */
-
-- if (fakelogin)
-- setup_env (&pwent);
-+ if (change_environment || restricted_shell (pwent.pw_shell)) {
-+ if (fakelogin )
-+ setup_env (&pwent);
- #if 1 /* Suggested by Joey Hess. XXX - is this right? */
-- else {
-- addenv ("HOME", pwent.pw_dir);
-- addenv ("USER", pwent.pw_name);
-- addenv ("SHELL", shell);
-- }
-+ else {
-+ addenv ("HOME", pwent.pw_dir);
-+ addenv ("USER", pwent.pw_name);
-+ addenv ("SHELL", shell);
-+ }
- #endif
-+ }
-
- /*
- * This is a workaround for Linux libc bug/feature (?) - the
-@@ -807,7 +822,7 @@
- */
- closelog ();
-
-- run_shell (shell, additional_args, fakelogin);
-+ run_shell (shell, command, additional_args, fakelogin);
- /* NOT REACHED */
- exit (1);
- }
Deleted: trunk/debian/patches/437_su_add_GNU_options_4
===================================================================
--- trunk/debian/patches/437_su_add_GNU_options_4 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/437_su_add_GNU_options_4 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,140 +0,0 @@
-Goal:
- * remove compilation warnings (Basename)
- * no more use shell() for executing a shell whithout argument.
- This may have some implications on the environment: shell used to use
- execle with newenvp as the new environment.
- I think it is preferable to have the ssame behavior when there are
- or isn't any argument.
- if !change_environment (and the user shell is not restricted), we
- need to add all the environmental variables to newenvp (with addenv)
- and to copy newenvp to environ.
- * if fakelogin, some env variables are set. This must not be done if
- --preserve-environment wasspecified (for users whose shell is not
- restricted)
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:07:17.407784032 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:18.106641636 +0200
-@@ -207,14 +207,14 @@
-
- shell_basename = getdef_str ("SU_NAME");
- if (!shell_basename)
-- shell_basename = Basename (shellstr);
-+ shell_basename = Basename ((char *)shellstr);
-
- arg0 = xmalloc (strlen (shell_basename) + 2);
- arg0[0] = '-';
- strcpy (arg0 + 1, shell_basename);
- args[0] = arg0;
- } else
-- args[0] = Basename (shellstr);
-+ args[0] = Basename ((char *)shellstr);
- argno = 1;
-
- if (command) {
-@@ -231,20 +231,14 @@
- args[argno] = NULL;
-
- #ifndef USE_PAM
-- if (argno > 1)
-- (void) execv (shellstr, args);
-- else
-- shell (shellstr, args[0]);
-+ (void) execv (shellstr, args);
- /* NOT REACHED */
- #else
- child = fork ();
- if (child == 0) { /* child shell */
- pam_end (pamh, PAM_SUCCESS);
-
-- if (argno == 1)
-- shell (shellstr, (char *) args[0]);
-- else
-- (void) execv (shellstr, (char **) args);
-+ (void) execv (shellstr, (char **) args);
- {
- int exit_status = (errno == ENOENT ? 127 : 126);
-
-@@ -460,41 +454,6 @@
- additional_args = argv + optind;
-
- /*
-- * If a new login is being set up, the old environment will be
-- * ignored and a new one created later on.
-- */
-- if (fakelogin) {
-- /*
-- * The terminal type will be left alone if it is present in
-- * the environment already.
-- */
-- if ((cp = getenv ("TERM")))
-- addenv ("TERM", cp);
--#ifndef USE_PAM
-- if ((cp = getdef_str ("ENV_TZ")))
-- addenv (*cp == '/' ? tz (cp) : cp, NULL);
--
-- /*
-- * The clock frequency will be reset to the login value if required
-- */
-- if ((cp = getdef_str ("ENV_HZ")))
-- addenv (cp, NULL); /* set the default $HZ, if one */
--
-- /*
-- * Also leave DISPLAY and XAUTHORITY if present, else
-- * pam_xauth will not work.
-- */
-- if ((cp = getenv ("DISPLAY")))
-- addenv ("DISPLAY", cp);
-- if ((cp = getenv ("XAUTHORITY")))
-- addenv ("XAUTHORITY", cp);
--#endif /* !USE_PAM */
-- } else {
-- while (*envp)
-- addenv (*envp++, NULL);
-- }
--
-- /*
- * Get the user's real name. The current UID is used to determine
- * who has executed su. That user ID must exist.
- */
-@@ -559,6 +518,40 @@
- #endif /* !USE_PAM */
- pwent = *pw;
-
-+ /*
-+ * If a new login is being set up, the old environment will be
-+ * ignored and a new one created later on.
-+ */
-+
-+ if (fakelogin && (change_environment || restricted_shell(pwent.pw_shell))) {
-+ /*
-+ * The terminal type will be left alone if it is present in
-+ * the environment already.
-+ */
-+ if ((cp = getenv ("TERM")))
-+ addenv ("TERM", cp);
-+#ifndef USE_PAM
-+ if ((cp = getdef_str ("ENV_TZ")))
-+ addenv (*cp == '/' ? tz (cp) : cp, NULL);
-+ /*
-+ * The clock frequency will be reset to the login value if required
-+ */
-+ if ((cp = getdef_str ("ENV_HZ")))
-+ addenv (cp, NULL); /* set the default $HZ, if one */
-+ /*
-+ * Also leave DISPLAY and XAUTHORITY if present, else
-+ * pam_xauth will not work.
-+ */
-+ if ((cp = getenv ("DISPLAY")))
-+ addenv ("DISPLAY", cp);
-+ if ((cp = getenv ("XAUTHORITY")))
-+ addenv ("XAUTHORITY", cp);
-+#endif /* !USE_PAM */
-+ } else {
-+ while (*envp)
-+ addenv (*envp++, NULL);
-+ }
-+
- #ifndef USE_PAM
- /*
- * BSD systems only allow "wheel" to SU to root. USG systems don't,
Deleted: trunk/debian/patches/437_su_add_GNU_options_5
===================================================================
--- trunk/debian/patches/437_su_add_GNU_options_5 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/437_su_add_GNU_options_5 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,31 +0,0 @@
-Goal: report failure to execute the shell to the user and to syslog.
- Also, return a 126 or 127 exit status when !USE_PAM (was mising
- from another patch.
-
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:07:18.106641636 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:18.807498832 +0200
-@@ -232,6 +232,13 @@
-
- #ifndef USE_PAM
- (void) execv (shellstr, args);
-+ fprintf (stderr, _("No shell\n"));
-+ SYSLOG((LOG_WARN, "Cannot execute %s\n", shellstr));
-+ {
-+ int exit_status = (errno == ENOENT ? 127 : 126);
-+
-+ exit (exit_status);
-+ }
- /* NOT REACHED */
- #else
- child = fork ();
-@@ -239,6 +246,8 @@
- pam_end (pamh, PAM_SUCCESS);
-
- (void) execv (shellstr, (char **) args);
-+ fprintf (stderr, _("No shell\n"));
-+ SYSLOG((LOG_WARN, "Cannot execute %s\n", shellstr));
- {
- int exit_status = (errno == ENOENT ? 127 : 126);
-
Deleted: trunk/debian/patches/437_su_add_GNU_options_6
===================================================================
--- trunk/debian/patches/437_su_add_GNU_options_6 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/437_su_add_GNU_options_6 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,15 +0,0 @@
-Goal: I'm not sure if the pw_shell can be NULL, but checking can't arm.
-
-Index: shadow-4.0.13/src/su.c
-===================================================================
---- shadow-4.0.13.orig/src/su.c 2005-10-04 08:07:18.807498832 +0200
-+++ shadow-4.0.13/src/su.c 2005-10-04 08:07:19.503357047 +0200
-@@ -610,7 +610,7 @@
- /*
- * Set the default shell.
- */
-- if (pwent.pw_shell[0] == '\0')
-+ if (pwent.pw_shell == NULL || pwent.pw_shell[0] == '\0')
- pwent.pw_shell = "/bin/sh"; /* XXX warning: const */
-
- /* If the user do not want to change the environment,
Deleted: trunk/debian/patches/437_su_add_GNU_options_7
===================================================================
--- trunk/debian/patches/437_su_add_GNU_options_7 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/437_su_add_GNU_options_7 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,66 +0,0 @@
-Note: * Document the changes from the other 437_ patches
-
-Index: shadow-4.0.13/man/su.1.xml
-===================================================================
---- shadow-4.0.13.orig/man/su.1.xml 2005-10-04 08:06:33.161799494 +0200
-+++ shadow-4.0.13/man/su.1.xml 2005-10-04 08:07:20.207213632 +0200
-@@ -15,6 +15,7 @@
- <refsynopsisdiv id='synopsis'>
- <cmdsynopsis>
- <command>su</command>
-+ <arg choice='opt'>OPTS </arg>
- <arg choice='opt'>- </arg>
- <arg choice='opt'>
- <arg choice='plain'>
-@@ -37,24 +38,24 @@
- expect had the user logged in directly.
- </para>
-
-- <para>
-- Additional arguments may be provided after the username, in which case
-- they are supplied to the user´s login shell. In particular, an
-- argument of <option>-c</option> will cause the next argument to be
-- treated as a command by most command interpreters. The command will be
-- executed by the shell specified in <filename>/etc/passwd</filename>
-- for the target user.
-- </para>
--
- <para>The user will be prompted for a password, if appropriate. Invalid
- passwords will produce an error message. All attempts, both valid and
- invalid, are logged to detect abuses of the system.
- </para>
-
-+ <para>An optional command can be executed. This is done by the shell
-+ specified in <filename>/etc/passwd</filename> for the target user
-+ unless the <option>-s</option> or <option>-m</option>
-+ options are used. Any arguments supplied after the <emphasis remap='I'>
-+ username</emphasis> will be passed to the invoked shell (shell must
-+ support the <option>-c</option> command line option in order for a
-+ command to be passed to it).
-+ </para>
-+
- <para>
-- The current environment is passed to the new shell. The value of
-- <emphasis>$PATH</emphasis> is reset to
-- <filename>/bin:/usr/bin</filename> for normal users, or
-+ Unless the <option>-m</option> or <option>-p</option> options are used,
-+ the current environment is passed to the new shell with alterations.
-+ The value of <emphasis remap='B'>$PATH</emphasis> is reset to
- <filename>/sbin:/bin:/usr/sbin:/usr/bin</filename> for the super user.
- This may be changed with the <emphasis>ENV_PATH</emphasis> and
- <emphasis>ENV_SUPATH</emphasis> definitions in
-@@ -91,6 +92,14 @@
- <para>secure user account information</para>
- </listitem>
- </varlistentry>
-+ <varlistentry>
-+ <term><filename>/etc/shells</filename></term>
-+ <listitem>valid user shells</listitem>
-+ </varlistentry>
-+ <varlistentry>
-+ <term><filename>$HOME/.profile</filename></term>
-+ <listitem>initialization script for default shell</listitem>
-+ </varlistentry>
- </variablelist>
- </refsect1>
-
Deleted: trunk/debian/patches/441_manpages-shadow.5
===================================================================
--- trunk/debian/patches/441_manpages-shadow.5 2005-12-15 00:38:15 UTC (rev 714)
+++ trunk/debian/patches/441_manpages-shadow.5 2005-12-16 10:39:00 UTC (rev 715)
@@ -1,28 +0,0 @@
-Goal: better document "!" and "*" fields in /etc/shadow
-Fixes: some old bug in Debian..:-)
-
-Status wrt upstream: Forwarded but not applied yet
-
-Index: shadow-4.0.12/man/shadow.5.xml
-===================================================================
---- shadow-4.0.12.orig/man/shadow.5.xml 2005-08-17 11:49:22.000000000 +0200
-+++ shadow-4.0.12/man/shadow.5.xml 2005-08-17 11:50:34.000000000 +0200
-@@ -64,6 +64,18 @@
- for details on how this string is interpreted.
- </para>
-
-+ <para>If the password field contains some string that is not valid result
-+ of
-+ <citerefentry>
-+ <refentrytitle>crypt</refentrytitle><manvolnum>3</manvolnum>
-+ </citerefentry>,
-+ for instance ! or *, the user will not be able to use
-+ a unix password to log in, subject to
-+ <citerefentry>
-+ <refentrytitle>pam</refentrytitle><manvolnum>7</manvolnum>
-+ </citerefentry>.
-+ </para>
-+
- <para>The date of the last password change is given as the number of
- days since Jan 1, 1970. The password may not be changed again until
- the proper number of days have passed, and must be changed after the
More information about the Pkg-shadow-commits
mailing list