Compare commits

..

976 Commits

Author SHA1 Message Date
Toni Mueller
9698b06fef elaborate on the editor selection of the programs 2024-02-29 16:38:55 +00:00
Toni Mueller
406dd68863 elaborate on the editor selection of the programs 2024-02-28 22:58:41 +00:00
Jonathan Carter
2ff04fd9b5 Merge branch '2024-02-12/1' into 'master'
(Helmut Grohne) move login and shadowconfig to /usr

See merge request debian/shadow!19
2024-02-18 12:43:59 +00:00
Serge Hallyn
97a3bc0c43 (Helmut Grohne) move login and shadowconfig to /usr
Signed-off-by: Serge Hallyn <serge@hallyn.com>
2024-02-12 19:23:31 -06:00
Balint Reczey
485b374d09 Update changelog 2023-10-15 19:11:29 +02:00
Balint Reczey
25f0b936c0 Remove myself from uploaders 2023-09-27 10:22:26 +02:00
Balint Reczey
776d4d23ac Update changelog 2023-09-26 22:02:45 +02:00
Balint Reczey
9f285306f3 Fix valid_field() that regressed in upstream's first CVE fix
cherry-picking upstream's regression fix.

Follow-up for commit 50defcfa5d .

Gbp-Dch: Ignore
2023-09-26 12:19:29 +02:00
Balint Reczey
f569ea06ff Update changelog 2023-09-25 18:18:48 +02:00
Balint Reczey
50defcfa5d Cherry-pick upstream patch to fix chfn vulnerability
(CVE-2023-29383)

Closes: #1034482
2023-09-25 18:13:40 +02:00
Balint Reczey
56c7502686 Cherry-pick upstream patch to fix gpasswd passwd leak
(CVE-2023-4641)

Closes: #1051062
2023-09-25 17:55:00 +02:00
Balint Reczey
7c66acdd2e Update changelog 2023-09-25 17:41:27 +02:00
Balint Reczey
4806645316 debian/NEWS: Fix false claim about PREVENT_NO_AUTH affecting authentication
Also drop setting PREVENT_NO_AUTH in shipped login.defs.

Closes: #1041547
2023-09-25 17:15:46 +02:00
Balint Reczey
05a41bc4d5 Merge branch 'bprofile-nodoc' into 'master'
Support <nodoc> build profile (Closes: #1051827)

See merge request debian/shadow!18
2023-09-13 07:55:26 +00:00
Gioele Barabucci
75eb241552 Support <nodoc> build profile
`xsltproc`, `docbook` and all other XML-related packages are not needed
when the `<nodoc>` build profile is active, as long as `./configure` is
called with `--disable-man`.

Closes: #1051827
2023-09-13 08:52:53 +02:00
Balint Reczey
d7ce68863e debian/login.pam: Drop reference to Debian Etch
Closes: #1040064
2023-07-02 20:59:28 +02:00
Balint Reczey
095f9d48ef debian/gitlab-ci.yml: Use sudo to fix reprotest test 2022-11-11 21:18:06 +01:00
Balint Reczey
b4c00e119f debian/patches/506_relaxed_usernames: Fix refreshing the patch
Gbp-Dch: Ignore
2022-11-11 12:59:33 +01:00
Balint Reczey
326f1566ef Update changelog 2022-11-11 11:09:34 +01:00
Balint Reczey
6ac9c8ffe1 Merge branch 'scrub-obsolete' into 'master'
Remove unnecessary constraints

See merge request debian/shadow!17
2022-11-10 21:17:06 +00:00
Balint Reczey
860bfc3bc2 Update changelog 2022-11-10 22:07:05 +01:00
Balint Reczey
f960334281 Refresh patches 2022-11-10 22:07:00 +01:00
Balint Reczey
e4bc4e00d3 Update upstream source from tag 'upstream/4.13+dfsg1'
Update to upstream version '4.13+dfsg1'
with Debian dir 6bdb48f7b1
2022-11-10 16:24:14 +01:00
Balint Reczey
f17d14fa1d Update changelog 2022-11-10 16:21:54 +01:00
Balint Reczey
bdbb726365 debian/control: Mark libsubid-dev as Multi-Arch: same 2022-11-10 16:21:04 +01:00
Balint Reczey
e0c751974f debian/watch: Make watch file work with new GitHub UI 2022-11-10 16:15:00 +01:00
Debian Janitor
8b93f459b4 Remove constraints unnecessary since buster (oldstable)
* login: Drop versioned constraint on util-linux in Breaks.

Changes-By: deb-scrub-obsolete
2022-11-06 03:42:26 +00:00
Balint Reczey
658cda9512 Update changelog 2022-11-05 14:48:03 +01:00
Balint Reczey
8f8e8c66d6 Fix tree copying regressions introduced in 4.12.2.
Closes: #1023132
2022-11-05 14:46:09 +01:00
Jelmer Vernooij
9351646a53 Merge branch 'lintian-fixes' into 'master'
Set upstream metadata fields: Bug-Database, Bug-Submit, Repository-Browse

See merge request debian/shadow!9
2022-11-04 17:20:34 +00:00
Debian Janitor
9335ee4556 Set upstream metadata fields: Bug-Database, Bug-Submit, Repository-Browse.
Changes-By: lintian-brush
Fixes: lintian: upstream-metadata-file-is-missing
See-also: https://lintian.debian.org/tags/upstream-metadata-file-is-missing.html
Fixes: lintian: upstream-metadata-missing-bug-tracking
See-also: https://lintian.debian.org/tags/upstream-metadata-missing-bug-tracking.html
2022-10-22 21:39:40 +00:00
Balint Reczey
cfe3388825 Update changelog 2022-10-22 21:07:23 +02:00
Balint Reczey
fa71d99553 Update changelog 2022-10-22 20:23:33 +02:00
Balint Reczey
220f9aac4d Cherry-pick upstream patch to fix regression in expiration date handling
Closes: #1021697
2022-10-22 20:09:51 +02:00
Balint Reczey
deba8c722e Update changelog 2022-10-04 22:35:38 +02:00
Balint Reczey
f0d0800450 Fix Lintian elevated-privileges tag rename 2022-10-04 22:35:06 +02:00
Balint Reczey
c0e008111e Update changelog 2022-09-11 23:18:55 +02:00
Balint Reczey
f7c5ed7e44 debian/patches: Reorder patches in series to make it look sane 2022-09-11 23:16:27 +02:00
Balint Reczey
71b57931c8 debian/patches/502_debian_useradd_defaults: Update useradd.8.xml, too
Gbp-Dch: Ignore
2022-09-11 23:05:00 +02:00
Balint Reczey
830963375b Update changelog 2022-09-11 21:59:04 +02:00
Debian Janitor
119d3e7fb4 Update standards version to 4.6.1, no changes needed.
Changes-By: lintian-brush
Fixes: lintian: out-of-date-standards-version
See-also: https://lintian.debian.org/tags/out-of-date-standards-version.html
2022-09-09 17:53:36 +02:00
Debian Janitor
22cdffdd80 Update renamed lintian tag names in lintian overrides.
Changes-By: lintian-brush
Fixes: lintian: renamed-tag
See-also: https://lintian.debian.org/tags/renamed-tag.html
2022-09-09 17:53:36 +02:00
Balint Reczey
23958d1506 Merge branch 'lastlog' into 'master'
avoid creating several GB worth of sparse lastlog and faillog files for users with high uid values

See merge request debian/shadow!16
2022-09-06 10:12:32 +00:00
Johannes Schauer Marin Rodrigues
840aa7a980 useradd: avoid creating several GB worth of sparse lastlog and faillog files
Closes: #1019245
2022-09-06 10:01:45 +02:00
Balint Reczey
8f8c08e8a5 Update changelog 2022-08-24 00:09:30 +02:00
Balint Reczey
9126929c22 Update upstream source from tag 'upstream/4.12.3+dfsg1'
Update to upstream version '4.12.3+dfsg1'
with Debian dir 07067677d8
2022-08-24 00:06:56 +02:00
Balint Reczey
56751ea5fa Refresh patches 2022-08-20 18:37:02 +02:00
Balint Reczey
cda8c5fa81 Update changelog 2022-08-20 18:22:19 +02:00
Balint Reczey
69ca70f202 Update upstream source from tag 'upstream/4.12.2+dfsg1'
Update to upstream version '4.12.2+dfsg1'
with Debian dir 52044f35b7
2022-08-20 18:17:29 +02:00
Johannes Schauer Marin Rodrigues
8d8547f65f debian/shadowconfig: Support DPKG_ROOT without using chroot()
Closes: #1007758
2022-07-26 17:26:55 +02:00
Balint Reczey
bda4983ef6 Update changelog 2022-03-03 20:42:59 +01:00
Jenkins
ff3c5edbc6 Fix day-of-week for changelog entry 1:4.1.4.2+svn3283-3.
Changes-By: lintian-brush
Fixes: lintian: debian-changelog-has-wrong-day-of-week
See-also: https://lintian.debian.org/tags/debian-changelog-has-wrong-day-of-week.html
2022-03-03 20:40:23 +01:00
Jenkins
7b64365e45 Use canonical URL in Vcs-Git.
Changes-By: lintian-brush
Fixes: lintian: vcs-field-not-canonical
See-also: https://lintian.debian.org/tags/vcs-field-not-canonical.html
2022-03-03 20:36:52 +01:00
Jenkins
696ec6893f Trim trailing whitespace.
Changes-By: lintian-brush
Fixes: lintian: trailing-whitespace
See-also: https://lintian.debian.org/tags/trailing-whitespace.html
2022-03-03 20:35:14 +01:00
Balint Reczey
6185fb4b72 Update changelog 2022-03-03 18:16:26 +01:00
Balint Reczey
fcd5a6a753 login.defs: Fix typo 2022-03-03 18:08:40 +01:00
Balint Reczey
c97b544618 login.defs: include HMAC_CRYPTO_ALGO key 2022-03-03 17:59:43 +01:00
Balint Reczey
cfbad60da9 login.defs: Warn about weak cryptographic choices, like upstream 2022-03-03 17:59:43 +01:00
Balint Reczey
f6500af0fb login.defs: List default value of HOME_MODE 2022-03-03 17:59:33 +01:00
Balint Reczey
abd7c0d1a8 Update changelog 2022-02-11 13:14:07 +01:00
Balint Reczey
b96c915fb6 useradd: Restore defaults used up to 4.8.1 version
Also fix /etc/default/useradd to state that mail spool directories are
not created.
2022-02-11 13:14:04 +01:00
Balint Reczey
c9d3bfbed8 debian/tests/control: Mark smoke test as superficial 2022-02-02 11:58:27 +01:00
Balint Reczey
b8a6958c8c debian/README.source: Recommend submitting translations upstream 2022-01-31 14:07:22 +01:00
Balint Reczey
b8eb6e21e3 Upload to unstable 2022-01-31 10:33:42 +01:00
Balint Reczey
fbcc252aa2 Update changelog 2022-01-26 18:01:08 +01:00
Balint Reczey
78ed95c5f6 debian/NEWS: Fix version and release of latest entry 2022-01-26 17:31:40 +01:00
Balint Reczey
78b4357090 debian/copyright: Fix typo
Gbp-Dch: Ignore
2022-01-23 09:28:22 +01:00
Balint Reczey
8971f347df Update changelog 2022-01-22 21:53:26 +01:00
Balint Reczey
f7a09bbd35 debian/login.defs: Set default subuid and subgid ranges 2022-01-22 21:53:25 +01:00
Balint Reczey
efb3723826 debian/tests: Cherry-pick part of autopkgtest from Ubuntu
Thanks: Michael Vogt for the more extensive suite in Ubuntu
2022-01-22 21:53:25 +01:00
Balint Reczey
600860fd1b debian/NEWS: Mention new login behaviour regarding empty password field
Also set PREVENT_NO_AUTH in shipped login.defs accordingly.
2022-01-22 21:53:25 +01:00
Balint Reczey
0246ee1e32 debian/login.defs: List new GRANT_AUX_GROUP_SUBIDS option in shipped login.defs 2022-01-22 21:53:25 +01:00
Balint Reczey
a784da8035 debian/control: Make the Vcs-Browser URL canonical 2022-01-22 21:53:25 +01:00
Balint Reczey
17b9314598 debian/login.lintian-overrides: Drop unused override 2022-01-22 21:53:25 +01:00
Balint Reczey
73b4950948 Update changelog 2022-01-22 21:53:25 +01:00
Balint Reczey
c5e7641878 Ship the libsubid4 and libsubid-dev packages and ship getsubids in uidmap 2022-01-22 21:53:25 +01:00
Balint Reczey
27194eea96 debian/rules: Drop obsolete variable setting 2022-01-22 21:53:25 +01:00
Balint Reczey
988e6e1667 debian/rules: Stop using --disable-shared to build shared libraries 2022-01-22 21:53:25 +01:00
Balint Reczey
8655461698 Include YESCRYPT options in shipped login.defs
Closes: #991914
2022-01-22 21:53:25 +01:00
Balint Reczey
395194208e Enable newly added yescrypt support 2022-01-22 21:53:25 +01:00
Balint Reczey
6116809ed3 Set NONEXISTENT to /nonexistent in shipped login.defs
Closes: #960318
2022-01-22 21:53:25 +01:00
Balint Reczey
d9490db020 Refresh patches 2022-01-22 21:53:04 +01:00
Balint Reczey
7588913847 Fix copyright file
Gbp-Dch: Ignore
2022-01-22 00:02:16 +01:00
Balint Reczey
3fe38f1a8e Update upstream source from tag 'upstream/4.11.1+dfsg1'
Update to upstream version '4.11.1+dfsg1'
with Debian dir dabfc6c107
2022-01-21 23:41:21 +01:00
Balint Reczey
ae9399155f debian/upstream/signing-key.asc: Update upstream signing key 2022-01-21 23:41:03 +01:00
Balint Reczey
8234369aa8 debian/watch: Repack upstream tarball with +dfsg1 suffix 2022-01-21 23:40:04 +01:00
Balint Reczey
f5e88fde2a debian/copyright: Fully rewrite the file based on upstream license update 2022-01-21 23:37:22 +01:00
Balint Reczey
f06a70460c Update changelog 2021-11-14 13:18:22 +01:00
Balint Reczey
e225d71e7f Install nologin /usr/sbin without patching makefiles 2021-11-14 13:17:32 +01:00
Balint Reczey
1ea5452692 login: Don't list su command as shipped
Closes: #960637
2021-11-14 12:23:37 +01:00
Balint Reczey
be18f1bbfc Update changelog 2021-11-10 10:50:19 +01:00
Balint Reczey
6b02a8c46a debian/control: Revert to my personal email address in the Maintainer field 2021-11-10 10:50:06 +01:00
Balint Reczey
1529920170 Rename deprecated debian/passwd.tmpfile to debian/passwd.tmpfiles 2021-11-10 10:50:03 +01:00
Balint Reczey
0905cf7764 Update changelog 2021-11-10 01:10:02 +01:00
Balint Reczey
b93dcd7b74 Clean up debian/control using 'cme fix dpkg-control' 2021-11-10 01:07:58 +01:00
Balint Reczey
537fb2b47d List man pages to install in debian/*.manpages instead of in debian/*.install 2021-11-10 01:02:37 +01:00
Balint Reczey
ea2453d97e debian/control: Bump debhelper-compat version to 13 2021-11-10 00:59:14 +01:00
Balint Reczey
06238ddfc6 Add files to debian/not-installed or install them when they were missed 2021-11-10 00:59:14 +01:00
Balint Reczey
a0f09c4de7 Make passwd recommend sensible-utils because vipw uses sensible-editor 2021-11-07 15:12:31 +01:00
Balint Reczey
d40cb183f8 Update changelog 2021-11-07 14:53:34 +01:00
Balint Reczey
a155720a06 debian/control: Switch to libsemanage-dev from libsemanage1-dev
Closes: #998633
2021-11-07 14:49:25 +01:00
Johannes Schauer Marin Rodrigues
5a8056702c debian/changelog: finalize 2021-10-23 21:05:12 +02:00
Johannes Schauer Marin Rodrigues
89221d3983 debian/changelog: add new entry 2021-10-23 20:54:30 +02:00
Johannes Schauer Marin Rodrigues
b7878255ff Merge branch 'dpkg-root' into 'master'
cruft removal and support for DPKG_ROOT (closes: #989712, #992578)

See merge request debian/shadow!15
2021-10-23 18:45:33 +00:00
Helmut Grohne
06d1bd8617 login.postinstd support for DPKG_ROOT (closes: #992578) 2021-08-20 14:39:17 +02:00
Helmut Grohne
d19ac3ae86 login.postinstd remove cruft (closes: #989712) 2021-08-20 14:38:35 +02:00
Balint Reczey
cfc17bfaa7 Merge branch 'clean-up-old-passwd-maintscript' into 'master'
Remove obsolete code from passwd maintscripts

See merge request debian/shadow!11
2020-04-20 21:28:07 +00:00
Niels Thykier
fe2a40ab85 Remove obsolete code from passwd maintscripts
The transitional behaviour was complete before oldoldstable and is no
longer relevant.  Moving this snippet will eventually enable us to
remove the preinst for passwd completely (when the
/etc/cron.daily/passwd removal is complete).  This will both reduce
the total number of maintscripts and also enable us to simplify
deployment DPKG_ROOT (the InstallBootstrap spec).

  * https://wiki.debian.org/Teams/Dpkg/Spec/InstallBootstrap

Signed-off-by: Niels Thykier <niels@thykier.net>
2020-04-18 09:03:48 +00:00
Balint Reczey
c7baab6534 Merge branch 'clean-up-old-login-preinst' into 'master'
Remove obsolete login.preinst

See merge request debian/shadow!10
2020-04-18 09:00:17 +00:00
Niels Thykier
92b40afe13 Remove obsolete login.preinst
The transitional behaviour was complete before oldoldstable and is no
longer relevant.  Moving this snippet will eventually enable us to
remove the preinst for login completely (when the /etc/securetty
removal is complete).  This will both reduce the total number of
maintscripts and also enable us to simplify deployment DPKG_ROOT (the
InstallBootstrap spec).

 * https://wiki.debian.org/Teams/Dpkg/Spec/InstallBootstrap

Signed-off-by: Niels Thykier <niels@thykier.net>
2020-04-18 08:59:07 +00:00
Balint Reczey
7456cef7e2 Update changelog 2020-02-07 15:54:36 +01:00
Balint Reczey
dc0f840741 debian/HOME_MODE.xml: Ship the file that was accidentally omitted from upstream tarball 2020-02-07 00:22:41 +01:00
Balint Reczey
10af5ab4c4 Update changelog 2020-02-07 00:10:01 +01:00
Balint Reczey
2d2f190b5f Refresh patches 2020-02-06 23:33:56 +01:00
Balint Reczey
8b9729cf03 Update upstream source from tag 'upstream/4.8.1'
Update to upstream version '4.8.1'
with Debian dir 4e0ff7ffe2
2020-02-06 23:15:01 +01:00
Balint Reczey
8a1d6c51aa debian/default/useradd: Fix typo DHSELL -> DSHELL
Closes: #897028
2019-12-27 22:44:17 +01:00
Balint Reczey
b1eaec13e7 Update changelog 2019-12-20 16:40:45 +01:00
Balint Reczey
262a350c14 debian/login.su.pam: Drop unused file 2019-12-16 23:02:27 +01:00
Andreas Henriksson
752c64e4e4 Update debian/changelog 2019-12-05 15:17:06 +01:00
Andreas Henriksson
fa4dccbc4a Fix lintian warning useless-autoreconf-build-depends
Newer debhelper will pull in and run dh-autoreconf
by default, so no need for explicit build-depends or
usage.
2019-12-05 15:17:06 +01:00
Andreas Henriksson
e34706dd5b Cherry-pick upstream patch reverting bindir/sbindir
From:
3cc3948d71.patch
2019-12-05 15:12:17 +01:00
Andreas Henriksson
787ebc3336 Refresh and massage patches to apply
The following needed massaging to apply:
* debian/patches/508_nologin_in_usr_sbin
* debian/patches/401_cppw_src.dpatch

The remaining patches just got trivial quilt refresh updates,
except debian/patches/506_relaxed_usernames which needed
special attention to be correctly refreshed.
2019-12-05 15:08:29 +01:00
Andreas Henriksson
93ea3fe510 Use explicit --without-su configure flag
The shadow package did now ship the su program even before this,
Debian uses the util-linux implementation of su (since Buster).
In shadow 4.8 there's now an explicit configure flag that can be
used to disable su explicitly, rather than just not shipping it in
the resulting debian package.

See commit 88de51965d
"Stop shipping su and break old util-linux version. (See #833256)"
2019-12-05 13:39:26 +01:00
Andreas Henriksson
30e6a960ee Replace gnome-doc-utils build-dep with itstool
Closes: #881889
2019-12-05 13:34:19 +01:00
Andreas Henriksson
e38381641b Update debian/changelog 2019-12-05 13:34:19 +01:00
Andreas Henriksson
dc46a7a96f Update upstream source from tag 'upstream/4.8'
Update to upstream version '4.8'
with Debian dir 22c83fa39e
2019-12-05 13:29:31 +01:00
Andreas Henriksson
1177f4b257 Update debian/changelog 2019-12-05 13:29:18 +01:00
Yuriy M. Kaminskiy
0a3492dd90 Mark uidmap and login as Multi-Arch: foreign
Closes: #934473
2019-11-11 16:54:57 +01:00
Justin B Rye
77901f4115 login: Update package description
Closes: #808301
2019-11-11 16:25:49 +01:00
Balint Reczey
042e76175a Merge branch 'pam_selinux' into 'master'
Move the call to pam_motd before pam_selinux open

See merge request debian/shadow!8
2019-09-16 13:21:49 +00:00
Laurent Bigonville
4d8a10d86c Move the call to pam_motd before pam_selinux open
pam_selinux calls setexeccon() with the context of the user, that means
that the first execve() after the call to "pam_selinux open" will be
executed in the user's context.

As pam_motd in debian calls system() to run run-parts to generate the
motd dynamically we need to be sure that this is done before that so it
runs in the context of the login executable.
2019-09-03 17:00:06 +02:00
Balint Reczey
9bda99f55d Update changelog 2019-07-16 18:49:41 +02:00
Balint Reczey
927c6cbdd6 Merge branch 'fix-securetty-news' into 'master'
Improve NEWS entry about securetty

See merge request debian/shadow!7
2019-07-16 15:11:11 +00:00
Gaudenz Steinlin
8f33168316 Improve NEWS entry about securetty
The original version was unclear because it was missing a not in the second part of the sentence.
2019-07-16 07:36:39 +00:00
Balint Reczey
488bb269c9 Update changelog 2019-07-15 23:45:51 +02:00
Balint Reczey
1a76a81ccc Remove Christian Perrier from Uploaders according to his request
Thank you for maintaining shadow for long years!

Closes: #893944, #927576
2019-07-15 23:11:39 +02:00
Balint Reczey
1e63ff4abc Remove obsolete /etc/cron.daily/passwd in maintainer scripts
Closes: #932017
2019-07-15 12:51:34 +02:00
Balint Reczey
8931f490ed Update changelog 2019-07-08 15:59:16 +02:00
Balint Reczey
1ddb81753d Clean up /etc/securetty properly on upgrade 2019-07-08 15:46:55 +02:00
Balint Reczey
252ca1a609 debian/NEWS: Fix version of latest entry 2019-07-08 15:36:32 +02:00
Balint Reczey
3709c159af Run autopkgtest in Salsa CI when it exists 2019-06-23 22:25:01 +02:00
Balint Reczey
00c091542c Update changelog 2019-06-23 22:13:18 +02:00
Balint Reczey
084a543a03 Refresh patches 2019-06-23 22:11:48 +02:00
Balint Reczey
4793149a12 Update upstream source from tag 'upstream/4.7'
Update to upstream version '4.7'
with Debian dir ae6ca0721c
2019-06-23 22:07:03 +02:00
Balint Reczey
d04fc57f13 Fix checking upstream tarball's OpenPGP signature 2019-06-23 16:49:11 +02:00
Balint Reczey
1daf68f0a3 Ship some missing man files 2019-06-23 16:17:34 +02:00
Balint Reczey
58ead426f4 Migrate to dh from cdbs 2019-06-23 16:02:51 +02:00
Balint Reczey
9be33624de Update changelog 2019-06-23 15:48:31 +02:00
Balint Reczey
f1f3ef5674 Stop shipping and honoring /etc/securetty
Closes: #731656, #830255, #879903, #920764, #771675, #917893, #607073
2019-06-23 15:48:00 +02:00
Balint Reczey
c60535694b Update changelog 2019-06-19 15:59:55 +02:00
Balint Reczey
7bc992f580 Drop Lintian override for su, it is not shipped in login anymore 2019-06-19 14:51:45 +02:00
Balint Reczey
7c34f34109 Merge branch 'master' into 'master'
Remove cron daily backup

See merge request debian/shadow!6
2019-06-19 10:09:37 +00:00
Balint Reczey
e153c45690 Update changelog 2019-06-19 00:46:57 +02:00
Bryan Quigley
9c70ce4480 Remove cron daily backup
It was added in 2010 (#554170) as a split off from a previous cron
job.  I haven't seen an arguement for why it's useful to keep.

Depending on when a mistake occurs in one of the files it backups
it will provide variable recovery time of 0 to 24hours.
2019-06-17 09:38:53 -07:00
Balint Reczey
6170e87bd5 Add Salsa CI configuration 2019-05-14 17:07:31 +02:00
Balint Reczey
2ace7fb8f5 Merge remote-tracking branch 'origin/master' 2019-05-14 16:42:35 +02:00
Balint Reczey
b2a4d20bf7 Merge branch 'set-rules-requires-root' into 'master'
Declare the explicit requirement for (fake)root

See merge request debian/shadow!2
2019-05-14 14:35:25 +00:00
Balint Reczey
089560d90e Refresh patches 2019-03-03 23:40:55 +01:00
Balint Reczey
d6eb9f97a0 Update upstream source from tag 'upstream/4.6'
Update to upstream version '4.6'
with Debian dir e58f54ac48
2019-03-03 23:31:37 +01:00
Ondřej Nový
7ca7e82ae8 d/changelog: Remove trailing whitespaces 2018-10-01 09:38:15 +02:00
Niels Thykier
19c35c70e1 Declare the explicit requirement for (fake)root
The shadow package currently requires (fake)root to produce the debs due to static non-root:root ownerships in the debs.
2018-08-12 18:07:23 +00:00
Balint Reczey
b001531192 Move packaging repository to Salsa 2018-07-28 17:35:13 +08:00
Andreas Henriksson
88de51965d Stop shipping su and break old util-linux version. (See #833256)
Breaks on old version to force lockstep upgrade, which should
really be a depends-new-version (and can be switched around
together with util-linux once the transition is finished).
Using Breaks/Depends the 'wrong' way around is to make apt
unpack things in the 'right' order (avoiding any gaps where
/bin/su is not available during the upgrade phase).
2018-07-28 17:31:41 +08:00
Balint Reczey
df6b651325 Update changelog 2017-09-27 12:56:13 -04:00
Balint Reczey
406a28db14 Use my @ubuntu.com email address in Maintainer field 2017-09-27 12:45:10 -04:00
Balint Reczey
00bcf65d58 Revert "Add pts/0 and pts/1 to securetty"
Adding pts/* defeats the purpose of securetty. Let containers add it if
needed as described in #830255.

This reverts commit 8b5c7cace3
2017-09-17 23:42:28 +02:00
Balint Reczey
9105fcd24c Update changelog 2017-08-22 16:44:34 +02:00
Balint Reczey
ba18b6cab2 Cut redundant information from Debian-specific README files 2017-08-12 18:48:09 -04:00
Balint Reczey
b43b5a89d1 Drop patches manipulating su argument concatenation:
- 523_su_arguments_are_concatenated
- su_arguments_are_no_more_concatenated_by_default
2017-08-11 11:16:45 -04:00
Balint Reczey
591aa8debe Refresh patches
Dropped patches:
- 0001-Typos-fix-in-german-translation-of-man-pages.patch
- 0002-Last-bits-of-enabling-subuids.patch
- 0003-Dutch-translation-update.patch
- 0004-Updated-Czech-translation.patch
- 0005-Update-for-German-man-pages.patch
- 0006-French-manpage-translation.patch
- 0007-Fix-some-spelling-issues-in-the-Norwegian-translatio.patch
- 0008-su-properly-clear-child-PID.patch
- 1010_vietnamese_translation
- 301-Reset-pid_child-only-if-waitpid-was-successful.patch
2017-08-10 18:36:48 -04:00
Balint Reczey
bcd42a4c62 Merge tag 'upstream/4.5'
Upstream version 4.5

# gpg: Signature made 2017. aug. 10., csütörtök, 18:26:48 EDT
# gpg:                using RSA key F664D256B4691A7D
# gpg:                issuer "balint.reczey@canonical.com"
# gpg: Good signature from "Balint Reczey <rbalint@ubuntu.com>" [unknown]
# gpg:                 aka "Balint Reczey <balint@balintreczey.hu>" [unknown]
# gpg:                 aka "Balint Reczey <rbalint@debian.org>" [unknown]
# gpg:                 aka "Balint Reczey <balint@cursorinsight.com>" [unknown]
# gpg:                 aka "Balint Reczey <balint.reczey@interri.com>" [unknown]
# gpg:                 aka "Balint Reczey <balint.reczey@canonical.com>" [unknown]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg:          There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 8A12 5F69 8A1F 7762 B5D5  363E 55AD 1415 21E7 64DF
#      Subkey fingerprint: 397A 4810 EEB1 3306 8C2E  8B7A F664 D256 B469 1A7D
2017-08-10 18:26:49 -04:00
Salvatore Bonaccorso
d7f24f954e Import Debian changes 1:4.4-4.1
shadow (1:4.4-4.1) unstable; urgency=high

  * Non-maintainer upload.
  * Reset pid_child only if waitpid was successful.
    This is a regression fix for CVE-2017-2616. If su receives a signal like
    SIGTERM, it is not propagated to the child. (Closes: #862806)
2017-08-10 18:25:45 -04:00
Balint Reczey
f9176c3be3 Update changelog 2017-02-24 01:50:13 +01:00
Balint Reczey
bc6cd09194 su: properly clear child PID (CVE-2017-2616)
Closes: #855943
2017-02-24 01:50:09 +01:00
Balint Reczey
b8a7c3ac04 Update changelog 2017-01-25 16:43:47 +01:00
Stéphane Graber
133b10b734 Add missing /etc/{subgid|subuid} in postinst 2017-01-20 20:53:36 +01:00
Balint Reczey
40146019e6 Sync motd handling with sshd
Using patch from Ubuntu

Closes: #757148
2017-01-20 20:41:49 +01:00
Balint Reczey
3588f5d2a3 Clean up stale locks on boot
Closes: #478771
2017-01-20 20:11:49 +01:00
Balint Reczey
af6b417156 Start working on next upload 2017-01-20 20:08:36 +01:00
Balint Reczey
9b4168f0b2 Update changelog 2017-01-19 18:55:32 +01:00
Balint Reczey
fd20e4fe4b Add ttySC[4-9] to securetty
Closes: #768020
2017-01-19 18:55:32 +01:00
Balint Reczey
d779e83350 Add ttySAC* to securetty
Closes: #824391
2017-01-19 18:55:32 +01:00
Balint Reczey
8b5c7cace3 Add pts/0 and pts/1 to securetty
Closes: #830255
2017-01-19 18:55:32 +01:00
Lars Bahner
182a8cf464 Fix some spelling issues in the Norwegian translation
Closes: #800553
2017-01-19 18:55:28 +01:00
Thomas Blein
b20639f055 French manpage translation
Closes: #805182
2017-01-19 18:25:01 +01:00
Holger Wansing
0531cb85a4 Update for German man pages 2017-01-19 18:25:00 +01:00
Miroslav Kuře
19ebc9d55a Updated Czech translation
Closes: #759113
2017-01-19 18:24:54 +01:00
Trần Ngọc Quân
f19610854c Update Vietnamese translation
Closes: #777107
2017-01-19 17:24:11 +01:00
Frans Spiesschaert
398a6d383a Dutch translation update
Closes: #772470
2017-01-19 17:17:57 +01:00
Balint Reczey
70c472f91d Add call to pam_keyinit for login pam service
This module is linux-any only, so copy what openssh has already done and
remove the call at build time for other architectures.

The call to this module is needed to have proper per-session kernel
keyring.

Closes: #734671
2017-01-19 16:14:42 +01:00
Christian Perrier
3b66774757 Include groupmems(8) in the passwd package
Closes: #663117
2017-01-18 18:19:11 +01:00
Christian Perrier
a975974d2c Fix typos in login.pam (thanks to Jakub Wilk for reporting)
Closes: #747115
2017-01-18 18:17:55 +01:00
Balint Reczey
25df6ffc55 Send 1000_configure_userns patch upstream 2017-01-18 18:14:19 +01:00
Balint Reczey
9eb5f5e758 Fix typos in German man pages
Closes: #734609
2017-01-18 18:12:18 +01:00
Balint Reczey
e530aed7c6 Don't .gitignore patches 2017-01-18 18:11:14 +01:00
Balint Reczey
39c9155f66 Update patch naming docmentation 2017-01-18 18:09:35 +01:00
Laurent Bigonville
60d4dc5ae0 Move pam_selinux open call higher in the session stack
Closes: #747313
2017-01-18 17:05:36 +01:00
Balint Reczey
5a3eada191 Replace user´s -> user's to make login.def file valid ASCII
Closes: #850338
2017-01-18 16:58:05 +01:00
Balint Reczey
616a2b0c7b Always use /bin/sh shell in the build
Closes: #817971
2017-01-18 13:38:50 +01:00
Balint Reczey
9089583e08 Update homepage to new upstream 2017-01-07 19:43:54 +01:00
Balint Reczey
b89c17643b Start working on next upload 2017-01-07 19:42:10 +01:00
Balint Reczey
83c828d86a Update changelog 2017-01-06 17:42:24 +01:00
Balint Reczey
786bb46ef9 Tag login package as essential properly 2017-01-06 17:29:01 +01:00
Balint Reczey
d4fc50519b Stop build-depending on build-essential dpkg-dev 2017-01-06 16:24:48 +01:00
Balint Reczey
45c29ff8ce Add myself to Uploaders 2016-12-01 13:47:51 +01:00
Balint Reczey
8e21a0615d Update d/control using cme fix 2016-12-01 13:47:09 +01:00
Balint Reczey
b679e205d8 ACK NMU by Samuel Thibault 2016-11-30 23:06:24 +01:00
Balint Reczey
186f8f8c5a Update changelog 2016-11-30 23:05:02 +01:00
Balint Reczey
d53df510ec Bump debhelper compat level to 10 2016-11-30 03:05:17 +01:00
Balint Reczey
569a90cd97 Disable Vietnamese translation patch because it does not apply cleanly 2016-11-30 03:03:43 +01:00
Balint Reczey
b5d9320f6d Update changelog 2016-11-30 03:03:39 +01:00
Balint Reczey
f1e917cc43 Merge tag 'upstream/4.4'
Upstream version 4.4

Conflicts:
	.gitignore
	po/bs.po
	po/ca.po
	po/cs.po
	po/da.po
	po/de.po
	po/dz.po
	po/el.po
	po/es.po
	po/eu.po
	po/fi.po
	po/fr.po
	po/gl.po
	po/he.po
	po/hu.po
	po/id.po
	po/it.po
	po/ja.po
	po/kk.po
	po/km.po
	po/ko.po
	po/nb.po
	po/ne.po
	po/nl.po
	po/nn.po
	po/pl.po
	po/pt.po
	po/pt_BR.po
	po/ro.po
	po/ru.po
	po/shadow.pot
	po/sk.po
	po/sq.po
	po/sv.po
	po/tl.po
	po/tr.po
	po/uk.po
	po/vi.po
	po/zh_CN.po
	po/zh_TW.po
2016-11-30 02:44:37 +01:00
Balint Reczey
83e36d1e1b Update debian/watch to use GitHub releases 2016-11-30 02:25:33 +01:00
Serge Hallyn
d9e428fd63 Imported Debian patch 1:4.4-1 2016-10-13 10:19:55 -05:00
Serge Hallyn
3fcf082618 Imported Upstream version 4.4 2016-10-13 10:14:46 -05:00
Serge Hallyn
68cd195044 add three security patches
Signed-off-by: Serge Hallyn <serge@hallyn.com>
2016-08-05 17:44:27 -05:00
Serge Hallyn
d8af4b7e5b debian/control: use https in VCS fields 2016-07-30 23:36:32 -05:00
Serge Hallyn
598853e638 debian/control: replace nekral with myself in Uploaders
Closes #832380
2016-07-30 23:32:45 -05:00
Serge Hallyn
5a6e0c0ebd Merge upstream 4.3 2016-07-30 23:29:49 -05:00
Christian Perrier
f9aecd19f3 Don't forget the English manpage for groupmems 2014-05-09 22:55:10 +02:00
Christian Perrier
14d5db18a8 Next release will be 4.2.1 2014-05-09 19:52:30 +02:00
Christian Perrier
7df6dd8cf2 Next release will be 4.2.1 2014-05-09 19:18:43 +02:00
Christian Perrier
d5849a0f2b Drop patches merged upstream or no longer used 2014-05-09 19:16:39 +02:00
Christian Perrier
e56640f2af Merge upstream 4.2.1 2014-05-09 19:14:14 +02:00
Christian Perrier
e1782606c1 Include groupmems(8) in the passwd package. Closes: #663117 2014-05-09 12:12:46 +02:00
Christian Perrier
11e8de1be1 Fix a typo in su manpage. Done as an upstream patch, as of now and will be part of 4.2.1 Closes: #730692 2014-05-08 10:49:25 +02:00
Christian Perrier
dedf96dd6f Fix some typos and errors in German translation of manpages. Done as an upstream patch, as of now and will be part of 4.2.1 Closes: #734609 2014-05-08 10:44:29 +02:00
Christian Perrier
4ea3973200 Update French translations of programs messages and manpages. Done as an upstream patch, as of now and will be part of 4.2.1 Closes: #725793 2014-05-08 10:09:46 +02:00
Christian Perrier
2fb68149d6 Move pam_selinux open call higher in the session stack. Closes: #747313 2014-05-08 08:48:00 +02:00
Laurent Bigonville
a154eb5401 Move pam_selinux open call higher in the session stack 2014-05-08 08:46:37 +02:00
Christian Perrier
4a2fadfa21 Fix typos in login.pam (thanks to Jakub Wilk for reporting) Closes: #747115 2014-05-06 07:39:52 +02:00
Christian Perrier
1566e6de21 I forgot the cheese name. Really really release 4.2-2 2014-05-04 19:50:54 +02:00
Christian Perrier
acf9e8fa4a Release 4.2-3 in unsctable 2014-05-04 19:39:31 +02:00
Christian Perrier
6c29058c9f Fix typo in changelog entry 2014-05-04 19:38:27 +02:00
Christian Perrier
16e593e364 * Check upstream signing key in debian/watch 2014-05-04 19:38:08 +02:00
Christian Perrier
e8c4143fdc Properly name the upstream signing key file 2014-05-04 19:36:54 +02:00
Christian Perrier
b4ad01d830 Add upstream signing key as debian/upstream-signing-key.asc 2014-05-04 19:01:50 +02:00
Christian Perrier
ea64aa07a8 Release 4.2-2 to unstable 2014-05-04 18:05:05 +02:00
Christian Perrier
523b9000fd Add a lintian override for newuidmap and newgidmap setuid binaries 2014-05-04 18:04:15 +02:00
Christian Perrier
71869c2d24 Don't forget the series file 2014-04-30 22:56:50 +02:00
Christian Perrier
2aa9297367 Vietnamese translation update. 2014-04-30 22:56:20 +02:00
Christian Perrier
9bc936e018 Fix conflict in debian/changelog 2014-04-30 22:53:53 +02:00
Christian Perrier
2ef82ecb53 Revert Vietnamese translation update. It should go in upstream patches 2014-04-30 22:53:10 +02:00
Christian Perrier
5fc7602f3e Enable libaudit support. Closes: #745774 2014-04-30 22:29:03 +02:00
Christian Perrier
0274441ec5 Vietnamese translation update. 2014-04-30 22:26:25 +02:00
Christian Perrier
60c9571605 use the new pam_exec functionality from pam 1.1.8-1 to implement the dynamic motd, rather than using /run/motd.dynamic from initscripts. This will allow initscripts to drop /etc/init.d/motd. Closes: #741129 2014-04-30 22:23:26 +02:00
Christian Perrier
c7e2932be4 Enable the login package on hurd-any, but without /bin/login, still provided by the hurd package. Closes: #737805. This fix was accidentally forgotten in 1:4.2-1 2014-04-30 22:20:05 +02:00
Christian Perrier
d480b7dfee Add 1:4.1.5.1-1.1 NMU changelog entries 2014-04-30 22:17:11 +02:00
Christian Perrier
260b0eb77a Last upload integrates the use of dh_autoreconf which has the same effect then Eric Dorland's patch in 1:4.1.5.1-1.1 NMU to drop the use of automake1.9. Closes: #724434 2014-04-30 22:16:01 +02:00
Christian Perrier
34599da75c Release to experimental 2014-04-22 09:02:17 +02:00
Christian Perrier
aeb11d0c3e Really bump Standards to 3.9.5 2014-04-18 08:30:35 +02:00
Christian Perrier
9c7fd6b104 Explicitly point to GPL-2 document in debian/copyright 2014-04-18 08:29:43 +02:00
Christian Perrier
1f40da3a5f Use 'set -e' in postinst scripts and not in thei shebang line 2014-04-18 08:27:30 +02:00
Christian Perrier
c84a3fd5f8 Bump Standards to 3.9.5 (checked) 2014-04-18 08:25:16 +02:00
Christian Perrier
25cba03d2d Fix 1000_configure_userns to avoid dropping a needed #endif Closes: #744877 2014-04-16 06:27:01 +02:00
Christian Perrier
68ee6e45ad Unfuzz all patches 2014-03-15 17:31:14 +01:00
Christian Perrier
00e4c00838 Changelog entries for Laurent patches 2014-03-15 12:14:27 +01:00
Laurent Bigonville
45c41f0de6 Switch to dpkg-source 3.0 (quilt) format 2014-03-15 12:12:50 +01:00
Laurent Bigonville
b27aad278a Add build-dependency against bison 2014-03-15 12:12:09 +01:00
Laurent Bigonville
57283d75f7 Call dh-autoreconf since we need to regenerate all the autofoo files
The .gitignore is removing all the autofoo files and we need to
regenerate them at build time
2014-03-15 12:11:45 +01:00
Christian Perrier
2649a0dc50 Delete extraneous files 2014-03-14 21:51:48 +01:00
Christian Perrier
68fb7adaf7 Adapt userns patches to 4.2.0 (hopefully) 2014-03-14 21:51:03 +01:00
Christian Perrier
bbfcca9015 Merge tag 'upstream/4.2'
Upstream version 4.2
2014-03-01 19:59:51 +01:00
Micah Anderson
0e011449f7 fix installation of setuid/setgid/newuidmap/newgidmap man pages 2014-02-26 11:42:34 -05:00
Micah Anderson
99a8e345da login.postinst: install a default /etc/subuid and /etc/subgid 2014-02-25 23:11:41 -05:00
Micah Anderson
7573a1f684 Update documentation of UMASK: Explain that USERGROUPS_ENAB will modify this default for UPGs. (Closes: #583971) 2014-02-25 23:11:41 -05:00
Micah Anderson
d89d44af82 add LXC devices to debian/securetty.linux 2014-02-25 23:11:41 -05:00
Micah Anderson
13f031cd67 Add debian/patches/userns: patches to enable use of subuids (Closes: #739981) 2014-02-25 23:11:31 -05:00
Nicolas François
0c7f32eab6 Set default editor to sensible-editor for vipw.
* debian/rules: Set default editor to sensible-editor for vipw.
    Closes: #688252
2013-08-25 21:05:03 +02:00
Nicolas François
16796d7e3b Document bug closed in next version.
- vipw: Fix error reporting when editor fails. Closes: #688260
2013-08-25 21:00:41 +02:00
Nicolas François
371d5aa969 Close #705301 and #720004
* Document the upstream update of the Japanese translation.
  * debian/login.su.pam: Enable pam_limits by default. Closes: #705301
2013-08-23 23:21:50 +02:00
Nicolas François
0687637b17 Remove TODO entries no more relevant. 2013-08-16 00:50:34 +02:00
Nicolas François
4294d76926 Updated to current upstream. 2013-08-16 00:49:34 +02:00
Nicolas François
e2fa8501ca Set uidmap as priority optional. 2013-08-16 00:48:52 +02:00
Nicolas François
0047ae2042 Document bugs closed in next version.
- su: child cleanup is performed before terminating PAM sessions. This
      avoids anoying "...terminated" messages when PAM module send signal to
      su during session close. Closes: #670132
    - vipw/vigr is checking arguments provided after options. Closes: #677812
2013-08-16 00:45:22 +02:00
Nicolas François
820997101a Install translated manpages. 2013-08-10 00:07:09 +02:00
Nicolas François
2e8f003402 Add uidmap package, based on Ubuntu.
* passwd.install: add new subuid.5 and subgid.5 manpages
  * debian/rules, debian/control, debian/uidmap.install: create new uidmap
    package containing the new setuid-root binaries newuidmap and newgidmap
2013-08-09 23:54:47 +02:00
Nicolas François
2e014282f7 Debian bug #675824 will be fixed in next version.
- Support C libraries with unknown fields in struct passwd.
      Closes: #675824
2013-08-07 02:01:11 +02:00
Nicolas François
be2dc119ed Bug#677275 will be closed in next release. 2013-08-05 15:34:59 +02:00
Christian Perrier
1e2d22eb6b Russian translation update. Closes: #718356 2013-08-01 21:26:01 +02:00
Christian Perrier
35d80a0a73 login.defs will be fixed by next upstream 2013-07-28 19:05:49 +02:00
Christian Perrier
f06ef92c66 German manpages translation will be fixed by next upstream 2013-07-28 18:58:29 +02:00
Christian Perrier
22d833f38e Use Laurent's patch 2013-07-28 18:51:01 +02:00
Christian Perrier
08807ee3fc Add pam_loginuid to login PAM sattings. Closes: #677441 2013-07-28 18:49:00 +02:00
Christian Perrier
80a1bae6fe One more bug foxed upstream 2013-07-28 14:43:20 +02:00
Christian Perrier
e8bdaa552b Document issues fixed by the next upstream release 2013-07-28 14:19:11 +02:00
Christian Perrier
60bf0e1338 Moved to git: replace Vcs-Git in place of Vcs-Svn and adapt Vcs-Browser. 2013-07-27 20:15:27 +02:00
Christian Perrier
33f491513e Merge tag 'upstream/4.1.5.1'
Upstream version 4.1.5.1
2013-07-27 18:42:28 +02:00
Christian Perrier
36ff9fa1df Merge branch 'upstream' 2013-07-27 18:41:48 +02:00
Christian Perrier
c0dbed948f Drop tests from master 2013-07-27 18:39:30 +02:00
Christian Perrier
03e6eeb8bb Move Debian-related files to debian/ 2013-07-27 18:36:40 +02:00
nekral-guest
9cf5fea519 Updated timestamp. 2012-05-25 17:32:12 +00:00
bubulle
62c424ce33 Another change suggested by Roger 2012-05-22 18:43:16 +00:00
nekral-guest
346bc7c0df * debian/control: Bump Standards-Version to 3.9.3 (no changes needed).
* debian/rules: Simplify setting of hardening flags. cdbs 0.4.103 needed to
    get hardened version of shadow-utils. Restore previous requirement on
    dpkg-dev to 1.13.5.
2012-05-20 15:30:55 +00:00
nekral-guest
d977bc5d19 - useradd(8): Return code 13 no more documented. Closes: #661802 2012-05-20 12:28:09 +00:00
nekral-guest
4a0d11ba27 Update debian/patches/series because 428_grpck_add_prune_option was
removed.
2012-05-20 11:06:53 +00:00
nekral-guest
8d3f289bd8 - manpages: .so links point to paths relative to the top-level manual
hierarchy. Closes: #661025
2012-05-20 11:05:39 +00:00
nekral-guest
7a04299f9e * German translation of manpages completed. Closes: #673234 2012-05-18 19:27:30 +00:00
nekral-guest
770fddc081 - userdel: Fix segfault when userdel removes the user's group.
Closes: #660406
2012-05-18 18:56:49 +00:00
nekral-guest
b079e4f331 Cleanup and new entry:
- login: log into utmp(x) but not into wtmp (this is done by pam_lastlog).
      Log to utmp(x) was broken by the fix for #605329. Closes: 659957
2012-05-18 18:29:59 +00:00
bubulle
ac43a9a2d5 Separation of static and dynamic motd components in login PAM module
Closes: #669698
2012-04-21 12:06:55 +00:00
bubulle
5c999162fa Complete Polish translation of logoutd(8. Closes: #668880 2012-04-15 10:54:54 +00:00
nekral-guest
4d45becee0 #657763 was closed in 1:4.1.5-1. 2012-02-16 20:30:43 +00:00
nekral-guest
057ad9bb69 * debian/patches/428_grpck_add_prune_option: removed -p option. The option
was not documented and was meant to fix consequences of a bug now fixed
    more than 10 years ago.
Note that debian/patches/428_grpck_add_prune_option was broken by the
refresh in 4.1.5-1
  * debian/shadowconfig.sh: Display issues, but dot not prompt interactively
    to fix passwd/group/shadow/gshadow issues. Closes: #638263
2012-02-16 20:28:21 +00:00
nekral-guest
27c3b04789 Added common chroot files for i386. 2012-02-12 22:19:32 +00:00
nekral-guest
553718623c Do not copy the .svn directories when preparing a chroot. 2012-02-12 22:19:05 +00:00
nekral-guest
438596a720 Update release date. 2012-02-12 21:34:49 +00:00
nekral-guest
5e3b5ba676 * execute missing tests
* make sure /etc/shadow remain owned by group shadow after each test execution
* make sure /nonexistent is not created after each test execution
2012-02-04 16:10:02 +00:00
nekral-guest
7ca179b885 Add 24 tests for the --root options 2012-02-04 16:07:22 +00:00
nekral-guest
1bd5acfa3f * debian/login.defs: Set the default encryption method to SHA512.
Closes: #657717
2012-01-28 19:05:05 +00:00
nekral-guest
a10d121ff7 * debian/control: depends on dpkg-dev (>= 1.16.1~) for including
/usr/share/dpkg/buildflags.mk
  * debian/control: Standards-Version: bumped to 3.9.2. No changes.
2012-01-28 18:57:31 +00:00
bubulle
c16590aaf3 Add bug closure 2012-01-28 13:30:33 +00:00
bubulle
013637e2de Bug closures for French translation updates 2012-01-27 18:46:51 +00:00
bubulle
c8c3924815 Add bug closure for Danish manpages translation 2012-01-26 18:59:09 +00:00
bubulle
18d4a7a6a9 Add bug closure for Danish translation 2012-01-26 18:55:36 +00:00
nekral-guest
36018131dd * debian/rules: Do not hard-code CFLAGS and LDFLAGS. Build with all
hardening flags set. Closes: #657010
2012-01-24 22:23:06 +00:00
nekral-guest
f35045dcf1 * Raisethe security issue at the top of the debian changelog.
* Refreshed patches
2012-01-24 19:36:45 +00:00
bubulle
2a2cee4a95 Portuguese. Closes: #623722, #656686 2012-01-21 07:18:05 +00:00
bubulle
30eae84422 German. Closes: #622908, #656503 2012-01-19 19:38:49 +00:00
nekral-guest
62c0ed4fcb * debian/control: Add Build-Depends on libsemanage1-dev [linux-any] 2012-01-15 21:24:44 +00:00
nekral-guest
315479a6ce gpasswd sets the /etc/group's password to 'x' when the /etc/shadow is
updated.
2012-01-15 14:24:01 +00:00
nekral-guest
a240b74921 Updated usage message for chpasswd, userdel, and usermod. 2012-01-15 14:21:47 +00:00
nekral-guest
48841074a0 Updated chgpasswd usage message. 2012-01-15 14:20:17 +00:00
bubulle
c55dcada36 Bug closure 2012-01-14 13:29:44 +00:00
bubulle
b7d5465b0e Add bug closure for #655194 2012-01-09 19:01:02 +00:00
nekral-guest
5f5b7d56a6 Remove data files generated by the tests. 2011-11-20 14:52:44 +00:00
nekral-guest
ca30001269 Ignore generated log files. 2011-11-20 14:25:58 +00:00
nekral-guest
e45face1d2 Ignore generated log files. 2011-11-20 14:17:48 +00:00
nekral-guest
2ad689b454 Updated comments. 2011-11-20 14:05:25 +00:00
nekral-guest
53b76ca815 Ignore generated log files. 2011-11-20 13:33:21 +00:00
nekral-guest
21b505094a Refreshed patches. 2011-11-19 15:13:17 +00:00
nekral-guest
89c37173e1 * debian/patches/506_relaxed_usernames: Also forbid names containing a
comma.
2011-11-19 15:09:54 +00:00
nekral-guest
7ab1a77227 * debian/patches/901_testsuite_gcov: Do not revert the locale when testing
with gcov to avoid coverage false negatives. This does not impact the
    debian binary package, only the test package.
2011-11-19 15:01:22 +00:00
nekral-guest
1d04d40bc6 Add tests
* grpck (1)
 * pwck (11)
2011-11-14 23:09:09 +00:00
nekral-guest
3bde6ef31b Add failure tests
* pwck (9)
 * groupmems (2)
2011-11-14 21:05:26 +00:00
nekral-guest
2dd2472e22 Add /etc/default/useradd to avoid creating spool files. 2011-11-14 21:00:41 +00:00
nekral-guest
e065751f91 Only report the requested access mode because the complete mode differs on
different architectures.
2011-11-14 20:57:22 +00:00
nekral-guest
f2973dcc5a Fix test (avoid fixed date). 2011-11-14 20:55:36 +00:00
nekral-guest
907c0ab20b Change in cppw error message. 2011-11-14 20:54:54 +00:00
nekral-guest
9171ec4eae Newlines were introduced in the useradd error messages. 2011-11-14 20:53:58 +00:00
nekral-guest
f21fe99292 newusers was fixed not to set the password to x in /etc/group when there
are no gshadow file.
2011-11-14 20:50:05 +00:00
nekral-guest
96845a5867 Update newusers usage message with the --root option. 2011-11-14 20:49:08 +00:00
nekral-guest
d984dcb999 Fix test. 2011-11-14 20:42:35 +00:00
nekral-guest
eafbe03cc8 /etc/default/useradd is mandatory for the correct operation of useradd. 2011-11-14 20:39:28 +00:00
nekral-guest
b63ac7ac95 Update the lastlog and faillog usage with the --root option. 2011-11-14 20:34:09 +00:00
nekral-guest
3dc001c683 Relax timeout checks. 2011-11-14 20:33:29 +00:00
nekral-guest
3cb3fec04a Add one test for passwd. 2011-11-14 20:28:33 +00:00
nekral-guest
d6508a4fed Add 3 tests for expiry. 2011-11-14 20:26:11 +00:00
nekral-guest
3b694115de Use simple test (without expect) for usage checking. 2011-11-14 20:25:01 +00:00
nekral-guest
903f041993 Add tests
* pwconv (2)
 * pwunconv (2)
 * grpconv (2)
 * grpunconv (2)
2011-11-14 20:19:14 +00:00
nekral-guest
9811f7fd4a The pwconv, pwunconv, grpconv, and grpunconv utils now have complete usage
message and report a usage error if needed.
2011-11-14 19:45:13 +00:00
nekral-guest
5852c4eb9b Fix the file ownership. 2011-11-14 19:43:28 +00:00
nekral-guest
b954300b83 Add 2 tests for chsh. 2011-11-14 19:35:35 +00:00
nekral-guest
a2c7f4c8a5 Update chsh usage with the --root option. 2011-11-14 19:33:55 +00:00
nekral-guest
8e85d1cb82 Update chage error message. 2011-11-14 19:32:54 +00:00
nekral-guest
ec7f69e97a Add one test for chage. 2011-11-14 19:32:08 +00:00
nekral-guest
fbdc52a86d Update the chage usage with the --root option. 2011-11-14 19:28:42 +00:00
nekral-guest
dff2fa836e chage/31_chage_interractive_date_invalid is currently failing and chage
gets killed.
Cleanup the lock files anyway.
2011-11-14 19:27:43 +00:00
nekral-guest
190dfc30eb Add one test for cppw. 2011-11-14 19:22:28 +00:00
nekral-guest
8ba58a61d5 Update cppw error message. 2011-11-14 19:21:04 +00:00
nekral-guest
c980cb6b3a Update the chpasswd, userdel, and usermod usage with the --root option. 2011-11-14 19:19:57 +00:00
nekral-guest
30b6ca81e0 /etc/default/useradd is necessary for the correct operation of useradd. 2011-11-14 19:18:53 +00:00
nekral-guest
541f6a66b8 useradd was fixed and does not set the password to x when there are no
shadow file.
2011-11-14 19:16:02 +00:00
nekral-guest
c6175f07e3 Update useradd usage with the --root option. 2011-11-14 19:15:10 +00:00
nekral-guest
0b8b6534cc Update the gpasswd and chgpasswd usage with the --root option. 2011-11-14 19:13:46 +00:00
nekral-guest
f6de85357c Add one test for groupmod. 2011-11-14 19:12:47 +00:00
nekral-guest
913827c3c1 Update groupmod usage with --root option. 2011-11-14 19:11:57 +00:00
nekral-guest
5fdb900d7b Add one test for groupadd. 2011-11-14 19:11:18 +00:00
nekral-guest
7803aa52ab Updated usage with the --root option. 2011-11-14 19:10:21 +00:00
nekral-guest
54746f0d92 Add 2 tests for groupdel. 2011-11-14 18:59:14 +00:00
nekral-guest
dd612ca974 Updated usage with options. 2011-11-14 18:58:15 +00:00
nekral-guest
55b516ba94 Add 8 tests for groupmems 2011-11-14 18:47:05 +00:00
nekral-guest
bda5661096 Fix test purpose. 2011-11-14 18:27:50 +00:00
nekral-guest
186f0b002a Usage message reported to stdout with the now valid -h option 2011-11-14 18:26:56 +00:00
nekral-guest
ce533f3250 Typo fixed in grpck. 2011-11-14 18:26:01 +00:00
nekral-guest
eb3cd52450 Update grpck usage message. 2011-11-14 18:25:11 +00:00
nekral-guest
28af4c5bc5 * debian/patches/401_cppw_src.dpatch: Detect as well too many and too
few arguments.
  * Fix section of debian changelog where update of patches are documented
2011-11-13 16:30:37 +00:00
nekral-guest
5bb64ec036 * debian/securetty.linux: Add s390/s390x ports ttysclp0. Closes: #647469 2011-11-06 19:14:12 +00:00
nekral-guest
6b8409e9e8 Refreshed patches. 2011-11-06 19:08:11 +00:00
nekral-guest
4a5447d4d7 Fix issue introduced by the synchronization with coding style. 2011-11-06 19:06:37 +00:00
nekral-guest
1c619c768d * New upstream release:
- groupmod: document that /etc/passwd can be modified by groupmod -g.
      Closes: #647308
2011-11-06 19:05:27 +00:00
nekral-guest
af075bffc9 - debian/patches/506_relaxed_usernames: Really check if the user/group
name starts with a dash. Also forbid names starting with '+' or '~'.
      Document the naming policy in useradd.8 / groupadd.8.
2011-10-31 22:54:38 +00:00
nekral-guest
971f260e94 Only report the requested access mode because the complete mode differs on different architectures. 2011-10-20 18:17:28 +00:00
nekral-guest
9f71e81c91 Usage of useradd was updated. 2011-10-20 18:15:31 +00:00
nekral-guest
7dc1f3b2dd Usage messages of cppw and grpconv were missing. 2011-10-20 18:13:50 +00:00
nekral-guest
5431d2abe2 cppw error returned in case of bad usage was changed (1->2). 2011-10-20 18:12:03 +00:00
nekral-guest
47bbcf4dc4 Fix messages. 2011-10-20 18:11:29 +00:00
nekral-guest
b512961c12 Continue synchronization with coding style
* Use of gettext (even if no messages would be translated in the current
   infrastructure)
 * report an additional strerror only if a message was provided
 * fix issue when cppwexit is called before the copy of file
2011-10-20 18:09:12 +00:00
nekral-guest
efab223b05 - debian/patches/401_cppw_src.dpatch, debian/patches/402_cppw_selinux:
Synchronize with coding style.
2011-10-18 22:44:46 +00:00
nekral-guest
cd964eccb5 - debian/patches/402_cppw_selinux: Avoid implicit conversion between
integer and boolean.
    - debian/patches/401_cppw_src.dpatch: Replace progname by Prog. Rename
      create_backup_file to create_copy. The lock functions do not ser errno.
      Do not report the error string on cppwexit.
2011-10-18 21:58:33 +00:00
nekral-guest
1ce22b1adc Refresh patches. 2011-10-18 21:29:56 +00:00
nekral-guest
6c4c7f47a0 * Add the new tests.
* Stop executing tests when RUN_TEST.STOP exists
 * Reset permissions on gcda files after running tests for suid tools (su).
2011-10-16 16:15:04 +00:00
nekral-guest
53ba4f6fc6 Add tests for:
* chage (6)
 * chsh (2)
 * cppw (3)
 * gpasswd (11)
 * grpconv (4)
 * grpunconv (4)
 * newusers (10)
 * pwconv (5)
 * pwunconv (4)
 * useradd (11)
2011-10-16 14:45:54 +00:00
nekral-guest
2d0341ae26 Added 4 failure tests for userdel. 2011-10-16 14:39:08 +00:00
nekral-guest
edc2bc5556 * Fix typos in comments.
* Remove generated directory.
2011-10-16 14:37:49 +00:00
nekral-guest
a3e655cc19 * The logs may be dated from the previous minute.
* Reverse the diff.
2011-10-16 14:34:17 +00:00
nekral-guest
34e67733ad Add 10 tests for cppw. 2011-10-16 14:32:34 +00:00
nekral-guest
f261f8897d Cleanup. 2011-10-16 14:30:56 +00:00
nekral-guest
b2f829c0d9 Add 2 other open failure libraries. 2011-10-16 14:24:39 +00:00
nekral-guest
e44a7c5333 Test that only O_RDWR is set.
Rename internal symbols to *open64.
2011-10-16 14:24:11 +00:00
nekral-guest
5256839da0 Add 12 tests for chsh. 2011-09-25 13:53:11 +00:00
nekral-guest
053fd6f667 Add 36 tests for chage. 2011-09-24 07:32:13 +00:00
nekral-guest
d25fbce118 Usage was fixed (LOGIN mandatory) 2011-09-24 07:30:56 +00:00
nekral-guest
4d3d2852df Fix typo. 2011-09-24 07:30:34 +00:00
nekral-guest
35f6fa4fb2 Add 12 tests for newusers. 2011-09-24 07:29:31 +00:00
nekral-guest
8c79098041 Add tests for
* userdel (9)
 * useradd (68)
2011-09-24 07:27:38 +00:00
nekral-guest
227e780644 When there is a gshadow file, gshadow is activated.
Then a group password change puts the password in the gshadow file (create
an entry) and the group's password is set to 'x'.
2011-09-23 17:50:59 +00:00
nekral-guest
85f90d1aa2 Add 12 tests for gpasswd. 2011-09-23 17:46:57 +00:00
nekral-guest
2fcaf22140 Add separation for the logs. 2011-09-23 17:45:06 +00:00
nekral-guest
ff97ca76fc Remove tmp directory. 2011-09-23 17:43:42 +00:00
nekral-guest
b7a8fec626 Remove tmp directories. 2011-09-23 17:42:54 +00:00
nekral-guest
7d143a73d5 Depending on the system's load, there can be some variability in the
elapsed time.
2011-09-23 17:42:26 +00:00
nekral-guest
fd69ebf5a9 Added tests:
* pwunconv  (2)
 * grpunconv (3)
 * pwconv    (1)
 * grpconv   (1)
2011-09-23 17:36:45 +00:00
nekral-guest
9fa842ffbf Remove generated test log file. 2011-09-23 17:30:31 +00:00
nekral-guest
5305181f4e * debian/rules, debian/man.insert, debian/man.insert.sed: Bug #507673 has
been closed. It is no more needed to patch the generated manpages. This
    also fix failures to build twice is a row. Closes: #636047
2011-08-17 17:36:54 +00:00
nekral-guest
5760010c6a * Added execution of missing tests
* Fix permissions on the .gcda files.
2011-07-26 15:38:45 +00:00
nekral-guest
ed983623b7 Cleanup. Remove gdb. 2011-07-26 15:35:59 +00:00
nekral-guest
871df6e34b Added tests for faillog. 2011-07-26 15:33:12 +00:00
nekral-guest
279b8e9b69 Fix TTY detection. use the lowest unused TTY ID. 2011-07-26 15:25:15 +00:00
nekral-guest
9540ec861e Added test for pwconv. 2011-07-26 15:23:49 +00:00
nekral-guest
d408a3cdda Use a more common config with password in shadow instead of passwd.
(Other tests focus on the less frequent use cases)
2011-07-26 15:23:03 +00:00
nekral-guest
51520f2c77 Added missing cleanup. 2011-07-26 15:17:04 +00:00
nekral-guest
c0a26b82ae Added test for chpasswd. 2011-07-26 15:14:38 +00:00
nekral-guest
133092e437 Fix expected test results. 2011-07-26 14:12:08 +00:00
nekral-guest
6f7963a3ea Added test for expiry. 2011-07-26 14:08:36 +00:00
nekral-guest
d2b12355ee Added changelog entries for issues closed in the new upstream version. 2011-07-24 16:26:51 +00:00
bubulle
c0e2ae0e41 Add bug closure 2011-07-19 08:37:20 +00:00
bubulle
6e0036f616 Use "linux-any" instead of a negated list of architectures in
Build-Depends
2011-07-19 08:36:15 +00:00
nekral-guest
12e0029b68 Remove unused files or files identical to config. 2011-07-17 12:00:16 +00:00
nekral-guest
efd41d31d8 Added missing cleanup. 2011-07-16 18:13:27 +00:00
nekral-guest
ea725da60f Ignore log files. 2011-07-16 18:04:54 +00:00
nekral-guest
ec9d756fc7 Hide failure library's warnings. 2011-07-16 17:36:18 +00:00
nekral-guest
e74300f9f3 Fix test. 2011-07-16 17:33:02 +00:00
nekral-guest
ce687005c7 Fix typo in log message. 2011-07-16 16:12:01 +00:00
nekral-guest
645829be3b Added tests for chpasswd (PAM variant) 2011-07-16 16:11:08 +00:00
nekral-guest
87134054ab Use valid files for 03_chpasswd_no_shadow_file.
This avoid a failure.
The failure will be tested later.
2011-07-16 16:08:51 +00:00
nekral-guest
f26adb9373 Added tests for chpasswd and chgpasswd. 2011-07-16 16:01:27 +00:00
nekral-guest
563facd989 Added tests for chgpasswd. 2011-07-16 15:56:21 +00:00
nekral-guest
5292e8e37e Additional tests for grpck. 2011-07-16 15:45:04 +00:00
nekral-guest
4a79eb6418 Added tests for grpck. 2011-07-16 15:44:21 +00:00
nekral-guest
d36e1588a4 Added library to change the time. 2011-07-15 16:27:27 +00:00
nekral-guest
3a8fc569dc Added tests for lastlog.
--This line, and those below, will be ignored--

A    log
A    log/lastlog
A    log/lastlog/03_lastlog_format
A    log/lastlog/03_lastlog_format/config.txt
AM   log/lastlog/03_lastlog_format/login.exp
AM   log/lastlog/03_lastlog_format/lastlog.test
A    log/lastlog/03_lastlog_format/config
A    log/lastlog/03_lastlog_format/config/etc
A    log/lastlog/03_lastlog_format/config/etc/passwd
A    log/lastlog/03_lastlog_format/config/etc/shadow
A    log/lastlog/03_lastlog_format/config/etc/group
A    log/lastlog/03_lastlog_format/config/etc/gshadow
A    log/lastlog/03_lastlog_format/data
A    log/lastlog/03_lastlog_format/data/lastlog.out
A    log/lastlog/14_lastlog-u_range_invalid3
A    log/lastlog/14_lastlog-u_range_invalid3/config.txt
AM   log/lastlog/14_lastlog-u_range_invalid3/lastlog.test
A    log/lastlog/14_lastlog-u_range_invalid3/config
A    log/lastlog/14_lastlog-u_range_invalid3/config/etc
A    log/lastlog/14_lastlog-u_range_invalid3/config/etc/passwd
A    log/lastlog/14_lastlog-u_range_invalid3/config/etc/shadow
A    log/lastlog/14_lastlog-u_range_invalid3/config/etc/group
A    log/lastlog/14_lastlog-u_range_invalid3/config/etc/gshadow
A    log/lastlog/14_lastlog-u_range_invalid3/data
A    log/lastlog/14_lastlog-u_range_invalid3/data/lastlog.err
A    log/lastlog/04_lastlog_mulitple
A    log/lastlog/04_lastlog_mulitple/config.txt
AM   log/lastlog/04_lastlog_mulitple/login.exp
AM   log/lastlog/04_lastlog_mulitple/lastlog.test
A    log/lastlog/04_lastlog_mulitple/config
A    log/lastlog/04_lastlog_mulitple/config/etc
A    log/lastlog/04_lastlog_mulitple/config/etc/passwd
A    log/lastlog/04_lastlog_mulitple/config/etc/shadow
A    log/lastlog/04_lastlog_mulitple/config/etc/group
A    log/lastlog/04_lastlog_mulitple/config/etc/gshadow
A    log/lastlog/04_lastlog_mulitple/data
A    log/lastlog/04_lastlog_mulitple/data/lastlog.list
A    log/lastlog/08_lastlog-u_name_invalid
A    log/lastlog/08_lastlog-u_name_invalid/config.txt
AM   log/lastlog/08_lastlog-u_name_invalid/lastlog.test
A    log/lastlog/08_lastlog-u_name_invalid/config
A    log/lastlog/08_lastlog-u_name_invalid/config/etc
A    log/lastlog/08_lastlog-u_name_invalid/config/etc/passwd
A    log/lastlog/08_lastlog-u_name_invalid/config/etc/shadow
A    log/lastlog/08_lastlog-u_name_invalid/config/etc/group
A    log/lastlog/08_lastlog-u_name_invalid/config/etc/gshadow
A    log/lastlog/08_lastlog-u_name_invalid/data
A    log/lastlog/08_lastlog-u_name_invalid/data/lastlog.err
A    log/lastlog/19_lastlog-t_invalid
A    log/lastlog/19_lastlog-t_invalid/tmp
A    log/lastlog/19_lastlog-t_invalid/config.txt
AM   log/lastlog/19_lastlog-t_invalid/lastlog.test
A    log/lastlog/19_lastlog-t_invalid/config
A    log/lastlog/19_lastlog-t_invalid/config/etc
A    log/lastlog/19_lastlog-t_invalid/config/etc/passwd
A    log/lastlog/19_lastlog-t_invalid/config/etc/shadow
A    log/lastlog/19_lastlog-t_invalid/config/etc/group
A    log/lastlog/19_lastlog-t_invalid/config/etc/gshadow
A    log/lastlog/19_lastlog-t_invalid/data
A    log/lastlog/19_lastlog-t_invalid/data/lastlog.err
A    log/lastlog/01_lastlog_no_lastlog
A    log/lastlog/01_lastlog_no_lastlog/config.txt
AM   log/lastlog/01_lastlog_no_lastlog/lastlog.test
A    log/lastlog/01_lastlog_no_lastlog/config
A    log/lastlog/01_lastlog_no_lastlog/config/etc
A    log/lastlog/01_lastlog_no_lastlog/config/etc/passwd
A    log/lastlog/01_lastlog_no_lastlog/config/etc/shadow
A    log/lastlog/01_lastlog_no_lastlog/config/etc/group
A    log/lastlog/01_lastlog_no_lastlog/config/etc/gshadow
A    log/lastlog/01_lastlog_no_lastlog/data
A    log/lastlog/01_lastlog_no_lastlog/data/lastlog.err
A    log/lastlog/05_lastlog-u_ID
A    log/lastlog/05_lastlog-u_ID/config.txt
AM   log/lastlog/05_lastlog-u_ID/lastlog.test
A    log/lastlog/05_lastlog-u_ID/config
A    log/lastlog/05_lastlog-u_ID/config/etc
A    log/lastlog/05_lastlog-u_ID/config/etc/passwd
A    log/lastlog/05_lastlog-u_ID/config/etc/shadow
A    log/lastlog/05_lastlog-u_ID/config/etc/group
A    log/lastlog/05_lastlog-u_ID/config/etc/gshadow
A    log/lastlog/05_lastlog-u_ID/data
A    log/lastlog/05_lastlog-u_ID/data/lastlog.list
A    log/lastlog/02_lastlog_usage
A    log/lastlog/02_lastlog_usage/config.txt
AM   log/lastlog/02_lastlog_usage/lastlog.test
A    log/lastlog/02_lastlog_usage/config
A    log/lastlog/02_lastlog_usage/config/etc
A    log/lastlog/02_lastlog_usage/config/etc/passwd
A    log/lastlog/02_lastlog_usage/config/etc/shadow
A    log/lastlog/02_lastlog_usage/config/etc/group
A    log/lastlog/02_lastlog_usage/config/etc/gshadow
A    log/lastlog/02_lastlog_usage/data
A    log/lastlog/02_lastlog_usage/data/usage.out
A    log/lastlog/20_lastlog-b_invalid
A    log/lastlog/20_lastlog-b_invalid/config.txt
AM   log/lastlog/20_lastlog-b_invalid/lastlog.test
A    log/lastlog/20_lastlog-b_invalid/config
A    log/lastlog/20_lastlog-b_invalid/config/etc
A    log/lastlog/20_lastlog-b_invalid/config/etc/passwd
A    log/lastlog/20_lastlog-b_invalid/config/etc/shadow
A    log/lastlog/20_lastlog-b_invalid/config/etc/group
A    log/lastlog/20_lastlog-b_invalid/config/etc/gshadow
A    log/lastlog/20_lastlog-b_invalid/data
A    log/lastlog/20_lastlog-b_invalid/data/lastlog.err
A    log/lastlog/09_lastlog-u_range
A    log/lastlog/09_lastlog-u_range/config.txt
AM   log/lastlog/09_lastlog-u_range/lastlog.test
A    log/lastlog/09_lastlog-u_range/config
A    log/lastlog/09_lastlog-u_range/config/etc
A    log/lastlog/09_lastlog-u_range/config/etc/passwd
A    log/lastlog/09_lastlog-u_range/config/etc/shadow
A    log/lastlog/09_lastlog-u_range/config/etc/group
A    log/lastlog/09_lastlog-u_range/config/etc/gshadow
A    log/lastlog/09_lastlog-u_range/data
A    log/lastlog/09_lastlog-u_range/data/lastlog.list
A    log/lastlog/18_lastlog-b
A    log/lastlog/18_lastlog-b/config.txt
AM   log/lastlog/18_lastlog-b/login.exp
AM   log/lastlog/18_lastlog-b/lastlog.test
A    log/lastlog/18_lastlog-b/config
A    log/lastlog/18_lastlog-b/config/etc
A    log/lastlog/18_lastlog-b/config/etc/passwd
A    log/lastlog/18_lastlog-b/config/etc/shadow
A    log/lastlog/18_lastlog-b/config/etc/group
A    log/lastlog/18_lastlog-b/config/etc/gshadow
A    log/lastlog/18_lastlog-b/data
A    log/lastlog/18_lastlog-b/data/lastlog.list
A    log/lastlog/07_lastlog-u_ID_invalid
A    log/lastlog/07_lastlog-u_ID_invalid/tmp
A    log/lastlog/07_lastlog-u_ID_invalid/tmp/lastlog.list
A    log/lastlog/07_lastlog-u_ID_invalid/config.txt
AM   log/lastlog/07_lastlog-u_ID_invalid/lastlog.test
A    log/lastlog/07_lastlog-u_ID_invalid/config
A    log/lastlog/07_lastlog-u_ID_invalid/config/etc
A    log/lastlog/07_lastlog-u_ID_invalid/config/etc/passwd
A    log/lastlog/07_lastlog-u_ID_invalid/config/etc/shadow
A    log/lastlog/07_lastlog-u_ID_invalid/config/etc/group
A    log/lastlog/07_lastlog-u_ID_invalid/config/etc/gshadow
A    log/lastlog/07_lastlog-u_ID_invalid/data
A    log/lastlog/07_lastlog-u_ID_invalid/data/lastlog.list
A    log/lastlog/10_lastlog-u_open_range
A    log/lastlog/10_lastlog-u_open_range/config.txt
AM   log/lastlog/10_lastlog-u_open_range/lastlog.test
A    log/lastlog/10_lastlog-u_open_range/config
A    log/lastlog/10_lastlog-u_open_range/config/etc
A    log/lastlog/10_lastlog-u_open_range/config/etc/passwd
A    log/lastlog/10_lastlog-u_open_range/config/etc/shadow
A    log/lastlog/10_lastlog-u_open_range/config/etc/group
A    log/lastlog/10_lastlog-u_open_range/config/etc/gshadow
A    log/lastlog/10_lastlog-u_open_range/data
A    log/lastlog/10_lastlog-u_open_range/data/lastlog.list
A    log/lastlog/11_lastlog-u_range_open
A    log/lastlog/11_lastlog-u_range_open/config.txt
AM   log/lastlog/11_lastlog-u_range_open/lastlog.test
A    log/lastlog/11_lastlog-u_range_open/config
A    log/lastlog/11_lastlog-u_range_open/config/etc
A    log/lastlog/11_lastlog-u_range_open/config/etc/passwd
A    log/lastlog/11_lastlog-u_range_open/config/etc/shadow
A    log/lastlog/11_lastlog-u_range_open/config/etc/group
A    log/lastlog/11_lastlog-u_range_open/config/etc/gshadow
A    log/lastlog/11_lastlog-u_range_open/data
A    log/lastlog/11_lastlog-u_range_open/data/lastlog.list
A    log/lastlog/16_lastlog_extra_arg
A    log/lastlog/16_lastlog_extra_arg/config.txt
AM   log/lastlog/16_lastlog_extra_arg/lastlog.test
A    log/lastlog/16_lastlog_extra_arg/config
A    log/lastlog/16_lastlog_extra_arg/config/etc
A    log/lastlog/16_lastlog_extra_arg/config/etc/passwd
A    log/lastlog/16_lastlog_extra_arg/config/etc/shadow
A    log/lastlog/16_lastlog_extra_arg/config/etc/group
A    log/lastlog/16_lastlog_extra_arg/config/etc/gshadow
A    log/lastlog/16_lastlog_extra_arg/data
A    log/lastlog/16_lastlog_extra_arg/data/usage.out
A    log/lastlog/15_lastlog_bad_option
A    log/lastlog/15_lastlog_bad_option/config.txt
AM   log/lastlog/15_lastlog_bad_option/lastlog.test
A    log/lastlog/15_lastlog_bad_option/config
A    log/lastlog/15_lastlog_bad_option/config/etc
A    log/lastlog/15_lastlog_bad_option/config/etc/passwd
A    log/lastlog/15_lastlog_bad_option/config/etc/shadow
A    log/lastlog/15_lastlog_bad_option/config/etc/group
A    log/lastlog/15_lastlog_bad_option/config/etc/gshadow
A    log/lastlog/15_lastlog_bad_option/data
A    log/lastlog/15_lastlog_bad_option/data/usage.out
A    log/lastlog/12_lastlog-u_range_invalid1
A    log/lastlog/12_lastlog-u_range_invalid1/config.txt
AM   log/lastlog/12_lastlog-u_range_invalid1/lastlog.test
A    log/lastlog/12_lastlog-u_range_invalid1/config
A    log/lastlog/12_lastlog-u_range_invalid1/config/etc
A    log/lastlog/12_lastlog-u_range_invalid1/config/etc/passwd
A    log/lastlog/12_lastlog-u_range_invalid1/config/etc/shadow
A    log/lastlog/12_lastlog-u_range_invalid1/config/etc/group
A    log/lastlog/12_lastlog-u_range_invalid1/config/etc/gshadow
A    log/lastlog/12_lastlog-u_range_invalid1/data
A    log/lastlog/12_lastlog-u_range_invalid1/data/lastlog.err
A    log/lastlog/06_lastlog-u_name
A    log/lastlog/06_lastlog-u_name/config.txt
AM   log/lastlog/06_lastlog-u_name/lastlog.test
A    log/lastlog/06_lastlog-u_name/config
A    log/lastlog/06_lastlog-u_name/config/etc
A    log/lastlog/06_lastlog-u_name/config/etc/passwd
A    log/lastlog/06_lastlog-u_name/config/etc/shadow
A    log/lastlog/06_lastlog-u_name/config/etc/group
A    log/lastlog/06_lastlog-u_name/config/etc/gshadow
A    log/lastlog/06_lastlog-u_name/data
A    log/lastlog/06_lastlog-u_name/data/lastlog.list
A    log/lastlog/17_lastlog-t
A    log/lastlog/17_lastlog-t/config.txt
AM   log/lastlog/17_lastlog-t/login.exp
AM   log/lastlog/17_lastlog-t/lastlog.test
A    log/lastlog/17_lastlog-t/config
A    log/lastlog/17_lastlog-t/config/etc
A    log/lastlog/17_lastlog-t/config/etc/passwd
A    log/lastlog/17_lastlog-t/config/etc/shadow
A    log/lastlog/17_lastlog-t/config/etc/group
A    log/lastlog/17_lastlog-t/config/etc/gshadow
A    log/lastlog/17_lastlog-t/data
A    log/lastlog/17_lastlog-t/data/lastlog.list
A    log/lastlog/13_lastlog-u_range_invalid2
A    log/lastlog/13_lastlog-u_range_invalid2/config.txt
AM   log/lastlog/13_lastlog-u_range_invalid2/lastlog.test
A    log/lastlog/13_lastlog-u_range_invalid2/config
A    log/lastlog/13_lastlog-u_range_invalid2/config/etc
A    log/lastlog/13_lastlog-u_range_invalid2/config/etc/passwd
A    log/lastlog/13_lastlog-u_range_invalid2/config/etc/shadow
A    log/lastlog/13_lastlog-u_range_invalid2/config/etc/group
A    log/lastlog/13_lastlog-u_range_invalid2/config/etc/gshadow
A    log/lastlog/13_lastlog-u_range_invalid2/data
A    log/lastlog/13_lastlog-u_range_invalid2/data/lastlog.err
2011-07-15 16:26:34 +00:00
nekral-guest
d88fee56d0 Updated to include the new Chinese translations and the groupmems manpages
(built for the tested package, but not in Debian).
2011-07-14 17:27:27 +00:00
nekral-guest
8c071f98f4 Updated error message. 2011-07-14 17:26:26 +00:00
nekral-guest
17589834e9 The reason for the lock failure is now indicated in the failure message. 2011-07-14 17:25:48 +00:00
nekral-guest
b1dcbb9109 Added tests for groupadd and groupmod 2011-07-14 17:22:15 +00:00
nekral-guest
ff21533772 The reason for the lock failure is now indicated in the failure message. 2011-07-14 17:20:29 +00:00
nekral-guest
8e4062eaad If there are no gshadow entry, but group indicate that gshadow is enabled,
a gshadow entry is created.
2011-07-14 17:19:14 +00:00
nekral-guest
3e7c866497 Since there are no gshadow, it is more logical to have a password (rather
than x).
2011-07-14 17:18:07 +00:00
nekral-guest
25eb9fd7e9 Added grpck tests. 2011-07-14 17:08:39 +00:00
nekral-guest
a472a22b42 Added some groupmod / usermod tests. 2011-07-14 16:41:17 +00:00
nekral-guest
528435663e Added 2 libraries to support error injection. 2011-07-14 16:40:03 +00:00
nekral-guest
13125b6596 Fix typos. 2011-07-14 16:39:22 +00:00
nekral-guest
e642700f7c Added tests for groupadd and groupdel. 2011-07-14 16:38:47 +00:00
nekral-guest
1c05718b49 Updated warnings. 2011-07-14 16:35:57 +00:00
nekral-guest
21b28d9ac2 Lock failures now receive an extra message. 2011-07-14 16:34:53 +00:00
nekral-guest
31b4793161 userdel now warns when the user's mail spool cannot be found. 2011-07-14 16:24:26 +00:00
nekral-guest
831ca2acc0 Added tests for usermod. 2011-07-14 16:19:27 +00:00
nekral-guest
c959b173fa - Spaces have been added between options and arguments in theRussian
manpages. Closes: #606159
2011-06-25 09:14:20 +00:00
nekral-guest
494fe327a2 - passwd(1) references chpasswd(8). Closes: #609117 2011-06-25 09:03:46 +00:00
nekral-guest
32ee5cf5a4 - userdel error message has been clarified when the user is still
executing processes (it used to complain that the user is logged in).
      Closes: #603315
2011-06-25 08:58:55 +00:00
nekral-guest
1dab661a88 The new Simplified Chinese manpages translation should have fix #602264. 2011-06-25 08:54:02 +00:00
nekral-guest
5c743da48c * debian/securetty.linux: Fixed typo: ttyama -> ttyAMA. Closes: #544184 2011-06-24 21:50:20 +00:00
nekral-guest
34b64c6a5c - name the next release (which should be a 4.1.5)
- reindent according to previous entry, and use the same bug closing
   style
 - document bugs closed by the latest upstream
 - refresh patch according to latest upstream
 - remove patch not needed with latest upstream
 - sort translations alphabetically
 - debian/control: mark passwd as 'Multi-Arch: foreign'. Closes: #614321
 - debian/securetty.linux: Add IBM pSeries console ports. Closes: #597661
 - debian/securetty.linux: Add serial Console for MIPS Swarm.
   (http://lists.debian.org/debian-release/2011/02/msg00320.html)
2011-06-24 21:44:27 +00:00
bubulle
520c3d2ee8 * New upstream version
* Upstream fixes:
  - Fix several typos in manpages. Thanks to Simon Brandmair
* Upstream translation updates from Debian BTS:
  - Japanese (Closes: #620978)
  - Kazakh (Closes: #620930)
  - Danish (Closes: #621330)
  - Swedish (Closes: #621126)
  - Russian (Closes: #622106)
  - Brazilian Portuguese (Closes: #622834)
  - German (Closes: #622908)
  - French (Closes: #623608)
  - Portuguese (Closes: #623722)
  - Catalan (Closes: #627526)
  - Spanish (Closes: #630618)
* Upstream manpages translation updates from Debian BTS:
  - French (Closes: #630250)
  - German (Closes: #628777)
2011-06-18 05:33:43 +00:00
bubulle
edc1e3de4c French manpages translation update (Closes: #630250) 2011-06-12 19:57:02 +00:00
nekral-guest
51c1b4fd6e Added missing pieces from 1:4.1.4.2+svn3283-3 2011-06-04 07:42:27 +00:00
bubulle
dc8ebb9a93 German manpages translation update (Closes: #628777) 2011-06-01 12:20:08 +00:00
bubulle
3f81b32b3a Pending changes in new upstream 2011-06-01 12:01:01 +00:00
bubulle
05712cf244 French and Portuguese translation updates 2011-04-25 10:07:09 +00:00
bubulle
3cd211df74 German translation update (Closes: #622908) 2011-04-16 07:33:17 +00:00
bubulle
eed7f843e5 Brazilian Portuguese translation update (Closes: #622834) 2011-04-15 06:22:02 +00:00
bubulle
0dd4550277 Bug closure for Russian translation 2011-04-10 15:51:20 +00:00
bubulle
4f0461c5aa Translations fixes in upcoming release 2011-04-05 18:04:48 +00:00
bubulle
801dc30dc9 Fix typo in /etc/pam.d/login comments. Thanks to Ferenc Wagner.
Closes: #598717
2010-10-02 11:30:52 +00:00
bubulle
81d3f93571 Release 1:4.1.4.2+svn3283-2 2010-10-02 11:24:43 +00:00
bubulle
2bbe223879 Fix backup command line in cron.daily script. Closes: #596283 2010-09-12 13:00:49 +00:00
nekral-guest
5a13d590df New version will be based on revision 3283. 2010-09-05 16:21:31 +00:00
nekral-guest
150d37d441 Fix typo. 2010-08-29 19:26:34 +00:00
nekral-guest
92ada6ae8c Next version should be based on upstream trunk, revision 3280. 2010-08-29 19:17:50 +00:00
nekral-guest
f844f3fc1f * New upstream release:
- Fixed comma splice in chsh(1). Closes: #582166
2010-08-28 20:17:28 +00:00
nekral-guest
f04a81b799 Add the other failure libraries. 2010-08-28 20:07:14 +00:00
nekral-guest
ac62509912 When /var/log/auth.log is checked, flush file system buffers.
And add debug information (content of /var/log/auth.log).
2010-08-28 19:51:48 +00:00
nekral-guest
090dcd4714 Updated default ENV_SUPATH. 2010-08-28 19:50:13 +00:00
nekral-guest
2772f3caaf Even with -p, PATH is reset. This is now documented and tested. 2010-08-28 19:49:12 +00:00
nekral-guest
d4da487911 * debian/rules: Disable new features: --without-acl --without-attr
--without-tcb
2010-08-28 19:44:52 +00:00
nekral-guest
26d47d4a13 Avoid spurious warning messages.
Only display the messages from stderr if the passwords do not match.
2010-08-28 18:05:03 +00:00
nekral-guest
7aa5afbe3e Use an empty /etc/profile to avoid interferences. 2010-08-28 18:03:43 +00:00
nekral-guest
8e07b2236e Add two tests for pwck. 2010-08-27 18:13:35 +00:00
nekral-guest
b82323f6fc SUpport for dash. 2010-08-27 18:07:51 +00:00
nekral-guest
2da85fc32b Updated list of installed files. 2010-08-27 18:05:48 +00:00
nekral-guest
036fdfd2cb Behavior of newusers has changed regarding systeml users (allocation starting from the higest limit and going down). It makes more sens to pass this test with users alredy allocated that way.
etc/passwd changed and data/passwd data/group changed to match the new request's results.
2010-08-27 18:03:36 +00:00
nekral-guest
3081241777 Behavior of usermod was improved regarding (re)moving the old homedir. 2010-08-27 17:58:24 +00:00
nekral-guest
3472bee15a Behavior of usermod was improved regarding (re)moving the old homedir. 2010-08-27 17:57:42 +00:00
nekral-guest
a6336f11f8 * The PAM version now allows chpasswd an user when there are no shadow entries
(or maybe PAM behavior changed).
 * Document the differences between the 2 versions (PAM will add a shadow entry
   and the !PAM version will just update the passwd entry).
   This may have to be fixed later, but is not a clear bug.
 * Remove unnecessary files
2010-08-27 17:53:14 +00:00
nekral-guest
3b6a675f3f Use a PAM configuration with the pam_unix md5 option. 2010-08-26 21:31:56 +00:00
nekral-guest
bcd3d8c1b8 Use a PAM configuration without a specific hash option => default to DES. 2010-08-26 21:29:46 +00:00
nekral-guest
7de171da64 Use a PAM configuration with the pam_unix sha256 option. 2010-08-26 21:28:34 +00:00
nekral-guest
fc3fa0e293 Use a pam configuration with the pam_unix sha512 option 2010-08-26 21:27:17 +00:00
nekral-guest
53b2f99d37 Use a default pam configuration using pam_unix sha512 option. 2010-08-26 21:25:48 +00:00
nekral-guest
056347f7a0 The order of groups returned by id has changed. 2010-08-26 21:16:35 +00:00
nekral-guest
80d3925cc1 * Updated for dash
* There is no need to send a wrong password. The expect script is already changing the password to a wrong one
 * Updated ignore property
2010-08-26 21:11:33 +00:00
nekral-guest
4ff6fdd350 Added missing data files and updated ignore property. 2010-08-26 21:07:25 +00:00
nekral-guest
6fd2918f82 sha512 is now the default pam_unix configuration. 2010-08-26 21:02:41 +00:00
nekral-guest
991d707460 groupmod usage output was changed. 2010-08-26 19:40:23 +00:00
nekral-guest
6268434a34 Error message was updated. 2010-08-26 19:39:20 +00:00
nekral-guest
79bd47d726 * Support for dash
* chage usage is sent to stdout instead of stderr
2010-08-26 19:39:01 +00:00
nekral-guest
6a94f65dc6 Updated debug & log information 2010-08-26 19:37:38 +00:00
nekral-guest
f38390ecf8 Support for dash. 2010-08-26 19:36:43 +00:00
nekral-guest
1906527bb8 Support for dash. 2010-08-26 19:34:04 +00:00
nekral-guest
4de1bfac9c Additional debug information. 2010-08-26 19:32:38 +00:00
nekral-guest
ce8580ca6d Add the last 2 tests to the default tests. 2010-08-26 19:32:12 +00:00
nekral-guest
78fd15bab1 Added 2 tests for su. 2010-08-26 19:30:52 +00:00
nekral-guest
f32335f6f9 System's default PATH has been updated. 2010-08-26 19:27:03 +00:00
nekral-guest
c7df39a736 Support for dash. 2010-08-26 19:24:28 +00:00
nekral-guest
cc5a9f7708 Fix typo is the log rationale. 2010-08-26 19:18:29 +00:00
nekral-guest
f1bb2c3848 Added support for dash. 2010-08-26 19:16:40 +00:00
nekral-guest
5f632d1a86 Explicitly set PS1 in order to support test environments where the default shell is set to dash. 2010-08-26 19:13:30 +00:00
bubulle
56545b1b78 Mark translation update bugfix 2010-06-24 18:43:55 +00:00
nekral-guest
43c4c62ad7 * debian/control: Do not repeat the Section and Priority fields for the
binary packages.
2010-04-05 15:59:06 +00:00
nekral-guest
9530fa372c * debian/passwd.lintian-overrides: Remove old entries relevant for
passwd.config.
2010-04-04 23:14:09 +00:00
nekral-guest
26691d3301 Document the change of Standards-Version. 2010-04-04 23:11:36 +00:00
nekral-guest
a8a28eba99 * debian/control: Standards-Version: bumped to 3.8.4. No changes. 2010-04-02 22:16:29 +00:00
nekral-guest
3cdfbb6cef * debian/rules, debian/man.insert, debian/man.insert.sed: Hack to avoid bug
507673, causing missing apostrophes in the manpages generated by
    docbook-xsl.
2010-04-02 22:12:29 +00:00
nekral-guest
250ed8cf16 Document the addition of ttyPZ0..3 2010-04-01 15:41:44 +00:00
nekral-guest
c6e3185f0c * debian/securetty.linux: Reorganise and synchronise with
Documentation/devices.txt
2010-03-30 23:47:25 +00:00
nekral-guest
cd10fe20c5 * debian/login.defs: Updated description of UMASK (used by pam_umask). 2010-03-26 11:51:51 +00:00
nekral-guest
31678f87d9 * New upstream release:
- mail checking is no more mentioned in login(1) since it is done by PAM.
      Closes: #470059
    - The -e (and -c and -m) option was restored in chpasswd (which still uses
      PAM by default).  Closes: #539354
2010-03-25 19:49:31 +00:00
nekral-guest
b318b6721e * New upstream release:
- Fix interruption of su, newgrp, vipw with Ctrl-Z. Closes: 530231
2010-03-23 13:07:12 +00:00
nekral-guest
0fe9b6b867 * New upstream release:
- pwck and grpck stop sorting at the first line which begins with a '+'.
      This will avoid messing up with NIS entries. Closes: #567836
2010-03-20 22:10:26 +00:00
nekral-guest
3a91912281 Apply patch already described in the curent changelog:
* debian/login.pam: return back to mostly "requisite" for the pam_securetty
    PAM module, but ignore PAM_USER_UNKNOWN. This will avoid root from
    entering a password, and will also avoid user enumeration attacks.
    Mis-typed root login are not protected, only root can be blamed for
    mis-typing and entering a password on an insecure line. Users willing to
    protect against mis-typed root login can use "requisite", but will be
    vulnerable to user enumeration attacks on insecure lines, and should use
    pam 1.1.0-4 at least. Closes: #574082, #531341
2010-03-20 10:57:44 +00:00
nekral-guest
b1286d31fd - Remove patches applied upstream:
+ debian/patches/483_su_fakelogin_wrong_arg0
2010-03-20 10:52:52 +00:00
nekral-guest
5c8a6cd6eb - Updated patches:
+ debian/patches/542_useradd-O_option
2010-03-20 10:45:49 +00:00
nekral-guest
68fdd46a81 * debian/passwd.cron.daily: Handle the backups of the user and group
databases so that it can be removed from the standard daily cron job.
    Closes: #554170
2010-03-20 10:45:12 +00:00
nekral-guest
76097618c2 - Fixed parsing of gshadow. This fix password support in newgrp.
Closes: #569899
2010-03-18 12:18:02 +00:00
nekral-guest
fe99e0edd8 - This also allows, in the chage interactive mode, to specify -1 as the
expiration date to disable it. Closes: #573018
2010-03-18 12:10:09 +00:00
nekral-guest
a000373d8d - Added support for dates already specified as a number of days since
Epoch in useradd, usermod and chage. Closes: #562221
2010-03-18 11:56:44 +00:00
bubulle
8c5876cef0 Add bug closure 2010-03-16 08:41:49 +00:00
bubulle
f5e0895b3a Revert pam_securetty to "requisite" 2010-03-16 06:59:46 +00:00
nekral-guest
da9a0615de * debian/rules: Added DEB_AUTO_UPDATE_LIBTOOL = pre. Closes: #560633 2010-03-15 10:11:01 +00:00
nekral-guest
1640002065 * debian/login.defs: Improve documentation of USERGROUPS_ENAB.
Closes: #572687
2010-03-15 10:06:34 +00:00
nekral-guest
53f2df3ded - Remove patches applied upstream:
+ debian/patches/008_su_no_sanitize_env
2010-03-15 10:00:24 +00:00
nekral-guest
49a95f6c07 - Updated patches:
+ debian/patches/523_su_arguments_are_no_more_concatenated_by_default
2010-03-15 09:59:54 +00:00
nekral-guest
3ababb2263 * debian/control: Removed Martin Quinson from the Uploaders, on his request. 2010-01-24 17:30:36 +00:00
nekral-guest
20ba2e50ab - Remove patches applied upstream:
+ debian/patches/008_su_no_sanitize_env
2010-01-24 17:29:33 +00:00
nekral-guest
282bbb9cfc This patch will be applied in the next release. 2010-01-24 17:28:24 +00:00
nekral-guest
52f620f78d 1:4.1.4.3-1 is not yet released. 2010-01-24 17:27:55 +00:00
bubulle
0bdd59ac57 Bug closure 2009-09-27 06:24:47 +00:00
bubulle
f1127e1aac Mark upstream translation as pending 2009-09-24 20:23:20 +00:00
nekral-guest
e9e97852cf * debian/securetty.linux: Added support for embedded ARM AMBA PL011 ports
(e.g. emulated by QEMU). Closes: #544184
2009-09-05 20:50:24 +00:00
nekral-guest
43cd3dc662 * debian/securetty.kfreebsd: On GNU/kFreeBSD the serial devices have change
from /dev/cuuaX to /dev/ttydX in kernel 6.0. Closes: #544523
2009-09-01 13:32:06 +00:00
nekral-guest
070ba9d6d4 * New upstream release:
- Fix formatting of the login.defs.5 manpage. Closes: #542804
2009-08-21 15:17:09 +00:00
nekral-guest
ce9ed32e74 * debian/control: Standards-Version: bumped to 3.8.2. No changes. 2009-07-24 03:03:14 +00:00
nekral-guest
9e83d9f840 * debian/login.dirs, debian/passwd.dirs: Removed usr/share/linda/overrides. 2009-07-24 02:03:43 +00:00
nekral-guest
96866ff296 * debian/shadowconfig.sh: Do not run shadowoff() and shadowon() in subshell.
This also remove a dependency on bash (even though /bin/sh would have been
    sufficient). Thanks to Luk for spotting this.
2009-07-23 20:58:02 +00:00
nekral-guest
1a58cb2346 * debian/login.pam: pam_securetty included as a required module instead of
requisite to avoid leak of user name information. Closes: #531341
2009-07-23 20:56:32 +00:00
nekral-guest
01b11c5f84 - Added support for shells being shell scripts without a shebang.
Closes: #479406
2009-07-20 19:11:13 +00:00
nekral-guest
91c630033d * debian/patches/506_relaxed_usernames: Fixed typo. groupadd(8) should
document therestriction on groupnames, not usernames.
2009-07-18 18:08:18 +00:00
nekral-guest
8422a00909 * The "Tome des Bauges" release.
* New upstream release:
     - Updated Basque translation. Closes: #535553
     - Fixed some translatable string. Closes: #525726
     - Fixed documentation of the short option for --mindays in passwd(1).
       Closes: #531983
  * debian/securetty.linux: Added Embedded Renesas SuperH ports.
    Closes: #535927
  * debian/securetty.linux: Added ttyS2 to ttyS5. Some extension card provide
    more serial ports, but that should be sufficient until there is a support
    for regular expressions. Closes: #534244
2009-07-18 18:01:54 +00:00
nekral-guest
fa16e07b2e Prepare next release. 2009-05-22 14:30:12 +00:00
nekral-guest
bf28febe2f Added new tests to the testsuite script. 2009-05-22 11:51:00 +00:00
nekral-guest
4375e97124 Added tests for SULOG. 2009-05-22 11:50:26 +00:00
nekral-guest
b42d7cf631 Check the right place for the user's homedir. 2009-05-22 11:48:23 +00:00
nekral-guest
b3a4a77b46 Updated ignore list. 2009-05-22 11:47:18 +00:00
nekral-guest
65269966d5 Make sure the process started by su is killed.
Avoid messages on, stderr.
Make sure the process started by su is actually started when userdel is run.
2009-05-22 11:46:57 +00:00
nekral-guest
86ce147df1 Added tests for userdel. 2009-05-22 11:44:54 +00:00
nekral-guest
d868434939 Updated traps. Avoid removal of files not created by the testsuite 2009-05-22 11:44:21 +00:00
nekral-guest
3e50639cba Added failure libraries to test rmdir and unlink failures. 2009-05-22 11:19:38 +00:00
nekral-guest
d3a0659e13 Added support for adding files that do not exist on the system.
These files are removed later during the cleanup.
2009-05-22 11:19:10 +00:00
nekral-guest
199d8b2719 Added 6 failure tests for userdel. 2009-05-22 11:18:07 +00:00
nekral-guest
e9b12a545d Updated to the new version and updated ignore list. 2009-05-22 11:16:51 +00:00
nekral-guest
0d29450314 * New upstream release:
- newgrp and sg return the exit status of their child. Closes: #529897
2009-05-22 11:13:08 +00:00
nekral-guest
96432cb7a1 Added an userdel failure test. 2009-05-21 16:46:43 +00:00
nekral-guest
d2a6818f17 Run with set -e. 2009-05-21 16:12:47 +00:00
nekral-guest
c2b51209bb su now logs a full tty path (/dev/ used to be strip out). 2009-05-21 16:08:45 +00:00
nekral-guest
436996ed07 Updated to the new passwd message. 2009-05-21 16:07:44 +00:00
nekral-guest
3d5b4ce121 * debian/patches/506_relaxed_usernames: usernames with a slash will not only
break one option. Move to the discussion on the usernames.
2009-05-21 15:55:29 +00:00
nekral-guest
f121e979bb * debian/patches/*: Updated patches to the new quilt and shadow versions. 2009-05-21 15:30:36 +00:00
nekral-guest
cb8f35691a * debian/login.defs: Removed comment about MD5_CRYPT. MD5_CRYPT_ENAB is no
more used by chpasswd and newusers.
2009-05-21 15:19:02 +00:00
nekral-guest
0ea08a3961 - Updated patches:
+ debian/patches/506_relaxed_usernames
2009-05-21 15:17:46 +00:00
nekral-guest
9ef58601e0 * The "Chevrotin" release.
* New upstream release:
     - Fixed typo in the French vipw usage. Closes: #528486
     - Fixed failure to delete an user (wrongly detected as still logged in).
       On Linux, userdel checks if the user has some running processes.
       Otherwise, it still check with utmp if the user is logged in and check
       if the process indicated by utmp is still running to avoid
       mis-detection of logged-in users. Closes: #528060
2009-05-21 15:15:22 +00:00
nekral-guest
130e26d582 Added 3 tests for userdel. 2009-05-20 21:48:16 +00:00
nekral-guest
3462794b84 Added missing file. 2009-05-20 21:44:52 +00:00
nekral-guest
f82f0de34e Added 2 new userdel tests. 2009-05-20 21:23:32 +00:00
nekral-guest
eb61b09070 cleanup. Remove unneeded files. 2009-05-20 21:21:55 +00:00
nekral-guest
a97b3a382b * The "Banonet" release.
* debian/login.pam: Really ignore pam_selinux.so failures when the module do
    not exist. Closes: #528673
2009-05-16 10:15:38 +00:00
nekral-guest
f3ef07b8c7 * debian/rules: Install the lintian overrides with dh_lintian.
* debian/control: Raised dependency on debhelper (>= 6.0.7~) for dh_lintian.
  * debian/compat: Raised to 6
2009-05-14 20:40:43 +00:00
nekral-guest
8f4d210b31 Updated to clean the gcov files. Not used on Debian. 2009-05-14 19:51:55 +00:00
nekral-guest
6ff5ab6af4 * debian/login.pam: Ignore pam_selinux.so failures when the module do not
exist. A required pam_selinux.so makes login fail when the module does not
    exist (e.g. on architecture without SE Linux support). Closes: #528673
2009-05-14 19:11:38 +00:00
nekral-guest
cfbe85f1f0 * debian/login.postinst: Install /var/log/faillog during initial installs
only. This permits admins to disable failed logins recording.
    Closes: #488420
2009-05-12 20:05:53 +00:00
nekral-guest
6752d525c3 * The "Banon" release.
* debian/rules, debian/passwd.linda-overrides, debian/login.linda-overrides:
    Removed linda-overrides files.
2009-05-11 20:30:36 +00:00
nekral-guest
36595ad2cd * debian/control: Standards-Version bumped to 3.8.1. No changes.
* debian/control: Changed gnome-doc-utils dependency to >= 0.4.3 (instead
    of >= 0.4.3-1)
  * debian/control: Added ${misc:Depends} to the passwd's Depends and login's
    Pre-Depends.
2009-05-10 22:30:50 +00:00
nekral-guest
88e88fbf27 * debian/securetty.linux: Added some local X displays. See LP #104957. But
only a limited set of displays were added.
2009-05-10 22:01:48 +00:00
nekral-guest
f2915bc349 Next upstream release will be 4.1.4. 2009-05-10 20:05:43 +00:00
nekral-guest
fca246813e Updated patch for the testsuite. 2009-05-10 19:48:42 +00:00
nekral-guest
9292f7b951 Add the username in failures reports.
Add support for rounds checking in SHA512
Remove the password to extract the salt for MD5.
2009-05-10 19:36:36 +00:00
nekral-guest
ff0f6c28eb Added new tests, and tag PAM and non-PAM specific tests. 2009-05-10 19:29:29 +00:00
nekral-guest
c556de2b56 Added newusers tests specific to the PAM version, to replace the one which use the non-PAM specific options. 2009-05-10 19:27:29 +00:00
nekral-guest
7890eab89b Added PAM configuration files to support the PAM versions of newusers. 2009-05-10 19:18:25 +00:00
nekral-guest
f9aee80330 newusers now sets the lstchg field in shadow. 2009-05-10 19:15:17 +00:00
nekral-guest
d9b8c55516 New release name: Chambérat.
Added entries for new translation and sort translations alphabetically.
2009-05-10 17:12:40 +00:00
nekral-guest
c3e1c92fa7 # 402 should be merged in 401, but should be reviewed by SE Linux experts first 2009-05-10 14:10:11 +00:00
nekral-guest
8cd330b97a - Remove patches applied upstream:
+ debian/patches/403_fix_PATH-MAX_hurd
2009-05-10 14:09:16 +00:00
nekral-guest
156bd855d4 Since chpasswd is now PAM enabled, the crypt tests are passed with chgpasswd.
Do not copy the database which should not change. Directly compare the system files with the files from config/.
Update some test descriptions.
2009-05-09 22:39:12 +00:00
nekral-guest
5324b00638 There were changes in the exit codes of gpasswd. 2009-05-09 22:32:10 +00:00
nekral-guest
ba569f80b6 Added tests for passwd which interractively change (or attemptto change) a password. 2009-05-09 22:30:21 +00:00
nekral-guest
d6495cab07 There is no need to use expect for these tests.
Only check the stdout/stderr output.
2009-05-09 22:27:13 +00:00
nekral-guest
5520ea45cc Added missing PAM configuration files for chpasswd. 2009-05-09 22:23:32 +00:00
nekral-guest
98df44c5a1 Added tests for the PAM version of chpasswd. 2009-05-09 22:20:43 +00:00
nekral-guest
e5aa1773d3 * debian/login.pam: Updated support for SELinux. Closes: #527106 2009-05-09 21:34:55 +00:00
nekral-guest
f810e0a171 Fixed in next release:
- pwck and grpck warn when the shadowed and non-shadowed files contain
       an entry for the same user or group and the non shadowed file password
       field is not 'x'. Closes: #501869
       Other topics raised in this bug were fixed previously.
2009-05-09 21:27:32 +00:00
nekral-guest
4e2e230b07 * debian/rules, debian/passwd.newusers.pam, debian/passwd.chpasswd.pam:
Install the newusers and chpasswd PAM service configuration files.
    newusers and chpasswd now use PAM to update the passwords.
    Closes: #525153
2009-05-09 17:03:49 +00:00
nekral-guest
d65a81cc37 - Updated patches:
+ debian/patches/008_login_log_failure_in_FTMP
        + debian/patches/401_cppw_src.dpatch
        + debian/patches/429_login_FAILLOG_ENAB
        + debian/patches/463_login_delay_obeys_to_PAM
2009-05-09 14:30:06 +00:00
bubulle
9febd5c52e Bug closure 2009-05-08 17:23:06 +00:00
bubulle
c9eb7cb521 Add bug closure 2009-05-08 04:54:49 +00:00
nekral-guest
d6271f27b8 * debian/securetty.linux: Added Freescale i.MX ports. Closes: #527095 2009-05-07 17:23:45 +00:00
nekral-guest
4d7d93d08a Fixed bug number. 2009-04-28 22:04:41 +00:00
nekral-guest
127ac7cf5e - Fixed lastlog. 4.1.3 only reported empty logs. Closes: #52473 2009-04-28 20:48:33 +00:00
nekral-guest
292b47c386 - passwd: Report password properties changes if the password is not
actually changed. Closes: #525967
2009-04-28 20:46:52 +00:00
nekral-guest
2d99df028e Name the release ("Rollot").
Added other bug closures.
2009-04-26 12:52:05 +00:00
bubulle
8009e96f35 Bug closure 2009-04-26 12:29:09 +00:00
nekral-guest
d485633edc Added login tests. 2009-04-15 23:36:17 +00:00
nekral-guest
81c1f063d2 Updated to 4.1.3.1. 2009-04-15 23:35:57 +00:00
nekral-guest
067fb2ff47 GID_MIN was set to 1000. 2009-04-15 23:35:43 +00:00
nekral-guest
3052b0306d ignore log files. 2009-04-15 23:34:44 +00:00
nekral-guest
1b0a6b20be Another bug came in the mean time. 2009-04-15 23:00:59 +00:00
nekral-guest
bce89b7cad - removed debian/patches/302_vim_selinux_support: Applied upstream. 2009-04-15 21:59:18 +00:00
nekral-guest
0a6760339d Added 3 tests for login. 2009-04-15 21:55:36 +00:00
nekral-guest
e379403368 Updated for 1:4.1.3.1. 2009-04-15 21:52:26 +00:00
nekral-guest
02cfa1e96e Added tests for IDs set to -1
long username for gpasswd
and system users with newusers.
2009-04-14 22:26:30 +00:00
nekral-guest
ae2a17ec1c * debian/login.defs: Update GID_MIN to 1000. This is more consistent with
UID_MIN, SYS_GID_MAX and the usage of the same ID for UID and GIDs. This
    should also be more consistent with the assignment of system group IDs
    starting from GID_MAX and going down.
2009-04-14 21:38:52 +00:00
nekral-guest
7b6b6a081f add a patch to update the nb translation (was not included in 4.1.3). 2009-04-14 20:51:58 +00:00
bubulle
a89ae2b415 Bug closure for nb translation 2009-04-12 17:49:14 +00:00
nekral-guest
f6b6e256d0 Fixed typo. 2009-04-12 02:53:21 +00:00
nekral-guest
95611179d1 This is more realistic to have a shell. 2009-04-12 02:26:17 +00:00
nekral-guest
a8fe4890d5 New locale: kk. Removed manpages: es. 2009-04-12 02:25:51 +00:00
nekral-guest
4c58978bf2 Added /usr/local/games to ENV_PATH on Debian 2009-04-12 02:24:44 +00:00
nekral-guest
d97b4164c7 Updated chage usage message. 2009-04-12 02:23:55 +00:00
nekral-guest
049e27557a New system ID allocation. 2009-04-12 02:23:18 +00:00
nekral-guest
11e7186926 * debian/login.defs: Added /usr/local/games/ to ENV_PATH (for regular
users). Closes: #487105
2009-04-12 00:53:09 +00:00
nekral-guest
40065af03f Removed debian/patches/431_su_uid_0_not_root (applied upstream). 2009-04-12 00:36:24 +00:00
nekral-guest
b30988f25e Removed patch applied upstream: 415_login_put-echoctl-back.
Tag #498788 as fixed
2009-04-12 00:19:35 +00:00
nekral-guest
99858683d0 Updated debian/patches/542_useradd-O_option for shadow 4.1.3. 2009-04-11 23:37:38 +00:00
nekral-guest
d3b0033664 * debian/securetty.linux: Removed devfs devices. Usage of devfs enabled
kernel in Lenny was not supported. Closes: #511961
2009-04-11 23:35:49 +00:00
bubulle
e1d86d97bb Updated changelog entry 2009-04-11 13:55:45 +00:00
nekral-guest
a1a7ad3bee Added tests for newusers. 2009-04-11 11:55:40 +00:00
nekral-guest
beb38aa933 Added test for newusers. 2009-04-11 11:36:33 +00:00
nekral-guest
a3a623daed Added tests for newusers. 2009-04-11 11:25:12 +00:00
nekral-guest
d2bd32ab51 Added new newusers tests. 2009-04-11 11:15:13 +00:00
nekral-guest
420463e136 Added new tests. Fixed alphabetical order. 2009-04-10 23:14:57 +00:00
nekral-guest
34cc1b4591 Do not create a passw.new file.
Remove those files.
2009-04-10 23:08:02 +00:00
nekral-guest
40f31fe111 Added new SHA256 test cases. 2009-04-10 23:05:41 +00:00
nekral-guest
66d1c537b8 Fix the tests for SHA256 and SHA512 passwords.
They were testing DES.
2009-04-10 23:00:50 +00:00
nekral-guest
0d5d805ba3 Added support for SHA256 and SHA512 tests. 2009-04-10 22:58:06 +00:00
nekral-guest
af0a5b3a7e Added tests for expiry. 2009-04-10 22:47:47 +00:00
nekral-guest
e6fdd218b5 Added tests for passwd. 2009-04-10 22:45:47 +00:00
nekral-guest
9c9b12ccfb Ignore log files. 2009-04-10 22:43:54 +00:00
nekral-guest
208cc24840 Ignore the log files. 2009-04-10 22:42:08 +00:00
nekral-guest
00fa6ffc89 Added existing tests. 2009-04-06 00:02:22 +00:00
nekral-guest
562ea47e66 Adde test for grpck. 2009-04-06 00:01:30 +00:00
nekral-guest
33d5f5d307 Added tests for pwck. 2009-04-05 23:59:24 +00:00
nekral-guest
7ab05204f9 Added test for chgpasswd. 2009-04-05 23:58:31 +00:00
nekral-guest
7ff74651d9 Added tests for chpasswd. 2009-04-05 23:57:26 +00:00
nekral-guest
b13dde1746 Tagged bugs already fixed upstream. 2009-04-05 23:53:53 +00:00
nekral-guest
5ef093d38e Fix the call to fsync. 2009-03-22 12:08:43 +00:00
nekral-guest
d56e6d08bc * debian/patches/401_cppw_src.dpatch: Call fsync before closing the backup
file descriptor. This ensures that the backup file will be available on
    the storage medium.
2009-03-21 20:40:52 +00:00
nekral-guest
b98c5149da The date changes everyday. Use @TODAY@ instead of the date when the test case was created. 2009-03-18 21:22:22 +00:00
nekral-guest
1ccdb08ab2 Ignore generated files. 2009-03-18 21:21:30 +00:00
nekral-guest
39553bc84a Ignore generated log files. 2009-03-18 21:13:07 +00:00
nekral-guest
2a3f424d3d Ignore generated log files. 2009-03-18 21:11:04 +00:00
nekral-guest
49db6466e1 Ignore generated log files. 2009-03-18 21:01:58 +00:00
nekral-guest
b09af63a5d Ignore generated log files. 2009-03-18 20:54:03 +00:00
nekral-guest
d9a24cc82c Ignore generated log files. 2009-03-18 20:53:16 +00:00
nekral-guest
ab1840c6d6 Ignore generated log files. 2009-03-18 20:34:58 +00:00
nekral-guest
14aaa22238 Ignore generated log files. 2009-03-18 20:30:37 +00:00
nekral-guest
e7bb558118 Ignore generated log files. 2009-03-18 20:29:21 +00:00
nekral-guest
bb269e44d7 ignore generated log files. 2009-03-18 20:27:20 +00:00
nekral-guest
2ad293e849 Ignore the generated log files 2009-03-18 20:25:34 +00:00
nekral-guest
e6bc2c9f9b Fix the exit sequence. 2009-03-18 15:19:44 +00:00
nekral-guest
af76777327 UPdated to new version. 2009-03-18 15:18:30 +00:00
nekral-guest
4d7b872d28 Fixed path of test newusers/29. 2009-03-18 15:17:18 +00:00
nekral-guest
bc66fb0ed3 Added the svn:executable property on the run_groupmems.exp scripts. 2009-03-18 15:13:10 +00:00
nekral-guest
a295dc0f1b Make sure no lock files remain after teh execution of each test.
Added invokation of new test cases.
2009-03-16 23:23:08 +00:00
nekral-guest
097d6864f7 Ignore the .svn directories in the config directories. 2009-03-16 23:21:15 +00:00
nekral-guest
b7bf03b161 Added interposition library necessary for the failures tests. 2009-03-16 23:20:43 +00:00
nekral-guest
7a78d9c181 Added new test cases. 2009-03-16 23:19:40 +00:00
nekral-guest
d548fe213b gshadow is removed anyway in this test. Make it a valid gshadow matching the group file. 2009-03-16 23:06:27 +00:00
nekral-guest
0423800e3e Fix typo. 2009-03-16 22:53:29 +00:00
nekral-guest
e98619c71c Make sure tests fail by exiting a non nul value. 2009-03-16 22:52:47 +00:00
nekral-guest
8f364eb05a Make sure tests fail by exiting a non nul value. 2009-03-16 22:48:45 +00:00
nekral-guest
0ca7b0bfb3 Added new test case. 2009-03-16 22:43:07 +00:00
nekral-guest
09b2603e32 Updated to new shadow version. 2009-03-16 22:37:02 +00:00
nekral-guest
cd0a2dd06d Added new test cases. 2009-03-16 22:32:32 +00:00
nekral-guest
d4931a4aef Updated to new shadow version. 2009-03-16 22:11:32 +00:00
nekral-guest
0b36e4e59f Fix logs. 2009-03-16 22:11:01 +00:00
nekral-guest
51c59171e4 Make sure tests fail by exiting a non nul value. 2009-03-16 22:08:42 +00:00
nekral-guest
474d525137 Added 2 new test cases. 2009-03-16 21:31:26 +00:00
nekral-guest
f0866cc1fb Intent of 14_useradd_out_of_range_UID.test was to test with UID=2**32, not 2**31. Although the limit for UIDs used to be 2**31-1. 2009-03-16 21:27:45 +00:00
nekral-guest
f4c395459d Updated to new shadow version. 2009-03-16 21:19:35 +00:00
nekral-guest
8f64322393 Added new tests. 2009-03-15 23:23:58 +00:00
nekral-guest
5e45536e26 Updated since it is not an error. 2009-03-15 23:13:32 +00:00
nekral-guest
a645f89697 When groupmod only changes the GID, gshadow is not touched and thus it is not required to lock gshadow. 2009-03-15 23:08:40 +00:00
nekral-guest
02e5dbd136 Updated to new shadow version. 2009-03-15 22:54:37 +00:00
nekral-guest
fd204abcae Make sure test fail by exiting a non nul value. 2009-03-15 22:50:11 +00:00
nekral-guest
9fb40391f8 Fix for new shadow version. 2009-03-15 22:37:49 +00:00
nekral-guest
6657ff38e5 Fix message. Did not end with a new line. 2009-03-15 22:36:21 +00:00
nekral-guest
43515a0924 Cleanup for current upstream SVN version. 2009-03-14 17:46:26 +00:00
nekral-guest
66c00bd2be - Translations
+ New Kazakh translation. Closes: #517809
2009-03-03 20:57:50 +00:00
nekral-guest
101469c265 * debian/securetty.linux: Added ttyPZ0, ttyPZ1, ttyPZ2, ttyPZ3 for PowerMac
machines.  Closes: #511739
2009-01-13 22:44:59 +00:00
nekral-guest
dbe74223ee Updated patches for upstream 4.1.3. 2008-09-14 14:10:48 +00:00
nekral-guest
9d3a7eb59a - Remove patches applied upstream (4.1.3):
+ debian/patches/200_Czech_binary_translation
      + debian/patches/302_remove_non_translated_polish_manpages
      + debian/patches/494_passwd_lock-no_account_lock
2008-09-14 14:02:45 +00:00
nekral-guest
21d6b34360 groupmems needs to be setuid, not setgid.
include common-auth and common-account instead of pam_permit.so
2008-09-14 13:52:21 +00:00
nekral-guest
da34d2eac4 Alphabetical order. 2008-09-14 12:28:42 +00:00
nekral-guest
f34f017160 Added missing file. 2008-09-14 12:23:07 +00:00
nekral-guest
0323eeb589 Some Polish manpages were removed. 2008-09-14 12:22:31 +00:00
nekral-guest
26d0bcb51f Updated error messages. 2008-09-14 12:21:19 +00:00
nekral-guest
c5d02f1f2f Updated error messages. 2008-09-14 12:20:52 +00:00
nekral-guest
3ccb21e2ff Updated error messages. 2008-09-14 12:20:15 +00:00
nekral-guest
fe497cb98e Updated error messages. 2008-09-14 12:19:00 +00:00
nekral-guest
557a602026 Updated error messages. 2008-09-14 12:17:29 +00:00
nekral-guest
57d512829c Updated error messages. 2008-09-14 12:16:10 +00:00
nekral-guest
d7e3907ab6 Update for the new error messages. 2008-09-14 12:09:57 +00:00
nekral-guest
6d4f30fbeb Added tests for groupmems. 2008-09-14 11:55:34 +00:00
nekral-guest
f7ea46fe79 - Remove patches applied upstream:
+ debian/patches/301_manpages_missing_options
2008-09-13 17:53:56 +00:00
nekral-guest
1c142ff073 - Remove patches applied upstream:
+ debian/patches/300_SHA_crypt_method
2008-09-13 17:52:09 +00:00
nekral-guest
6edf9089ec - Remove patches applied upstream:
+ debian/patches/414_remove-unwise-advices
2008-09-13 17:50:46 +00:00
nekral-guest
af8755d005 - Remove patches applied upstream:
+ debian/patches/406_vipw_resume_properly
2008-09-13 17:49:05 +00:00
nekral-guest
0c13397839 - Remove patches applied upstream:
+ debian/patches/487_passwd_chauthtok_failed_message
2008-09-13 17:46:57 +00:00
nekral-guest
ec60f91bc5 - Remove patches applied upstream:
+ debian/patches/491_configure.in_friendly_selinux_detection
2008-09-13 17:45:51 +00:00
nekral-guest
1e73fef46e 454_userdel_no_MAIL_FILE was wrong. 2008-09-13 17:42:43 +00:00
nekral-guest
469a214650 Removed 434_login_stop_checking_args_after-- (applied upstream) 2008-09-13 17:42:04 +00:00
nekral-guest
d638e563b6 - Remove patches applied upstream:
+ debian/patches/434_login_stop_checking_args_after--
2008-09-13 17:41:18 +00:00
nekral-guest
ae59303366 * debian/patches/900_testsuite_groupmems, debian/patches/901_testsuite_gcov:
Added patches, only intended to be used in the testsuite.
2008-09-13 17:38:04 +00:00
nekral-guest
291b61a6c3 428_grpck_add_prune_option updated for upstream version 4.1.2. 2008-09-13 17:33:52 +00:00
nekral-guest
515dbe2f9a Fixed typo. 2008-09-13 17:32:52 +00:00
nekral-guest
f1fd47e349 * debian/patches/402_cppw_selinux: Add SE Linux support for cppw / cpgr. 2008-09-13 17:29:48 +00:00
nekral-guest
d181848c75 * debian/patches/454_userdel_no_MAIL_FILE: Patch removed. If MAIL_FILE is
defined, the mailbox is not in MAIL_SPOOL_DIR.
2008-09-13 17:27:12 +00:00
nekral-guest
c0dda226c3 507_32char_grnames.dpatch updated for upstream version 4.1.2. 2008-09-13 17:24:05 +00:00
nekral-guest
7c0c287396 429_login_FAILLOG_ENAB updated for upstream version 4.1.2. 2008-09-13 17:23:17 +00:00
nekral-guest
6232365cea 008_login_log_failure_in_FTMP updated for upstream version 4.1.2. 2008-09-13 17:22:30 +00:00
nekral-guest
455c9e8673 302_vim_selinux_support updated for upstream version 4.1.2. 2008-09-13 17:21:50 +00:00
nekral-guest
3c064bcebb 008_su_get_PAM_username updated for upstream version 4.1.2. 2008-09-13 17:21:05 +00:00
nekral-guest
3152fbd0d2 494_passwd_lock-no_account_lock updated for upstream 4.1.2.
Mention that it is fixed in 4.1.3.
2008-09-13 17:19:29 +00:00
nekral-guest
560095862a Indicate the upstream version where the fix will be present. 2008-09-13 17:18:07 +00:00
nekral-guest
126500c911 * debian/patches/504_undef_USE_PAM.dpatch: USE_PAM needs to be undef after
inclusion of "defines.h".
  * added note about current upstream.
2008-09-13 17:17:21 +00:00
nekral-guest
855c092543 Fixed typo in a comment. 2008-09-13 17:14:42 +00:00
nekral-guest
b705ca4d97 A configure option was added upstream. To be tested with 4.1.3. 2008-09-13 17:13:59 +00:00
nekral-guest
9fc3874093 * debian/patches/506_relaxed_usernames: Use an extra paragraph for the note
on username with a '/'.
2008-09-13 17:11:22 +00:00
nekral-guest
e780891e11 200_Czech_binary_translation updated for upstream version 4.1.2. 2008-09-13 17:09:44 +00:00
nekral-guest
22278063de 579_chowntty_debug updated for upstream version 4.1.2. 2008-09-13 17:09:06 +00:00
nekral-guest
edde4d731d Updated for upstream version 4.1.2. 2008-09-13 17:06:57 +00:00
nekral-guest
30c5ceb601 Updated for upstream version 4.1.2. 2008-09-13 17:04:57 +00:00
nekral-guest
22a26e92e4 debian/patches/505_useradd_recommend_adduser was already included in 1:4.1.1-2 2008-09-13 17:02:03 +00:00
nekral-guest
2d5f7a20d7 Merge changes from the lenny branch:
svn merge svn://svn.debian.org/svn/pkg-shadow/debian/branches/lenny@2000 svn//svn.debian.org/svn/pkg-shadow/debian/branches/lenny@2271 svn://svn.debian.org/svn/pkg-shadow/debian/trunk
Previous changes moved to 4.1.2-1 (experimental).
2008-08-31 19:16:54 +00:00
nekral-guest
8d682b7f61 Remove the transition proposal email for bug 276419.
The transition is now over one year.
2008-05-24 19:20:33 +00:00
bubulle
39c3a9c268 Versioned Replaces on manpages-tr 2008-04-22 20:54:58 +00:00
nekral-guest
510226f810 * The "Brie de Meaux" and "Brie de Melun" double cheese release.
* debian/patches/505_useradd_recommend_adduser: Fix typo: userdel is used
  to remove an user, not to add one. Closes: #475795
2008-04-13 21:21:00 +00:00
bubulle
0db4a29c22 Simplify Replaces by dropping all pre-Etch versions 2008-04-07 21:11:46 +00:00
bubulle
e5dd164814 Versioned Replaces on manpages-zh after 1.5.1-1 upload of that package 2008-04-07 21:05:22 +00:00
nekral-guest
a80f47a81d Add a cheesy check. 2008-04-04 19:43:33 +00:00
nekral-guest
40461f86ed Remove debian/passwd.postrm, which is now empty. Thanks lintian. 2008-04-03 00:03:20 +00:00
nekral-guest
5a1749e06e Alphabetical order. 2008-04-02 23:31:31 +00:00
nekral-guest
7500d0ec1c Prepare the 1:4.1.1-1 release.
Add a Homepage field.
2008-04-02 23:29:34 +00:00
bubulle
6da3c2ba7f German translation update 2008-04-01 19:01:46 +00:00
bubulle
4fa62a74e2 Bug closure for basque translation update 2008-03-31 17:55:24 +00:00
bubulle
5901e73a95 Add bug closure 2008-03-30 12:20:40 +00:00
nekral-guest
79081455e3 Really Update the link to the new repository layout and Add a Vcs-Browser field. 2008-03-29 13:34:40 +00:00
nekral-guest
73fe74c374 Change XS-X-Vcs-Svn to Vcs-Svn. Update the link to the new repository
layout.  Add a Vcs-Browser field.
2008-03-29 12:19:03 +00:00
nekral-guest
d56b246d1b The Slovak translation was also updated upstream. This closes #471802. 2008-03-28 23:25:04 +00:00
nekral-guest
792ea0fa66 4.1.1 also fixes 445484:
Option --password added to groupadd / groupmod (like useradd / usermod).
2008-03-28 21:52:11 +00:00
nekral-guest
42f0bdb7aa Added ttyUSB0, ttyUSB1, ttyUSB2, and MPC5200 serial ports (ttyPSC0,
ttyPSC1, ttyPSC2, ttyPSC3, ttyPSC4, ttyPSC5).  Closes: #461374
2008-03-28 21:40:18 +00:00
nekral-guest
eeccfb8f62 The passwd's Replaces on manpages-de can be versionned again. The su(1) manpage was removed from manpages-de. 2008-03-28 21:00:26 +00:00
nekral-guest
90895612f1 There's no need for a dependency on login (now that it is unversionned; see above) in the passwd package. 2008-03-28 20:46:03 +00:00
nekral-guest
c284183a26 Continue the dependencies cleanup:
libpam-runtime (>= 0.76-14) was already provided by libpam-runtime in Sarge (now oldstable).
2008-03-28 20:42:40 +00:00
nekral-guest
bf4b725f01 Move the dependency on libpam-modules from Depends to Pre-Depends. The
login package is Essential, and without libpam-modules, login or su are
not functional. Thanks to Steve Langasek for pointing this out.
2008-03-28 20:33:32 +00:00
nekral-guest
20de595e37 Simplify the dependencies:
login (>= 970502-1) was already provided by login in Hamm.
libpam-modules (>= 0.72-5) was already provided by libpam-modules in Potato.
2008-03-28 20:18:50 +00:00
bubulle
92ff2a501d Italian translation update: bug closure 2008-03-27 18:57:31 +00:00
nekral-guest
6aec5248e8 New upstream will also fix #472575 2008-03-26 22:04:49 +00:00
bubulle
dbecb8a7c0 Bug closure for the Russian translation update 2008-03-24 18:35:04 +00:00
bubulle
61fb780f5c Mark Debian bugs for l10n as closed by the new upstream upload 2008-03-23 08:42:44 +00:00
nekral-guest
ac4b6af8e9 Do not recode the manpages in UTF-8. 2008-03-19 21:26:12 +00:00
nekral-guest
5f027bb6a4 Fix other dpkg-shlibdeps warnings. 2008-03-19 21:24:15 +00:00
nekral-guest
c53557d535 407_adduser_disable_PUG_with-n was applied upstream. 2008-03-19 20:26:36 +00:00
nekral-guest
afce34ff40 Updated patch to 4.1.1 2008-03-19 20:24:54 +00:00
nekral-guest
312f23ab50 Updated patches to 1.1.1 2008-03-19 20:23:42 +00:00
nekral-guest
93933b959d Updated patch for 1.1.1 2008-03-19 20:19:49 +00:00
nekral-guest
5af0050d0a 412_lastlog_-u_numerical_range was applied upstream. 2008-03-19 19:30:30 +00:00
nekral-guest
993f5134fd 408_passwd_check_arguments was applied upstream. 2008-03-19 19:25:51 +00:00
nekral-guest
89e6ca0d7e 496_login_init_session was applied upstream. 2008-03-19 19:20:38 +00:00
nekral-guest
7857beaf95 480_getopt_args_reorder was applied upstream. 2008-03-19 18:47:33 +00:00
nekral-guest
86aaea0978 466_fflush-prompt was applied upstream. 2008-03-19 18:45:41 +00:00
nekral-guest
8779ad5ec2 Support for -r, --system was added upstream. (467_useradd_-r_LSB) 2008-03-19 18:43:46 +00:00
nekral-guest
eb2337b2c7 462_warn_to_edit_shadow was applied upstream. 2008-03-19 18:41:31 +00:00
nekral-guest
ac972ba6fb 451_login_PATH was applied upstream. 2008-03-19 18:39:15 +00:00
nekral-guest
e8f45d238f 451_login_PATH was applied upstream. 2008-03-19 18:38:28 +00:00
nekral-guest
d27a65e33b Prepare next release.
Indicate bugs fixed in the new upstream release.
2008-03-19 18:37:09 +00:00
nekral-guest
0c6a55969e Fix tests data that depend on the date of execution. 2008-03-19 18:18:21 +00:00
nekral-guest
b3acd37d6d Added debug to find out what happens when it fails. 2008-03-19 18:16:56 +00:00
nekral-guest
99c78a4ae3 The behavior of useradd changed for the creation of groups. Now it
respects GID_MAX.
2008-03-19 18:14:32 +00:00
nekral-guest
ffddc3dbf8 Ad cleanup of tmp/out. 2008-03-19 18:13:25 +00:00
nekral-guest
aaa2195044 Add cleanup of tmp/out. 2008-03-19 18:13:12 +00:00
nekral-guest
9c9b24acaa Print the UID, then the GID. 2008-03-19 18:12:13 +00:00
nekral-guest
bebb89c93b Update to new newusers behavior:
* users are not added automatically to the list of supplementary groups
 * newusers use the same algorithm as useradd to define the new UIDs.
2008-03-09 01:59:59 +00:00
nekral-guest
b53ea15a4d Added tests for the split group feature (MAX_MEMBERS_PER_GROUP). 2008-03-09 00:20:48 +00:00
nekral-guest
a2054f9a9d Added tests for pwconv and pwunconv. 2008-03-09 00:18:07 +00:00
nekral-guest
ed328dc03c Added tests for groupdel. 2008-03-09 00:14:34 +00:00
nekral-guest
f3b4069ba4 Remove generated file. 2008-03-09 00:14:11 +00:00
nekral-guest
dac2b189c2 More tests for pwck and grpck. 2008-03-08 13:21:38 +00:00
nekral-guest
3f9037b282 Add tests for pwck and grpck. 2008-03-08 13:08:37 +00:00
nekral-guest
d4f56275e5 Fix typos groupadd -> groupmod. 2008-03-08 13:04:30 +00:00
nekral-guest
062eb42fd4 Added groupmod tests. 2008-03-08 11:03:49 +00:00
nekral-guest
9768aa54f9 Added groupadd tests. 2008-03-08 11:03:07 +00:00
nekral-guest
326c956bcd Added tests for groupadd. 2008-03-07 20:34:33 +00:00
nekral-guest
49c32e7ec1 Remove tm pdirectory. 2008-02-28 18:46:30 +00:00
nekral-guest
c8f4e36ebf Fix cut&paste typos. 2008-02-28 18:46:04 +00:00
nekral-guest
57d3f9fa83 Quote the salt because it may be an '*' and is expanded to filenames. 2008-02-27 00:27:18 +00:00
nekral-guest
aeae21cf6e Add 59 tests for gpasswd. 2008-02-27 00:02:18 +00:00
nekral-guest
857a615e2c Added watch file. 2008-02-24 17:36:57 +00:00
nekral-guest
7df22c6930 Added new usermod test: usermod can move the user's home directory, over a
new device and changes the owner of the user's file.
2008-02-17 17:09:42 +00:00
nekral-guest
d83880777a Added new usermod test: usermod checks if the uid is valid. 2008-02-17 17:05:17 +00:00
nekral-guest
f490e1a144 Added new usermod test: usermod can change the user's UID to an existing
UID (with -o).
2008-02-17 17:02:48 +00:00
nekral-guest
27ed5d04f7 Fix comment. 2008-02-17 17:02:03 +00:00
nekral-guest
98b7858e66 Added new usermod test: usermod tests if the new user's UID is already used. 2008-02-17 17:00:50 +00:00
nekral-guest
9c0339d436 Fix config description. 2008-02-17 16:58:46 +00:00
nekral-guest
48537b4957 Added new usermod test: usermod can change the user's UID. 2008-02-17 16:57:06 +00:00
nekral-guest
4146176c08 Added new usermod test: usermod -l fails if the gshadow file is locked. 2008-02-17 16:54:32 +00:00
nekral-guest
33ba4c0628 Added new usermod test: usermod -l fails if the group file is locked. 2008-02-17 16:53:05 +00:00
nekral-guest
3cf7c19a56 Added new usermod test: usermod -c does not check if the gshadow file is locked. 2008-02-17 16:49:21 +00:00
nekral-guest
29f48bafae Added new usermod test: usermod -c does not check if the group file is
locked.
2008-02-17 16:37:31 +00:00
nekral-guest
57da5c1045 Added new usermod test: usermod -G checks if the gshadow file is locked. 2008-02-17 16:34:38 +00:00
nekral-guest
897f8481b2 Added new usermod test: usermod -G checks if the shadow file is locked. 2008-02-17 16:33:29 +00:00
nekral-guest
2d428c52c9 Added new usermod test: usermod -G checks if the group file is locked. 2008-02-17 16:31:11 +00:00
nekral-guest
9d4c337ca1 Added new usermod test: usermod -G checks if the passwd file is locked. 2008-02-17 16:27:47 +00:00
nekral-guest
dfff7d3cfe Added new usermod test: usermod renames the user when requested to add an
user to a group it is already a member and to rename this user.
2008-02-17 16:14:58 +00:00
nekral-guest
67ac228c4a Added new usermod test: usermod does not fail when requested to add the
user to a group it is already a member.
2008-02-17 15:54:10 +00:00
nekral-guest
9e4d6448e6 Added new usermod test: usermod rename the user in the lists of members
and uses the right username when adding the user to supplementary groups.
2008-02-17 15:46:27 +00:00
nekral-guest
1cbb3cc320 Added new usermod test: usermod rename the user in the lists of members,
when an user is renamed with -l.
2008-02-17 15:43:32 +00:00
nekral-guest
30d2b24f04 Added new usermod test: usermod fails if asked to add an user to an
unknown numerical group.
2008-02-17 14:50:55 +00:00
nekral-guest
202fb5c463 Added new usermod test: usermod fails if asked to add an user to an
unknown named group.
2008-02-17 14:46:49 +00:00
nekral-guest
c203282681 Added new usermod test: usermod can change the list of supplementary
groups, with numerical groups.
2008-02-17 13:57:07 +00:00
nekral-guest
1937662816 Added new usermod test: usermod can clear the list of supplementary groups. 2008-02-17 13:53:24 +00:00
nekral-guest
d8b44cb331 Added new usermod test: usermod can change the list of supplementary groups. 2008-02-17 13:49:43 +00:00
nekral-guest
4399f64323 Added new usermod test: usermod keeps links or devices when it moves the
user's home directory.
2008-02-17 13:36:39 +00:00
nekral-guest
d17cbbac9f Added new usermod test: usermod does not move non-directory (regular file). 2008-02-17 13:25:52 +00:00
nekral-guest
d073acd750 12_usermod_move_homedir_dev_null test-case tests that usermod does not
move devices (/dev/null).
2008-02-17 13:25:13 +00:00
nekral-guest
1f7ad41762 Added new usermod test: usermod does not move non-directory. 2008-02-17 13:16:30 +00:00
nekral-guest
319a16fc84 Added new usermod test: usermod can move the user's home directory. 2008-02-17 13:05:07 +00:00
nekral-guest
6790d09e85 Added new userdel test: userdel does not delete the user's home directory
if it is not owned by the user.
2008-02-17 12:59:45 +00:00
nekral-guest
de17d213b2 Added new userdel test: userdel can delete the user's home directory. 2008-02-16 17:02:33 +00:00
nekral-guest
e1f8184dc3 Added new userdel test: userdel removes the user from lists in /etc/group
and /etc/gshadow.
2008-02-16 16:26:37 +00:00
nekral-guest
91a8f30a61 Added new userdel test: userdel removes the user from the admins lists of
/etc/gshadow.
2008-02-16 16:00:57 +00:00
nekral-guest
c155f2e39f Added new userdel test: userdel removes the user from the member lists of
/etc/gshadow.
2008-02-16 15:46:40 +00:00
nekral-guest
51f7bfdfde Added new userdel test: userdel removes the user from the member lists of
/etc/group.
2008-02-16 15:22:08 +00:00
nekral-guest
7fb73b155e Added tests to the automatic test suite:
usertools/01/17_useradd_create_homedir.test
  usertools/01/18_userdel_remove_homedir.test
  usertools/01/19_userdel_delete_user_in_group.test
  usertools/01/20_usermod_change_homedir.test
  usertools/01/21_usermod_change_and_move_homedir.test
  usertools/01/22_usermod_new_groups.test
  usertools/01/23_usermod_add_groups.test
  usertools/01/24_usermod_new_groups_remove_old_groups.test
2008-02-16 14:39:19 +00:00
nekral-guest
b088dfeff4 Added new newusers test: newusers can update the password of an existing
user with a pre-encrypted password.
2008-02-16 14:25:23 +00:00
nekral-guest
1dbaebde63 Add last three tests:
newusers/37_create_user_encrypt_MD5/newusers.test
 newusers/38_update_password_no_shadow_encrypted/newusers.test
 newusers/39_update_password_no_shadow_password_encrypted/newusers.test
2008-02-16 14:20:56 +00:00
nekral-guest
1023d83acd Added new newuser test: newusers can update the password of an existing
user with a pre-encrypted password, when this user has no shadow entry.
2008-02-16 14:16:49 +00:00
nekral-guest
d07207326e Added new newuser test: newusers can update the password of an existing
user in the passwd file, with a pre-encrypted password.
2008-02-16 14:11:43 +00:00
nekral-guest
2697c9817e Added new newuser test: newusers can encrypt the passwords with the MD5
algorithm.
2008-02-16 14:06:47 +00:00
nekral-guest
159fbaacc0 Added new newuser test: newusers can create a new user, and provide an
already encrypted password.
2008-02-11 22:46:08 +00:00
nekral-guest
f276efcb29 Added new newuser test: newusers can read the list from stdin. 2008-02-11 22:43:23 +00:00
nekral-guest
9300464b43 Added new newuser test: newusers can update the password of an existing
user, when there is no shadow file.
2008-02-11 22:42:01 +00:00
nekral-guest
52635a7d74 Added new newuser test: newusers can update the password of a user which
does not exist in shadow.
2008-02-11 22:37:17 +00:00
nekral-guest
e47fc28584 Added new newuser test: newusers fails if a user references a group which
exist in gshadow and not in group.
2008-02-11 22:33:46 +00:00
nekral-guest
37385ee60d dded new newuser test: newusers fails with invalid GID. 2008-02-11 22:29:35 +00:00
nekral-guest
7b44b22213 Added new newuser test: newusers can create a new user and new group with
different names.
2008-02-11 22:19:33 +00:00
nekral-guest
fa2b2e905d Added new newuser test: newusers fails if the groupname is invalid. 2008-02-11 22:10:07 +00:00
nekral-guest
494e15df37 Added new newuser test: newusers fails if the username is invalid. 2008-02-11 22:04:57 +00:00
nekral-guest
851446c287 Added new newuser test: newusers fails when there are no more available GIDs. 2008-02-11 22:01:32 +00:00
nekral-guest
0d183e6b94 Added new newuser test: newusers fails when there are no more available UIDs. 2008-02-11 21:52:56 +00:00
nekral-guest
ffe583db50 Added new newuser test: newusers fails with invalid UID. 2008-02-11 21:41:42 +00:00
nekral-guest
fffcc837ac Added new newuser test: newusers fails with negativ UID. 2008-02-11 21:38:56 +00:00
nekral-guest
1712aa91e9 Added new newuser test: newusers reuses a lower GID when GID_MAX is used. 2008-02-11 21:30:59 +00:00
nekral-guest
ee5bd9c521 Rewrite rational: newusers reuses a lower UID when UID_MAX is used. 2008-02-11 21:30:29 +00:00
nekral-guest
25b03d8cd7 Added new newuser test: newusers does not increment the UID when UID_MAX is used. 2008-02-11 21:25:06 +00:00
nekral-guest
4473bc6264 Added new newuser test: newusers can add multiple users. 2008-02-11 21:20:02 +00:00
nekral-guest
7be39fc4aa Added missing execution of 19_update_keep-old-home. 2008-02-11 21:11:50 +00:00
nekral-guest
f4d0f69e35 Added new grpunconv test: grpunconv checks if the gshadow file is locked. 2008-02-11 21:07:16 +00:00
nekral-guest
afabc3beb8 Added new grpunconv test: grpunconv checks if the group file is locked. 2008-02-11 21:06:13 +00:00
nekral-guest
7bbe585f1e Added new grpunconv test: grpunconv exits successfully when the gshadow
file does not exist.
2008-02-11 20:59:31 +00:00
nekral-guest
3ff563252e Added new grpconv test: grpconv tests if gshadow is locked. 2008-02-11 20:50:56 +00:00
nekral-guest
5b6ed9c678 Added new grpconv test. 2008-02-11 20:46:47 +00:00
nekral-guest
f9a23b8f67 Added new grpconv test. 2008-02-11 20:43:50 +00:00
nekral-guest
b140a0da35 Added new grpconv test. 2008-02-11 20:20:44 +00:00
nekral-guest
676f702362 Added new grpconv test. 2008-02-11 20:12:19 +00:00
nekral-guest
1beaa67010 Added new grpconv test. 2008-02-11 20:03:47 +00:00
nekral-guest
f7679480e6 Re-indent. 2008-02-11 19:48:56 +00:00
nekral-guest
3354e2dce7 Do not fail if the expected user is not present in the file, give an
useful warning.
2008-02-11 19:47:53 +00:00
nekral-guest
ca42fa251a Accept password file with multiple password specified as @PASS_MD5 ...@ 2008-02-11 19:46:33 +00:00
nekral-guest
bab3f92304 Accept password file with multiple password specified as @PASS_DES ...@ 2008-02-11 19:44:02 +00:00
nekral-guest
9b9f463b8f Remove the temporary files to permit the automatic tmp cleanup. 2008-01-30 21:15:23 +00:00
nekral-guest
3d84c8c91c Add tests for newusers 2008-01-29 22:12:45 +00:00
bubulle
54e3d28428 Prepare for release 2008-01-13 17:53:41 +00:00
bubulle
0a21c2438e Unversion the conflict with manpages-de, hopefully temporarily 2008-01-13 11:53:50 +00:00
bubulle
5a9ea180fa Release 4.1.0-1 2008-01-12 22:47:40 +00:00
nekral-guest
f77c7d061f Add script to generate coverage analysis of the testsuite. 2008-01-12 17:33:09 +00:00
nekral-guest
02d1ba5c99 Add the crypt tests. 2008-01-12 17:19:39 +00:00
nekral-guest
106a7a690c Fix test name. 2008-01-12 17:19:00 +00:00
bubulle
c3d6c6d5ce Update to Standards 3.7.3 2008-01-12 15:54:32 +00:00
nekral-guest
b2b7993cd0 Add tests for the different crypt methods (and different way to specify
which one shall be used).
2008-01-12 15:49:28 +00:00
nekral-guest
89c07802de Add common utility to compare the password and group files (with support
of variable data (password salt, date, etc.))
2008-01-12 15:47:10 +00:00
nekral-guest
285046bd1e Update the list of su and usertools tests. 2008-01-12 15:44:40 +00:00
nekral-guest
41d38991df Test usage of the default values from etc/default/useradd when an user is
created.
2008-01-12 15:43:37 +00:00
nekral-guest
517cc9fd79 Test setting of default values in useradd.default.
Start with different default values (compared to usertools/02)
2008-01-12 15:38:59 +00:00
nekral-guest
8b991cdd58 Add tests to test the options used to set the default values in the
useradd.default file.
2008-01-12 15:18:12 +00:00
nekral-guest
b1487cf3e6 Switch to the new infrastructure and split the old test in more atomic
tests.
2008-01-12 15:10:58 +00:00
nekral-guest
e158a89d37 Switch to the new config infrastructure. 2008-01-12 15:08:54 +00:00
nekral-guest
632a264077 Test the default ENV_SUPATH and ENV_PATH.
Same tests as su/08, with commented ENV_SUPATH and ENV_PATH in login.defs.
2008-01-12 14:38:01 +00:00
nekral-guest
201d2b1608 Same tests as su/02, with a different config. 2008-01-12 14:36:02 +00:00
nekral-guest
a48e84f0d6 Check non-log of successful su with SYSLOG_SU_ENAB set to "no". 2008-01-12 14:23:07 +00:00
nekral-guest
90b05a2679 Check log of successful su. 2008-01-12 14:22:06 +00:00
nekral-guest
36f46d4dfb Test identical to 04, with SYSLOG_SU_ENAB set to "no". 2008-01-12 14:15:07 +00:00
nekral-guest
4a57055073 Add tests to check the report and log of errors. 2008-01-12 14:05:04 +00:00
nekral-guest
e7ffab6b8e Add the new su/03 tests. 2008-01-12 13:38:45 +00:00
nekral-guest
46b0cb2db2 Split the test script in more atomic tests. 2008-01-12 13:25:11 +00:00
nekral-guest
bd4b7d0c23 Move to the new config infrastructure. 2008-01-12 13:23:19 +00:00
bubulle
960b18e52e Patches refreshed for 4.1.0 2008-01-12 13:17:04 +00:00
nekral-guest
dfcdbb7db5 Improve the securetty config file for Linux:
Add ttyS1. Better comments for the ttyS and xen consoles. Add a note for
the devfs consoles. They are no more needed for most users. Closes:
#454584. Thanks to Bastian Blank.
2008-01-11 22:26:27 +00:00
nekral-guest
dd712a6184 Update the list of tests. 2008-01-06 20:37:20 +00:00
nekral-guest
e4d00c832f Split run.exp and run.exp2 in separate tests for each
options/combinations.
2008-01-06 20:34:19 +00:00
nekral-guest
4cff2127e3 Switch to the new config file infrastructure. 2008-01-06 20:21:47 +00:00
nekral-guest
837e8bcd05 Updated tests to the new infrastructure. 2008-01-06 20:16:25 +00:00
nekral-guest
edb3448880 New config infrastructure. The config directory will be copied in the root
directory of the chroot, and the overwritten files will be restored at the
end of the test.
2008-01-06 20:02:39 +00:00
nekral-guest
2c6ecc3e02 Split run in 2 tests su to root and su to user. 2008-01-06 19:58:46 +00:00
nekral-guest
06f7f0d87f Added comments for the test log. 2008-01-06 19:55:54 +00:00
nekral-guest
80dcfd6690 Add default failure target if one step times out. 2008-01-06 19:53:47 +00:00
nekral-guest
f6249fb88a Fix script name in its usage. 2008-01-06 19:53:09 +00:00
nekral-guest
bb9ad48e4f Add language extension for run_su (run_su.exp). 2008-01-06 19:52:18 +00:00
nekral-guest
6cde8339cf Add helpers for an updated test infrastructure (handling of the chroot's
configuration).
2008-01-06 19:49:24 +00:00
nekral-guest
de62c3d005 Use unified diff for readability of the testsuite log. 2008-01-06 19:41:22 +00:00
nekral-guest
54d8487fe3 There is now a German su.1 manpage. 2008-01-06 19:40:19 +00:00
nekral-guest
cf35478f4d The usage strings now use spaces instead of tabs. 2008-01-06 19:38:29 +00:00
nekral-guest
1c33a0b2e5 Added needed empty line at the end of the testsuite.
Added comments.
2008-01-06 19:36:19 +00:00
nekral-guest
5c207aa3ac Provide progress information. 2008-01-06 19:34:50 +00:00
nekral-guest
fe6fa70efe Use one log file per test. This should ease the debugging.
The big testsuite.log is kept.
2008-01-06 19:32:49 +00:00
nekral-guest
abbf45f14f Make sure the messages of tools will not be localized in the testsuite. 2008-01-06 19:31:28 +00:00
nekral-guest
e3e826734c The only remaining chunk of 419_time_structures.dpatch was coming from
008_login_log_failure_in_FTMP.
Fix 008_login_log_failure_in_FTMP, and remove 419_time_structures.dpatch
2008-01-04 20:28:51 +00:00
nekral-guest
17026efc75 I finally reviewed 419_time_structures.dpatch, and it needs to be applied.
One chunk was not applied upstream.
2008-01-04 19:59:42 +00:00
nekral-guest
41a6258033 479_chowntty_debug is Debian specific (additional debugging to find a
non-reproducible bug).
2008-01-03 20:21:55 +00:00
nekral-guest
191be4c39f #454485 was also fixed upstream in 4.1.0 2008-01-03 20:15:17 +00:00
nekral-guest
09e267dad4 Remove Debian patches already applied in 4.1.0 (already marked as such in
the changelog and in the patches).
2007-12-26 14:56:06 +00:00
nekral-guest
459433e461 Upstream changed from tabulations to spaces in the Usage strings. 2007-11-27 18:59:51 +00:00
nekral-guest
5ec74ab450 Upstream moved from getpwnam to xgetpwnam. 2007-11-27 18:59:14 +00:00
nekral-guest
40d644c1b5 Yuri Kozlov also completed the manpages translation! 2007-11-22 00:16:36 +00:00
nekral-guest
11194f7e88 The updated Russian translation was committed upstream. 2007-11-22 00:07:16 +00:00
nekral-guest
9dcb747e52 compile with -W -Wall
large files are now supported by configure. Remove
-D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 from
CFLAGS.
2007-11-20 19:10:16 +00:00
nekral-guest
ab9d319d06 Updated to current upstream. 2007-11-20 19:04:43 +00:00
nekral-guest
8b6415c8cb Fix typo in documentation. 2007-11-20 19:04:01 +00:00
nekral-guest
5e1e47c89f Fix warning when compiled with -W -Wall. 2007-11-20 19:03:18 +00:00
nekral-guest
a1bb0a0c36 Fix typo. 2007-11-20 19:02:34 +00:00
nekral-guest
9765bc4a11 MD5_CRYPT_ENAB is back in login.defs to define the default crypt
algorithm. It is tagged as deprecated and ENCRYPT_METHOD is
recommended instead. New algorithms are also available.
Closes: #447747
2007-11-20 19:01:56 +00:00
nekral-guest
3bc2c036d4 Tag patches as fixed in the next release.
Next release will be 4.1.0-1.
#451518 and #451521 will also be closed by this new release.
2007-11-20 18:54:58 +00:00
nekral-guest
d0aa0033ee This patch was committed upstream. 2007-11-10 15:52:09 +00:00
bubulle
6d31d38571 4.0.18.2-1 released 2007-10-30 18:40:52 +00:00
nekral-guest
2e741e5948 New location for the upstream releases. 2007-10-28 18:12:44 +00:00
nekral-guest
8af99d4da2 Replace #bug_not_yet_reported_by_Sesse by an explanation about why audit
support was removed.
2007-10-28 17:47:16 +00:00
nekral-guest
6e28c75c09 Remove old patches. 2007-10-28 17:46:08 +00:00
nekral-guest
164c2b24bf Updated patches for 4.0.18.2:
* 409_man_generate_from_PO
   There is an Italian PO. Patch the Italian Makefile
 * 397_non_numerical_identifier
   usermod was patched. useradd is not patched yet.
2007-10-28 17:17:48 +00:00
nekral-guest
c6f0bda817 Update patches for 4.0.18.2 2007-10-28 17:15:48 +00:00
nekral-guest
8ebce60492 Updated patch. New ident information. 2007-10-28 17:12:43 +00:00
nekral-guest
52af2aa829 Update for 4.0.18.2.
Simplification of the patch. Prefer maintainability to indentation.
2007-10-28 17:07:45 +00:00
nekral-guest
62a24d7d0b Update patches (offsets only). 2007-10-28 17:02:44 +00:00
nekral-guest
a0d0068f7d 499_gettext-0.15 removed because upstream is built with gettext 0.16.
Remove other patches which are no more needed (because they are already applied).
2007-10-28 16:56:38 +00:00
bubulle
b2a73af945 We do not close the Xen console bug as it was closed by xen-tools upload(?) 2007-10-28 08:45:34 +00:00
bubulle
75ee1ef03b #448233 is also closed by next upstream 2007-10-28 08:43:58 +00:00
nekral-guest
9df5820cb5 Mark 442334 as being fixed in 4.0.18.2 2007-10-27 19:47:20 +00:00
nekral-guest
1e502d5cbc The next version will be 4.0.18.2.
Indicate that this release fixes #445480.
2007-10-27 14:01:01 +00:00
bubulle
e4feaa023e Patch 438 is applied 2007-10-27 13:51:33 +00:00
bubulle
e895c05aa3 Patch 433 is applied upstream 2007-10-27 13:45:39 +00:00
nekral-guest
21a85fb04a Fix a typo. Thanks to Justin Pryzby. Closes: #447757 2007-10-27 13:15:50 +00:00
bubulle
cf467c52af Merged upstream 2007-10-27 13:13:54 +00:00
bubulle
4442be02f7 404 is applied upstream 2007-10-27 13:05:47 +00:00
bubulle
1ed4974bf0 Patch 402 is applied upstream 2007-10-27 13:01:54 +00:00
bubulle
32d29775bc Applied upstream 2007-10-27 12:57:50 +00:00
bubulle
d0e332f49c Tag patches as fixed in upstream repository 2007-10-27 12:55:25 +00:00
nekral-guest
39beb1da3a 105_zn_CN was just applied to upstream repository.
Tag 104_man-sv, 101_ja, and 103_man-de as going to be fixed in 4.0.18.2.
2007-10-27 12:51:13 +00:00
10963 changed files with 49350 additions and 429729 deletions

View File

@@ -3,20 +3,11 @@ reports and various comments. This list may be incomplete, I received
a lot of mail...
# Maintainers
* Marek Michałkiewicz <marekm72@gmail.com> (1995-2000)
* Tomasz Kłoczko <kloczek@pld.org.pl> (2000-2007)
* Nicolas François <nicolas.francois@centraliens.net> (2007-2014)
* Serge E. Hallyn <serge@hallyn.com> (2014-now)
* Christian Brauner <christian@brauner.io> (2019-now)
* Iker Pedrosa <ipedrosa@redhat.com> (2022-now)
* Alejandro Colomar <alx@kernel.org> (2023-now) (4.14 stable)
To verify signatures on releases, use the following keys under keys/ :
* Serge Hallyn: keys/66D0387DB85D320F8408166DB175CFA98F192AF2.asc
* Christian Brauner: keys/4880B8C9BD0E5106FC070F4F7B3C391EFEA93624.asc
* Iker Pedrosa: keys/4E80EF49C7987B6DE2F81F5005079C6C3A653E57.asc
* Alejandro Colomar: keys/A9348594CE31283A826FBDD8D57633D441E25BB5.asc
# Authors and contributors
* Adam Rudnicki <adam@v-lo.krakow.pl>

View File

@@ -9558,7 +9558,7 @@
* NEWS: release date corrected.
* NEWS, src/su.c:
fixed set environment too early when using PAM, so move it to !USE_PAM
fixed set enviroment too early when using PAM, so move it to !USE_PAM
(patch submitted by Mike Frysinger <vapier@gentoo.org>).
2006-07-30 Tomasz Kłoczko <kloczek@pld.org.pl>
@@ -10245,7 +10245,7 @@
* NEWS: cleanups.
* autogen.sh:
by default in development environment use CFLAGS="-O2 -Wall".
by default in development enviroment use CFLAGS="-O2 -Wall".
* src/chgpasswd.c (main): remove two unused variables (newgr and now).
@@ -11654,7 +11654,7 @@
in OPTIONS section). Describe -a and -k options.
* NEWS, src/su.c:
fixed twice copy environment which causes auth problems (bug was introduced in 4.0.12;
fixed twice copy enviroment which causes auth problems (bug was introduced in 4.0.12;
fix by Nicolas François <nicolas.francois@centraliens.net>).
* src/passwd.c, po/ja.po, po/ko.po, po/nb.po, po/nl.po, po/nn.po, po/pl.po, po/pt.po, po/pt_BR.po, po/ro.po, po/ru.po, po/sk.po, po/sq.po, po/sv.po, po/tl.po, po/tr.po, po/uk.po, po/vi.po, po/zh_CN.po, po/zh_TW.po, po/bs.po, po/ca.po, po/cs.po, po/da.po, po/de.po, po/el.po, po/es.po, po/eu.po, po/fi.po, po/fr.po, po/he.po, po/id.po, po/it.po:
@@ -12584,7 +12584,7 @@
http://bugs.debian.org/48002
* src/login.c, NEWS:
fixed loggin of username on successful login (was using the normal username,
fixed loggin of username on succesful login (was using the normal username,
when it should have used pam_user) http://bugs.debian.org/47819
2005-06-02 Tomasz Kłoczko <kloczek@pld.org.pl>
@@ -13029,7 +13029,7 @@
* man/pl/usermod.8: finish sync with english version.
* man/hu/login.1, man/pl/login.1, NEWS, man/Attic/login.1, man/de/login.1:
removed fragment about abilities pass environment variables in login prompt.
removed fragment about abilities pass enviroment variables in login prompt.
* man/Attic/gpasswd.1, man/Attic/newgrp.1:
fixes by Nicolas Nicolas François <nicolas.francois@centraliens.net> (not all
@@ -13508,7 +13508,7 @@
removed not used translations.
* NEWS, src/su.c:
fix adding of pam_env env variables to environment (Martin Schlemmer <azarah@nosferatu.za.org>).
fix adding of pam_env env variables to enviroment (Martin Schlemmer <azarah@nosferatu.za.org>).
* NEWS, configure.in:
fixed filling MAIL_SPOOL_DIR and MAIL_SPOOL_FILE variables which was allways
@@ -13605,7 +13605,7 @@
* NEWS, src/su.c:
add pam_open_session() support. If builded without PAM support
propagate $DISPLAY and $XAUTHORITY environment variables.
propagate $DISPLAY and $XAUTHORITY enviroment variables.
Based on http://www.gentoo.org/cgi-bin/viewcvs.cgi/sys-apps/shadow/files/shadow-4.0.4.1-su-pam_open_session.patch?rev=1.1
2004-10-23 Tomasz Kłoczko <kloczek@pld.org.pl>

View File

@@ -1,29 +1,15 @@
## Process this file with automake to produce Makefile.in
EXTRA_DIST = NEWS README
EXTRA_DIST = NEWS README TODO shadow.spec.in
SUBDIRS = lib
SUBDIRS = libmisc lib
if ENABLE_SUBIDS
SUBDIRS += libsubid
endif
SUBDIRS += src po contrib doc etc tests/unit
SUBDIRS += src po contrib doc etc
if ENABLE_REGENERATE_MAN
SUBDIRS += man
endif
CLEANFILES = man/8.out man/po/remove-potcdate.* man/*/login.defs.d man/*/*.mo
EXTRA_DIST = tests/
dist-hook:
chmod -R u+w $(distdir)/tests
chmod u+w $(distdir)
mv $(distdir)/tests/unit $(distdir)/realunittest
mv $(distdir)/tests/tests $(distdir)/realtests
rm -rf $(distdir)/tests
mv $(distdir)/realtests $(distdir)/tests
rm -rf $(distdir)/tests/unit $(distdir)/tests/Makefile*
mv $(distdir)/realunittest $(distdir)/tests/unit

View File

@@ -108,7 +108,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = config.h
CONFIG_CLEAN_FILES = man/po/Makefile
CONFIG_CLEAN_FILES = man/po/Makefile shadow.spec
CONFIG_CLEAN_VPATH_FILES =
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
@@ -163,11 +163,12 @@ am__define_uniq_tagged_files = \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
DIST_SUBDIRS = lib libsubid src po contrib doc etc tests/unit man
DIST_SUBDIRS = libmisc lib libsubid src po contrib doc etc man
am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
$(top_srcdir)/man/po/Makefile.in ABOUT-NLS AUTHORS.md COPYING \
ChangeLog NEWS README compile config.guess config.rpath \
config.sub install-sh ltmain.sh missing
$(srcdir)/shadow.spec.in $(top_srcdir)/man/po/Makefile.in \
ABOUT-NLS AUTHORS.md COPYING ChangeLog NEWS README TODO \
compile config.guess config.rpath config.sub install-sh \
ltmain.sh missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@@ -223,8 +224,6 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CMOCKA_CFLAGS = @CMOCKA_CFLAGS@
CMOCKA_LIBS = @CMOCKA_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
@@ -243,7 +242,6 @@ EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
FILECMD = @FILECMD@
GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
@@ -259,15 +257,9 @@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBACL = @LIBACL@
LIBADD_DL = @LIBADD_DL@
LIBADD_DLD_LINK = @LIBADD_DLD_LINK@
LIBADD_DLOPEN = @LIBADD_DLOPEN@
LIBADD_SHL_LOAD = @LIBADD_SHL_LOAD@
LIBATTR = @LIBATTR@
LIBAUDIT = @LIBAUDIT@
LIBBSD = @LIBBSD@
LIBBSD_CFLAGS = @LIBBSD_CFLAGS@
LIBBSD_LIBS = @LIBBSD_LIBS@
LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@
LIBECONF = @LIBECONF@
LIBICONV = @LIBICONV@
@@ -283,7 +275,6 @@ LIBSUBID_ABI = @LIBSUBID_ABI@
LIBSUBID_ABI_MAJOR = @LIBSUBID_ABI_MAJOR@
LIBSUBID_ABI_MICRO = @LIBSUBID_ABI_MICRO@
LIBSUBID_ABI_MINOR = @LIBSUBID_ABI_MINOR@
LIBSYSTEMD = @LIBSYSTEMD@
LIBTCB = @LIBTCB@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
@@ -292,8 +283,6 @@ LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
LT_DLLOADERS = @LT_DLLOADERS@
LT_DLPREOPEN = @LT_DLPREOPEN@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
@@ -316,9 +305,6 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
POSUB = @POSUB@
RANLIB = @RANLIB@
SED = @SED@
@@ -390,10 +376,9 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = tests/
SUBDIRS = lib $(am__append_1) src po contrib doc etc tests/unit \
EXTRA_DIST = NEWS README TODO shadow.spec.in
SUBDIRS = libmisc lib $(am__append_1) src po contrib doc etc \
$(am__append_2)
CLEANFILES = man/8.out man/po/remove-potcdate.* man/*/login.defs.d man/*/*.mo
all: config.h
$(MAKE) $(AM_MAKEFLAGS) all-recursive
@@ -448,6 +433,8 @@ distclean-hdr:
-rm -f config.h stamp-h1
man/po/Makefile: $(top_builddir)/config.status $(top_srcdir)/man/po/Makefile.in
cd $(top_builddir) && $(SHELL) ./config.status $@
shadow.spec: $(top_builddir)/config.status $(srcdir)/shadow.spec.in
cd $(top_builddir) && $(SHELL) ./config.status $@
mostlyclean-libtool:
-rm -f *.lo
@@ -623,9 +610,6 @@ distdir-am: $(DISTFILES)
|| exit 1; \
fi; \
done
$(MAKE) $(AM_MAKEFLAGS) \
top_distdir="$(top_distdir)" distdir="$(distdir)" \
dist-hook
-test -n "$(am__skip_mode_fix)" \
|| find "$(distdir)" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
@@ -789,7 +773,6 @@ install-strip:
mostlyclean-generic:
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
@@ -873,8 +856,8 @@ uninstall-am:
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
am--refresh check check-am clean clean-cscope clean-generic \
clean-libtool cscope cscopelist-am ctags ctags-am dist \
dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-shar \
dist-tarZ dist-xz dist-zip dist-zstd distcheck distclean \
dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
dist-xz dist-zip dist-zstd distcheck distclean \
distclean-generic distclean-hdr distclean-libtool \
distclean-tags distcleancheck distdir distuninstallcheck dvi \
dvi-am html html-am info info-am install install-am \
@@ -890,16 +873,6 @@ uninstall-am:
.PRECIOUS: Makefile
dist-hook:
chmod -R u+w $(distdir)/tests
chmod u+w $(distdir)
mv $(distdir)/tests/unit $(distdir)/realunittest
mv $(distdir)/tests/tests $(distdir)/realtests
rm -rf $(distdir)/tests
mv $(distdir)/realtests $(distdir)/tests
rm -rf $(distdir)/tests/unit $(distdir)/tests/Makefile*
mv $(distdir)/realunittest $(distdir)/tests/unit
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

14
NEWS
View File

@@ -696,7 +696,7 @@ shadow-4.0.18 -> shadow-4.0.18.1 03-08-2006
shadow-4.0.17 -> shadow-4.0.18 01-08-2006
*** general:
- su: fixed set environment too early when using PAM, so move it to !USE_PAM
- su: fixed set enviroment too early when using PAM, so move it to !USE_PAM
(patch submitted by Mike Frysinger <vapier@gentoo.org>),
- groupadd, groupmod, useradd, usermod: fixed UID/GID overflow (fixed
http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=198920)
@@ -855,7 +855,7 @@ shadow-4.0.14 -> shadow-4.0.15 13-03-2006
- su: move exit() outside libmisc/shell.c::shell() for handle shell() errors
on higher level (now is better visable where some programs exit with 126
and 127 exit codes); added new shell() parameter (char *const envp[])
which allow fix preserving environment in su on using -p, (patch by
which allow fix preserving enviroment in su on using -p, (patch by
Alexander Gattin <xrgtn@yandex.ru>),
- su: added handle -c,--command option for GNU su compliance (merge
437_su_-c_option Debian patch),
@@ -966,7 +966,7 @@ shadow-4.0.12 -> shadow-4.0.13 10-10-2005
to example described in ident(1) man page (modern compilers like latest GCC
removes not used functions by global optimization).
So "ident /usr/bin/passwd" will show again some useable informations
- su: fixed twice copy environment which causes auth problems
- su: fixed twice copy enviroment which causes auth problems
(bug was introduced in 4.0.12; fix by Nicolas François <nicolas.francois@centraliens.net>),
- chage: differentiate the different failure causes by the exit value
This will permit to adduser Debian script to detect if chage failed because the
@@ -1133,7 +1133,7 @@ shadow-4.0.9 -> shadow-4.0.10 28-06-2005
http://bugs.debian.org/53702
- login: check for hushed login and pass PAM_SILENT if true,
http://bugs.debian.org/48002
- login: fixed username on successful login (was using the normal username,
- login: fixed username on succesful login (was using the normal username,
when it should have used pam_user) http://bugs.debian.org/47819
- remove using SHADOWPWD #define so now shadow is always built with shadow
password support,
@@ -1212,7 +1212,7 @@ shadow-4.0.7 -> shadow-4.0.8 26-04-2005
(without gshadow) doesn't permit to use newgrp,
- newgrp(1): newgrp uses /bin/sh (not bash),
- faillog(8): updated after rewritten faillog command for use getopt_long(),
- login(1): removed fragment about abilities pass environment variables in login prompt,
- login(1): removed fragment about abilities pass enviroment variables in login prompt,
- gshadow(5): new file (by Nicolas Nicolas François <nicolas.francois@centraliens.net>),
- usermod(8): fixed #302388 Debian bug: added separated -o option description,
@@ -1242,7 +1242,7 @@ shadow-4.0.6 -> shadow-4.0.7 26-01-2005
shadow-4.0.5 -> shadow-4.0.6 08-11-2004
- su: fixed adding of pam_env env variables to environment
- su: fixed adding of pam_env env variables to enviroment
(Martin Schlemmer <azarah@nosferatu.za.org>),
- autoconf: fixed filling MAIL_SPOOL_DIR and MAIL_SPOOL_FILE variables
which was always empty (Gregorio Guidi <g.guidi@sns.it>),
@@ -1275,7 +1275,7 @@ shadow-4.0.4.1 -> shadow-4.0.5 27-10-2004
including symlinks placed into /etc/skel/public_html for example.
http://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=66819
- su: add pam_open_session() support. If built without PAM support
propagate $DISPLAY and $XAUTHORITY environment variables.
propagate $DISPLAY and $XAUTHORITY enviroment variables.
Based on http://www.gentoo.org/cgi-bin/viewcvs.cgi/sys-apps/shadow/files/shadow-4.0.4.1-su-pam_open_session.patch?rev=1.1
- applied 036_pam_access_with_preauth.patch Debian patch submited by Bjorn
Torkelsson <Bjorn.Torkelsson@hpc2n.umu.se>: add support for PAM account

11
README
View File

@@ -17,12 +17,6 @@ are used for managing group accounts.
* [Issue tracker](https://github.com/shadow-maint/shadow/issues)
* [Releases](https://github.com/shadow-maint/shadow/releases)
## Code
The main development branch is at [https://github.com/shadow-maint/shadow.git](https://github.com/shadow-maint/shadow)
See [STABLE.md](https://github.com/shadow-maint/shadow/blob/master/STABLE.md) for a list of supported stable branches.
## Contacts
There are several ways to contact us:
* [the general discussion mailing list](
@@ -37,11 +31,6 @@ There are several ways to contact us:
https://alioth-lists-archive.debian.net/pipermail/pkg-shadow-commits/),
only used for historical purposes
## Contributions
Contributions are welcome. Follow the
[guidelines](doc/contributions/introduction.md) before posting any patches.
## Authors and maintainers
Authors and maintainers are listed in [AUTHORS.md](
https://github.com/shadow-maint/shadow/blob/master/AUTHORS.md).

127
TODO Normal file
View File

@@ -0,0 +1,127 @@
* Create a common usage function that'd take the array of
long options and an array of descriptions and output that so things would
be standardized across the utils.
Usage strings should be normalized and split first.
Investigate optparse.
/etc/default/useradd
* GROUP=1000 should accept a group name.
Check when RLOGIN is enabled if ruserok() exists
Move selinux_file_context out of libmisc/copydir.c
Review hardcoded root account?
review all call to strto
libmisc/cleanup_user.c
cleanup needed (cleanup_report_add_user* not used)
libxcrypt support
* http://wiki.linuxfromscratch.org/patches/browser/trunk/shadow/shadow-4.0.18.1-owl_blowfish-1.patch
implement getlong, getulong.
avoid atoi, atol, atoul, strtol, strtoul, ...
manpages: comment the RLOGIN parts
Replace build_list (in lib/gshadow.c) and list (in lib/sgetgrent.c) by
comma_to_list()
Revert the modified files if all files could not be changed.
* or warn and indicate which files were modified and which were not.
* check the order the files are modified.
report nscd_flush_cache failures?
call nscd from the programs or from lib (commonio?)
PAM: check if a non-interactive conversation function could be used to set
the password in chpasswd and newusers
WITH_SELINUX
- review all tools to check that the strategies are consistent
chage, chfn, chsh: same change needed as in passwd.
- probably need moving check_selinux_access to a separate file.
testsuite
- newgrp
- test with unknown user's GID
newusers
- add logging to SYSLOG & AUDIT
- use CREATE_HOME
- Add a -Z option (see useradd / usermod)
Document when/where option appeared, document whether an option is standard
or not.
Check all the expiry semantics
ALL:
- move base passwd/shadow/group/gshadow operation to module for allow write
different backend modules for db, NIS, LDAP and others. Default backend it
will be goot if will be chosen depending on /etc/nsswitch.conf and allow
override this by -r <repository> options (where the <repository> can be
file, db, nis nisplus, ldap .. like on /etc/nsswitch.conf in service column).
passwd have old piece of code with handling -r option and it will be good
finish this and propagate on other shadow tools for allow operate on other
user databases by well known tools.
- Protect against signals. Register do_cleanups in a signal handler.
- login.defs
- generate depending on configuration
- useradd:
- add handle create user mail spool in maildir format.
- Add support for -k in -D mode
- Add support for -K in -D mode
- Add option to create or not the mail spool (and set the default in -D
mode)
- Change -l to reset the entry if an entry was already there
- set the mask in mkdir?
- userdel:
- add backup option for the removal of user resources,
- user_busy: check that the user is not running any processes.
- missing "deleting group" FAILED
- home dir removed, but userdel may fail and may leave the user
=> warning needed
- usermod
- add an option equivalent to useradd's -l (only when uid is changed)
- the mode of new home directories should be set according to the
original mode. Does copy_tree does this?
- user renamed, order is not kept in /etc/group (see
47_usermod-l_no_shadow_file). This is a problem when the first user is
considered as the admin.
- see mail "user ID change" on April, 15
+ fix call to chown (combination of -m and -u/-g)
+ add tests
- passwd:
- check combination of options (e.g. -u/-l)
- when -u refuse to unlock because it would create an empty password, it
should not display "Password changed."
exit instead?
- newgrp: check the USE_PAM section.
- pwck
- Add check to move passwd passwords to shadow if there is a shadow
entry (with a password).
- Add check to move passwd passwords to shadow if there is a shadow
file.
- Support an alternative /etc/tcb directory as second parameter.
- add options -g / -G to specify alternative group / gshadow files
- su
- add a login.defs configuration parameter to add variables to keep in
the environment with "su -l" (TERM/TERMCOLOR/...)
- vipw
- set ACLs and XATTRs on the temporary file (and backups?)
- vipw + selinux -> use lib/selinux.c

1255
aclocal.m4 vendored

File diff suppressed because it is too large Load Diff

View File

@@ -4,12 +4,6 @@
authenticate the callers */
#undef ACCT_TOOLS_SETUID
/* Define to support lastlog. */
#undef ENABLE_LASTLOG
/* Define to manage session support with logind. */
#undef ENABLE_LOGIND
/* Define to 1 if translation of program messages to the user's native
language is requested. */
#undef ENABLE_NLS
@@ -60,10 +54,6 @@
*/
#undef HAVE_DCGETTEXT
/* Define to 1 if you have the declaration of `cygwin_conv_path', and to 0 if
you don't. */
#undef HAVE_DECL_CYGWIN_CONV_PATH
/* Define to 1 if you have the declaration of `PAM_DATA_SILENT', and to 0 if
you don't. */
#undef HAVE_DECL_PAM_DATA_SILENT
@@ -80,23 +70,26 @@
if you don't. */
#undef HAVE_DECL_PAM_NEW_AUTHTOK_REQD
/* Define if you have the GNU dld library. */
#undef HAVE_DLD
/* Define to 1 if you have the `dlerror' function. */
#undef HAVE_DLERROR
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define if you have the _dyld_func_lookup function. */
#undef HAVE_DYLD
/* Define to 1 if you have the <errno.h> header file. */
#undef HAVE_ERRNO_H
/* Define to 1 if you have the `explicit_bzero' function. */
#undef HAVE_EXPLICIT_BZERO
/* Defined to 1 if you have the declaration of 'fgetpwent_r' */
#undef HAVE_FGETPWENT_R
/* Define to 1 if you have the `fchmod' function. */
#undef HAVE_FCHMOD
/* Define to 1 if you have the `fchown' function. */
#undef HAVE_FCHOWN
/* Define to 1 if you have the <fcntl.h> header file. */
#undef HAVE_FCNTL_H
/* Define to 1 if you have the `fsync' function. */
#undef HAVE_FSYNC
/* Define to 1 if you have the `futimes' function. */
#undef HAVE_FUTIMES
@@ -104,6 +97,18 @@
/* Define to 1 if you have the `getentropy' function. */
#undef HAVE_GETENTROPY
/* Define to 1 if you have the `getgrgid_r' function. */
#undef HAVE_GETGRGID_R
/* Define to 1 if you have the `getgrnam_r' function. */
#undef HAVE_GETGRNAM_R
/* Define to 1 if you have the `getpwnam_r' function. */
#undef HAVE_GETPWNAM_R
/* Define to 1 if you have the `getpwuid_r' function. */
#undef HAVE_GETPWUID_R
/* Define to 1 if you have the `getrandom' function. */
#undef HAVE_GETRANDOM
@@ -119,6 +124,9 @@
/* Define to 1 if you have the `getusershell' function. */
#undef HAVE_GETUSERSHELL
/* Define to 1 if you have the `getutent' function. */
#undef HAVE_GETUTENT
/* Define to 1 if you have the <gshadow.h> header file. */
#undef HAVE_GSHADOW_H
@@ -134,17 +142,26 @@
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the `l64a' function. */
#undef HAVE_L64A
/* Define to 1 if you have the <lastlog.h> header file. */
#undef HAVE_LASTLOG_H
/* Define to 1 if you have the `lckpwdf' function. */
#undef HAVE_LCKPWDF
/* Define if you have the libdl library or equivalent. */
#undef HAVE_LIBDL
/* Defined if you have libcrack. */
#undef HAVE_LIBCRACK
/* Define if libdlloader will be built on this platform */
#undef HAVE_LIBDLLOADER
/* Defined if you have the ts&szs cracklib. */
#undef HAVE_LIBCRACK_HIST
/* Defined if it includes *Pw functions. */
#undef HAVE_LIBCRACK_PW
/* Define to 1 if you have the <limits.h> header file. */
#undef HAVE_LIMITS_H
/* Define to 1 if you have the <linux/btrfs_tree.h> header file. */
#undef HAVE_LINUX_BTRFS_TREE_H
@@ -155,15 +172,24 @@
/* Define if struct lastlog has ll_host */
#undef HAVE_LL_HOST
/* Define to 1 if you have the <locale.h> header file. */
#undef HAVE_LOCALE_H
/* Define to 1 if you have the `lutimes' function. */
#undef HAVE_LUTIMES
/* Define to 1 if you have the `memset_explicit' function. */
#undef HAVE_MEMSET_EXPLICIT
/* Define to 1 if you have the `memset_s' function. */
#undef HAVE_MEMSET_S
/* Define to 1 if you have the <minix/config.h> header file. */
#undef HAVE_MINIX_CONFIG_H
/* Define to 1 if you have the `mkdir' function. */
#undef HAVE_MKDIR
/* Define to 1 if you have the <netdb.h> header file. */
#undef HAVE_NETDB_H
/* Define to 1 if you have the <paths.h> header file. */
#undef HAVE_PATHS_H
@@ -176,15 +202,15 @@
/* Define to 1 if you have the `putspent' function. */
#undef HAVE_PUTSPENT
/* Define to 1 if you have the <readpassphrase.h> header file. */
#undef HAVE_READPASSPHRASE_H
/* Define to 1 if you have the `rename' function. */
#undef HAVE_RENAME
/* Define to 1 if you have the `rmdir' function. */
#undef HAVE_RMDIR
/* Define to 1 if you have the <rpc/key_prot.h> header file. */
#undef HAVE_RPC_KEY_PROT_H
/* Define to 1 if you have the `rpmatch' function. */
#undef HAVE_RPMATCH
/* Define to 1 if you have the <security/openpam.h> header file. */
#undef HAVE_SECURITY_OPENPAM_H
@@ -215,8 +241,11 @@
/* Have working shadow group support in libc */
#undef HAVE_SHADOWGRP
/* Define if you have the shl_load function. */
#undef HAVE_SHL_LOAD
/* Define to 1 if you have the `snprintf' function. */
#undef HAVE_SNPRINTF
/* Define to 1 if stdbool.h conforms to C99. */
#undef HAVE_STDBOOL_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
@@ -227,11 +256,14 @@
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the `stpecpy' function. */
#undef HAVE_STPECPY
/* Define to 1 if you have the `strcasecmp' function. */
#undef HAVE_STRCASECMP
/* Define to 1 if you have the `stpeprintf' function. */
#undef HAVE_STPEPRINTF
/* Define to 1 if you have the `strdup' function. */
#undef HAVE_STRDUP
/* Define to 1 if you have the `strerror' function. */
#undef HAVE_STRERROR
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
@@ -239,6 +271,21 @@
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the `strstr' function. */
#undef HAVE_STRSTR
/* Define to 1 if `st_atim' is a member of `struct stat'. */
#undef HAVE_STRUCT_STAT_ST_ATIM
/* Define to 1 if `st_atimensec' is a member of `struct stat'. */
#undef HAVE_STRUCT_STAT_ST_ATIMENSEC
/* Define to 1 if `st_mtim' is a member of `struct stat'. */
#undef HAVE_STRUCT_STAT_ST_MTIM
/* Define to 1 if `st_mtimensec' is a member of `struct stat'. */
#undef HAVE_STRUCT_STAT_ST_MTIMENSEC
/* Define to 1 if `ut_addr' is a member of `struct utmpx'. */
#undef HAVE_STRUCT_UTMPX_UT_ADDR
@@ -260,6 +307,42 @@
/* Define to 1 if `ut_xtime' is a member of `struct utmpx'. */
#undef HAVE_STRUCT_UTMPX_UT_XTIME
/* Define to 1 if `ut_addr' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_ADDR
/* Define to 1 if `ut_addr_v6' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_ADDR_V6
/* Define to 1 if `ut_host' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_HOST
/* Define to 1 if `ut_id' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_ID
/* Define to 1 if `ut_name' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_NAME
/* Define to 1 if `ut_syslen' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_SYSLEN
/* Define to 1 if `ut_time' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_TIME
/* Define to 1 if `ut_tv' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_TV
/* Define to 1 if `ut_type' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_TYPE
/* Define to 1 if `ut_user' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_USER
/* Define to 1 if `ut_xtime' is a member of `struct utmp'. */
#undef HAVE_STRUCT_UTMP_UT_XTIME
/* Define to 1 if you have the <syslog.h> header file. */
#undef HAVE_SYSLOG_H
/* Define to 1 if you have the <sys/capability.h> header file. */
#undef HAVE_SYS_CAPABILITY_H
@@ -269,24 +352,39 @@
/* Define to 1 if you have the <sys/random.h> header file. */
#undef HAVE_SYS_RANDOM_H
/* Define to 1 if you have the <sys/resource.h> header file. */
#undef HAVE_SYS_RESOURCE_H
/* Define to 1 if you have the <sys/statfs.h> header file. */
#undef HAVE_SYS_STATFS_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/time.h> header file. */
#undef HAVE_SYS_TIME_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* Define to 1 if you have the <tcb.h> header file. */
#undef HAVE_TCB_H
/* Define to 1 if you have the <termios.h> header file. */
#undef HAVE_TERMIOS_H
/* Define to 1 if you have the <termio.h> header file. */
#undef HAVE_TERMIO_H
/* Define to 1 if you have the <ulimit.h> header file. */
#undef HAVE_ULIMIT_H
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to 1 if you have the `updwtmp' function. */
#undef HAVE_UPDWTMP
/* Define to 1 if you have the `updwtmpx' function. */
#undef HAVE_UPDWTMPX
@@ -296,15 +394,18 @@
/* Define to 1 if `utime(file, NULL)' sets file's timestamp to the present. */
#undef HAVE_UTIME_NULL
/* Define to 1 if you have the <utmpx.h> header file. */
#undef HAVE_UTMPX_H
/* Define to 1 if you have the <utmp.h> header file. */
#undef HAVE_UTMP_H
/* Define to support vendor settings. */
#undef HAVE_VENDORDIR
/* Define to 1 if you have the <wchar.h> header file. */
#undef HAVE_WCHAR_H
/* Define to 1 if the system has the type `_Bool'. */
#undef HAVE__BOOL
/* Path for lastlog file. */
#undef LASTLOG_FILE
@@ -376,6 +477,9 @@
/* Define to support /etc/suauth su access control. */
#undef SU_ACCESS
/* Define to 1 if your <sys/time.h> declares `struct tm'. */
#undef TM_IN_SYS_TIME
/* Define to allow the bcrypt password encryption algorithm */
#undef USE_BCRYPT
@@ -391,6 +495,9 @@
/* Define to support flushing of sssd caches */
#undef USE_SSSD
/* Define to use syslog(). */
#undef USE_SYSLOG
/* Enable extensions on AIX 3, Interix. */
#ifndef _ALL_SOURCE
# undef _ALL_SOURCE
@@ -479,12 +586,12 @@
#endif
/* Define if utmpx should be used */
#undef USE_UTMPX
/* Define to allow the yescrypt password encryption algorithm */
#undef USE_YESCRYPT
/* Directory for distribution provided configuration files */
#undef VENDORDIR
/* Version number of package */
#undef VERSION
@@ -500,9 +607,6 @@
/* Build shadow with BtrFS support */
#undef WITH_BTRFS
/* Build shadow without libbsd support */
#undef WITH_LIBBSD
/* Build shadow with SELinux support */
#undef WITH_SELINUX

2522
configure vendored

File diff suppressed because it is too large Load Diff

View File

@@ -4,9 +4,9 @@ m4_define([libsubid_abi_major], 4)
m4_define([libsubid_abi_minor], 0)
m4_define([libsubid_abi_micro], 0)
m4_define([libsubid_abi], [libsubid_abi_major.libsubid_abi_minor.libsubid_abi_micro])
AC_INIT([shadow], [4.15.3], [pkg-shadow-devel@lists.alioth.debian.org], [],
AC_INIT([shadow], [4.13], [pkg-shadow-devel@lists.alioth.debian.org], [],
[https://github.com/shadow-maint/shadow])
AM_INIT_AUTOMAKE([1.11 foreign dist-xz subdir-objects tar-pax])
AM_INIT_AUTOMAKE([1.11 foreign dist-xz])
AC_CONFIG_MACRO_DIRS([m4])
AM_SILENT_RULES([yes])
AC_CONFIG_HEADERS([config.h])
@@ -32,30 +32,47 @@ AC_PROG_CC
AC_PROG_LN_S
AC_PROG_YACC
LT_INIT
LT_LIB_DLLOAD
dnl Checks for libraries.
dnl Checks for header files.
AC_CHECK_HEADERS(crypt.h utmp.h \
termio.h sgtty.h sys/ioctl.h paths.h \
sys/capability.h sys/random.h \
gshadow.h lastlog.h rpc/key_prot.h acl/libacl.h \
AC_HEADER_STDBOOL
AC_CHECK_HEADERS(crypt.h errno.h fcntl.h limits.h unistd.h sys/time.h utmp.h \
utmpx.h termios.h termio.h sgtty.h sys/ioctl.h syslog.h paths.h \
utime.h ulimit.h sys/capability.h sys/random.h sys/resource.h \
gshadow.h lastlog.h locale.h rpc/key_prot.h netdb.h acl/libacl.h \
attr/libattr.h attr/error_context.h)
dnl shadow now uses the libc's shadow implementation
AC_CHECK_HEADER([shadow.h],,[AC_MSG_ERROR([You need a libc with shadow.h])])
AC_CHECK_FUNCS(arc4random_buf futimes \
AC_CHECK_FUNCS(arc4random_buf l64a fchmod fchown fsync futimes \
getentropy getrandom getspnam getusershell \
initgroups lckpwdf lutimes \
setgroups updwtmpx innetgr \
getspnam_r \
rpmatch \
memset_explicit explicit_bzero stpecpy stpeprintf)
getutent initgroups lckpwdf lutimes \
setgroups updwtmp updwtmpx innetgr getpwnam_r \
getpwuid_r getgrnam_r getgrgid_r getspnam_r \
memset_s explicit_bzero)
AC_SYS_LARGEFILE
dnl Checks for typedefs, structures, and compiler characteristics.
AC_CHECK_MEMBERS([struct stat.st_atim])
AC_CHECK_MEMBERS([struct stat.st_atimensec])
AC_CHECK_MEMBERS([struct stat.st_mtim])
AC_CHECK_MEMBERS([struct stat.st_mtimensec])
AC_STRUCT_TM
AC_CHECK_MEMBERS([struct utmp.ut_type,
struct utmp.ut_id,
struct utmp.ut_name,
struct utmp.ut_user,
struct utmp.ut_host,
struct utmp.ut_syslen,
struct utmp.ut_addr,
struct utmp.ut_addr_v6,
struct utmp.ut_time,
struct utmp.ut_xtime,
struct utmp.ut_tv],,,[[#include <utmp.h>]])
AC_CHECK_MEMBERS([struct utmpx.ut_name,
struct utmpx.ut_host,
@@ -65,11 +82,29 @@ AC_CHECK_MEMBERS([struct utmpx.ut_name,
struct utmpx.ut_time,
struct utmpx.ut_xtime],,,[[#include <utmpx.h>]])
if test "$ac_cv_header_lastlog_h" = "yes"; then
AC_CACHE_CHECK(for ll_host in struct lastlog,
ac_cv_struct_lastlog_ll_host,
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <lastlog.h>],
[struct lastlog ll; char *cp = ll.ll_host;]
)],
[ac_cv_struct_lastlog_ll_host=yes],
[ac_cv_struct_lastlog_ll_host=no]
)
)
if test "$ac_cv_struct_lastlog_ll_host" = "yes"; then
AC_DEFINE(HAVE_LL_HOST, 1,
[Define if struct lastlog has ll_host])
fi
fi
dnl Checks for library functions.
AC_TYPE_GETGROUPS
AC_FUNC_UTIME_NULL
AC_REPLACE_FUNCS(putgrent putpwent putspent)
AC_REPLACE_FUNCS(mkdir putgrent putpwent putspent rename rmdir)
AC_REPLACE_FUNCS(sgetgrent sgetpwent sgetspent)
AC_REPLACE_FUNCS(snprintf strcasecmp strdup strerror strstr)
AC_CHECK_FUNC(setpgrp)
AC_CHECK_FUNC(secure_getenv, [AC_DEFINE(HAS_SECURE_GETENV,
@@ -81,10 +116,6 @@ if test "$ac_cv_header_shadow_h" = "yes"; then
ac_cv_libc_shadowgrp,
AC_RUN_IFELSE([AC_LANG_SOURCE([
#include <shadow.h>
#ifdef HAVE_GSHADOW_H
#include <gshadow.h>
#endif
int
main()
{
struct sgrp *sg = sgetsgent("test:x::");
@@ -160,7 +191,7 @@ AC_DEFINE_UNQUOTED(PASSWD_PROGRAM, "$shadow_cv_passwd_dir/passwd",
[Path to passwd program.])
dnl XXX - quick hack, should disappear before anyone notices :).
dnl XXX - I just read the above message :).
AC_DEFINE(USE_SYSLOG, 1, [Define to use syslog().])
if test "$ac_cv_func_ruserok" = "yes"; then
AC_DEFINE(RLOGIN, 1, [Define if login should support the -r flag for rlogind.])
AC_DEFINE(RUSEROK, 0, [Define to the ruserok() "success" return value (0 or 1).])
@@ -195,6 +226,17 @@ AC_ARG_ENABLE(account-tools-setuid,
[enable_acct_tools_setuid="no"]
)
AC_ARG_ENABLE(utmpx,
[AS_HELP_STRING([--enable-utmpx],
[enable loggin in utmpx / wtmpx @<:@default=no@:>@])],
[case "${enableval}" in
yes) enable_utmpx="yes" ;;
no) enable_utmpx="no" ;;
*) AC_MSG_ERROR(bad value ${enableval} for --enable-utmpx) ;;
esac],
[enable_utmpx="no"]
)
AC_ARG_ENABLE(subordinate-ids,
[AS_HELP_STRING([--enable-subordinate-ids],
[support subordinate ids @<:@default=yes@:>@])],
@@ -202,20 +244,6 @@ AC_ARG_ENABLE(subordinate-ids,
[enable_subids="maybe"]
)
AC_ARG_ENABLE(lastlog,
[AS_HELP_STRING([--enable-lastlog],
[enable lastlog @<:@default=no@:>@])],
[enable_lastlog="${enableval}"],
[enable_lastlog="no"]
)
AC_ARG_ENABLE(logind,
[AS_HELP_STRING([--enable-logind],
[enable logind @<:@default=yes@:>@])],
[enable_logind="${enableval}"],
[enable_logind="yes"]
)
AC_ARG_WITH(audit,
[AS_HELP_STRING([--with-audit], [use auditing support @<:@default=yes if found@:>@])],
[with_audit=$withval], [with_audit=maybe])
@@ -240,6 +268,9 @@ AC_ARG_WITH(skey,
AC_ARG_WITH(tcb,
[AS_HELP_STRING([--with-tcb], [use tcb support (incomplete) @<:@default=yes if found@:>@])],
[with_tcb=$withval], [with_tcb=maybe])
AC_ARG_WITH(libcrack,
[AS_HELP_STRING([--with-libcrack], [use libcrack @<:@default=no@:>@])],
[with_libcrack=$withval], [with_libcrack=no])
AC_ARG_WITH(sha-crypt,
[AS_HELP_STRING([--with-sha-crypt], [allow the SHA256 and SHA512 password encryption algorithms @<:@default=yes@:>@])],
[with_sha_crypt=$withval], [with_sha_crypt=yes])
@@ -261,9 +292,6 @@ AC_ARG_WITH(group-name-max-length,
AC_ARG_WITH(su,
[AS_HELP_STRING([--with-su], [build and install su program and man page @<:@default=yes@:>@])],
[with_su=$withval], [with_su=yes])
AC_ARG_WITH(libbsd,
[AS_HELP_STRING([--with-libbsd], [use libbsd support @<:@default=yes if found@:>@])],
[with_libbsd=$withval], [with_libbsd=yes])
if test "$with_group_name_max_length" = "no" ; then
with_group_name_max_length=0
@@ -274,7 +302,6 @@ AC_DEFINE_UNQUOTED(GROUP_NAME_MAX_LENGTH, $with_group_name_max_length, [max grou
AC_SUBST(GROUP_NAME_MAX_LENGTH)
GROUP_NAME_MAX_LENGTH="$with_group_name_max_length"
AM_CONDITIONAL(USE_SHA_CRYPT, test "x$with_sha_crypt" = "xyes")
if test "$with_sha_crypt" = "yes"; then
AC_DEFINE(USE_SHA_CRYPT, 1, [Define to allow the SHA256 and SHA512 password encryption algorithms])
@@ -309,16 +336,12 @@ dnl Check for some functions in libc first, only if not found check for
dnl other libraries. This should prevent linking libnsl if not really
dnl needed (Linux glibc, Irix), but still link it if needed (Solaris).
AC_SEARCH_LIBS(inet_ntoa, inet)
AC_SEARCH_LIBS(socket, socket)
AC_SEARCH_LIBS(gethostbyname, nsl)
PKG_CHECK_MODULES([CMOCKA], [cmocka], [have_cmocka="yes"],
[AC_MSG_WARN([libcmocka not found, cmocka tests will not be built])])
AM_CONDITIONAL([HAVE_CMOCKA], [test x$have_cmocka = xyes])
AC_CHECK_LIB([econf],[econf_readDirs],[LIBECONF="-leconf"],[LIBECONF=""])
if test -n "$LIBECONF"; then
AC_DEFINE_UNQUOTED([VENDORDIR], ["$enable_vendordir"],
[Directory for distribution provided configuration files])
ECONF_CPPFLAGS="-DUSE_ECONF=1"
AC_ARG_ENABLE([vendordir],
AS_HELP_STRING([--enable-vendordir=DIR], [Directory for distribution provided configuration files]),,[])
@@ -326,9 +349,6 @@ fi
AC_SUBST(ECONF_CPPFLAGS)
AC_SUBST(LIBECONF)
AC_SUBST([VENDORDIR], [$enable_vendordir])
if test "x$enable_vendordir" != x; then
AC_DEFINE(HAVE_VENDORDIR, 1, [Define to support vendor settings.])
fi
AM_CONDITIONAL([HAVE_VENDORDIR], [test "x$enable_vendordir" != x])
if test "$enable_shadowgrp" = "yes"; then
@@ -373,39 +393,6 @@ if test "$enable_subids" != "no"; then
fi
AM_CONDITIONAL(ENABLE_SUBIDS, test "x$enable_subids" != "xno")
if test "$enable_lastlog" = "yes" && test "$ac_cv_header_lastlog_h" = "yes"; then
AC_CACHE_CHECK(for ll_host in struct lastlog,
ac_cv_struct_lastlog_ll_host,
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([#include <lastlog.h>],
[struct lastlog ll; char *cp = ll.ll_host;]
)],
[ac_cv_struct_lastlog_ll_host=yes],
[ac_cv_struct_lastlog_ll_host=no]
)
)
if test "$ac_cv_struct_lastlog_ll_host" = "yes"; then
AC_DEFINE(HAVE_LL_HOST, 1,
[Define if struct lastlog has ll_host])
AC_DEFINE(ENABLE_LASTLOG, 1, [Define to support lastlog.])
enable_lastlog="yes"
else
AC_MSG_ERROR([Cannot enable support for lastlog on systems where the data structures aren't available])
enable_subids="no"
fi
fi
AM_CONDITIONAL(ENABLE_LASTLOG, test "x$enable_lastlog" != "xno")
AC_SUBST(LIBSYSTEMD)
if test "$enable_logind" = "yes"; then
AC_CHECK_LIB(systemd, sd_session_get_remote_host,
[enable_logind="yes"; [LIBSYSTEMD=-lsystemd];
AC_DEFINE(ENABLE_LOGIND, 1,
[Define to manage session support with logind.])],
[enable_logind="no"])
fi
AM_CONDITIONAL(ENABLE_LOGIND, test "x$enable_logind" != "xno")
AC_SUBST(LIBCRYPT)
AC_CHECK_LIB(crypt, crypt, [LIBCRYPT=-lcrypt],
[AC_MSG_ERROR([crypt() not found])])
@@ -414,28 +401,6 @@ AC_SUBST(LIYESCRYPT)
AC_CHECK_LIB(crypt, crypt, [LIYESCRYPT=-lcrypt],
[AC_MSG_ERROR([crypt() not found])])
AC_SUBST(LIBBSD)
if test "$with_libbsd" != "no"; then
AC_SEARCH_LIBS([readpassphrase], [bsd], [], [
AC_MSG_ERROR([readpassphrase() is missing, either from libc or libbsd])
])
AS_IF([test "$ac_cv_search_readpassphrase" = "-lbsd"], [
PKG_CHECK_MODULES([LIBBSD], [libbsd-overlay])
])
dnl Make sure either the libc or libbsd provide the header.
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS $LIBBSD_CFLAGS"
AC_CHECK_HEADERS([readpassphrase.h])
AS_IF([test "$ac_cv_header_readpassphrase_h" != "yes"], [
AC_MSG_ERROR([readpassphrase.h is missing])
])
CFLAGS="$save_CFLAGS"
AC_DEFINE(WITH_LIBBSD, 1, [Build shadow with libbsd support])
else
AC_DEFINE(WITH_LIBBSD, 0, [Build shadow without libbsd support])
fi
AM_CONDITIONAL(WITH_LIBBSD, test x$with_libbsd = xyes)
AC_SUBST(LIBACL)
if test "$with_acl" != "no"; then
AC_CHECK_HEADERS(acl/libacl.h attr/error_context.h, [acl_header="yes"], [acl_header="no"])
@@ -520,6 +485,17 @@ if test "$with_audit" != "no"; then
fi
fi
AC_SUBST(LIBCRACK)
if test "$with_libcrack" = "yes"; then
echo "checking cracklib flavour, don't be surprised by the results"
AC_CHECK_LIB(crack, FascistCheck,
[LIBCRACK=-lcrack AC_DEFINE(HAVE_LIBCRACK, 1, [Defined if you have libcrack.])])
AC_CHECK_LIB(crack, FascistHistory,
AC_DEFINE(HAVE_LIBCRACK_HIST, 1, [Defined if you have the ts&szs cracklib.]))
AC_CHECK_LIB(crack, FascistHistoryPw,
AC_DEFINE(HAVE_LIBCRACK_PW, 1, [Defined if it includes *Pw functions.]))
fi
if test "$with_btrfs" != "no"; then
AC_CHECK_HEADERS([sys/statfs.h linux/magic.h linux/btrfs_tree.h], \
[btrfs_headers="yes"], [btrfs_headers="no"])
@@ -706,7 +682,14 @@ if test "$with_skey" = "yes"; then
]])],[AC_DEFINE(SKEY_BSD_STYLE, 1, [Define to support newer BSD S/Key API])],[])
fi
AC_CHECK_FUNC(fgetpwent_r, [AC_DEFINE(HAVE_FGETPWENT_R, 1, [Defined to 1 if you have the declaration of 'fgetpwent_r'])])
if test "$enable_utmpx" = "yes"; then
if test "$ac_cv_header_utmpx_h" != "yes"; then
AC_MSG_ERROR([The utmpx.h header file is required for utmpx support.])
fi
AC_DEFINE(USE_UTMPX,
1,
[Define if utmpx should be used])
fi
AC_DEFINE_UNQUOTED(SHELL, ["$SHELL"], [The default shell.])
@@ -740,6 +723,7 @@ AC_CONFIG_FILES([
man/uk/Makefile
man/zh_CN/Makefile
man/zh_TW/Makefile
libmisc/Makefile
lib/Makefile
libsubid/Makefile
libsubid/subid.h
@@ -747,8 +731,7 @@ AC_CONFIG_FILES([
contrib/Makefile
etc/Makefile
etc/pam.d/Makefile
etc/shadow-maint/Makefile
tests/unit/Makefile
shadow.spec
])
AC_OUTPUT
@@ -756,6 +739,7 @@ echo
echo "shadow will be compiled with the following features:"
echo
echo " auditing support: $with_audit"
echo " CrackLib support: $with_libcrack"
echo " PAM support: $with_libpam"
if test "$with_libpam" = "yes"; then
echo " suid account management tools: $enable_acct_tools_setuid"
@@ -773,9 +757,6 @@ echo " yescrypt passwords encryption: $with_yescrypt"
echo " nscd support: $with_nscd"
echo " sssd support: $with_sssd"
echo " subordinate IDs support: $enable_subids"
echo " enable lastlog: $enable_lastlog"
echo " enable logind: $enable_logind"
echo " use file caps: $with_fcaps"
echo " install su: $with_su"
echo " enabled vendor dir: $enable_vendordir"
echo

View File

@@ -1,4 +1,6 @@
# This is a dummy Makefile.am to get automake work flawlessly,
# and also cooperate to make a distribution for `make dist'
EXTRA_DIST = README adduser.c adduser.sh adduser2.sh
EXTRA_DIST = README adduser.c adduser.sh adduser2.sh \
atudel groupmems.shar pwdauth.c shadow-anonftp.patch \
udbachk.tgz

View File

@@ -141,8 +141,6 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CMOCKA_CFLAGS = @CMOCKA_CFLAGS@
CMOCKA_LIBS = @CMOCKA_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
@@ -161,7 +159,6 @@ EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
FILECMD = @FILECMD@
GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
@@ -177,15 +174,9 @@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBACL = @LIBACL@
LIBADD_DL = @LIBADD_DL@
LIBADD_DLD_LINK = @LIBADD_DLD_LINK@
LIBADD_DLOPEN = @LIBADD_DLOPEN@
LIBADD_SHL_LOAD = @LIBADD_SHL_LOAD@
LIBATTR = @LIBATTR@
LIBAUDIT = @LIBAUDIT@
LIBBSD = @LIBBSD@
LIBBSD_CFLAGS = @LIBBSD_CFLAGS@
LIBBSD_LIBS = @LIBBSD_LIBS@
LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@
LIBECONF = @LIBECONF@
LIBICONV = @LIBICONV@
@@ -201,7 +192,6 @@ LIBSUBID_ABI = @LIBSUBID_ABI@
LIBSUBID_ABI_MAJOR = @LIBSUBID_ABI_MAJOR@
LIBSUBID_ABI_MICRO = @LIBSUBID_ABI_MICRO@
LIBSUBID_ABI_MINOR = @LIBSUBID_ABI_MINOR@
LIBSYSTEMD = @LIBSYSTEMD@
LIBTCB = @LIBTCB@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
@@ -210,8 +200,6 @@ LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
LT_DLLOADERS = @LT_DLLOADERS@
LT_DLPREOPEN = @LT_DLPREOPEN@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
@@ -234,9 +222,6 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
POSUB = @POSUB@
RANLIB = @RANLIB@
SED = @SED@
@@ -308,7 +293,10 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = README adduser.c adduser.sh adduser2.sh
EXTRA_DIST = README adduser.c adduser.sh adduser2.sh \
atudel groupmems.shar pwdauth.c shadow-anonftp.patch \
udbachk.tgz
all: all-am
.SUFFIXES:

View File

@@ -2,6 +2,9 @@ People keep sending various adduser programs and scripts... They are
all in this directory. I haven't tested them, use at your own risk.
Anyway, the best one I've seen so far is adduser-3.x from Debian.
atudel is a perl script to remove at jobs owned by the specified user
(atrm in at-2.9 for Linux can't do that).
udbachk.tgz is a passwd/group/shadow file integrity checker.
--marekm

View File

@@ -60,7 +60,7 @@
** Added in the password date field, which should always reflect the last
** date the password was changed, for expiry purposes. "passwd" always
** updates this field, so the adduser program should set it up right
** initially (or a user could keep their initial password forever ;)
** initially (or a user could keep thier initial password forever ;)
** The number is in days since Jan 1st, 1970.
**
** Have fun with it, and someone please make
@@ -489,7 +489,7 @@ safeget (char *buf, int maxlen)
while ((c = getc (stdin)) != EOF && (c != '\n') && (++i < maxlen))
{
bad = (!isalnum (c) && (c != '_') && (c != ' '));
*(buf++) = c;
*(buf++) = (char) c;
}
*buf = '\0';

465
contrib/groupmems.shar Normal file
View File

@@ -0,0 +1,465 @@
#!/bin/sh
# This is a shell archive (produced by GNU sharutils 4.2.1).
# To extract the files from this archive, save it to some FILE, remove
# everything before the `!/bin/sh' line above, then type `sh FILE'.
#
# Made on 2000-05-25 14:41 CDT by <gk4@gnu.austin.ibm.com>.
# Source directory was `/home/gk4/src/groupmem'.
#
# Existing files will *not* be overwritten unless `-c' is specified.
#
# This shar contains:
# length mode name
# ------ ---------- ------------------------------------------
# 1960 -rw-r--r-- Makefile
# 6348 -rw-r--r-- groupmems.c
# 3372 -rw------- groupmems.8
#
save_IFS="${IFS}"
IFS="${IFS}:"
gettext_dir=FAILED
locale_dir=FAILED
first_param="$1"
for dir in $PATH
do
if test "$gettext_dir" = FAILED && test -f $dir/gettext \
&& ($dir/gettext --version >/dev/null 2>&1)
then
set `$dir/gettext --version 2>&1`
if test "$3" = GNU
then
gettext_dir=$dir
fi
fi
if test "$locale_dir" = FAILED && test -f $dir/shar \
&& ($dir/shar --print-text-domain-dir >/dev/null 2>&1)
then
locale_dir=`$dir/shar --print-text-domain-dir`
fi
done
IFS="$save_IFS"
if test "$locale_dir" = FAILED || test "$gettext_dir" = FAILED
then
echo=echo
else
TEXTDOMAINDIR=$locale_dir
export TEXTDOMAINDIR
TEXTDOMAIN=sharutils
export TEXTDOMAIN
echo="$gettext_dir/gettext -s"
fi
if touch -am -t 200112312359.59 $$.touch >/dev/null 2>&1 && test ! -f 200112312359.59 -a -f $$.touch; then
shar_touch='touch -am -t $1$2$3$4$5$6.$7 "$8"'
elif touch -am 123123592001.59 $$.touch >/dev/null 2>&1 && test ! -f 123123592001.59 -a ! -f 123123592001.5 -a -f $$.touch; then
shar_touch='touch -am $3$4$5$6$1$2.$7 "$8"'
elif touch -am 1231235901 $$.touch >/dev/null 2>&1 && test ! -f 1231235901 -a -f $$.touch; then
shar_touch='touch -am $3$4$5$6$2 "$8"'
else
shar_touch=:
echo
$echo 'WARNING: not restoring timestamps. Consider getting and'
$echo "installing GNU \`touch', distributed in GNU File Utilities..."
echo
fi
rm -f 200112312359.59 123123592001.59 123123592001.5 1231235901 $$.touch
#
if mkdir _sh10937; then
$echo 'x -' 'creating lock directory'
else
$echo 'failed to create lock directory'
exit 1
fi
# ============= Makefile ==============
if test -f 'Makefile' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'Makefile' '(file already exists)'
else
$echo 'x -' extracting 'Makefile' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'Makefile' &&
/*
# SPDX-FileCopyrightText: 2000, International Business Machines, Inc.
# SPDX-FileCopyrightText: 2000, George Kraft IV, gk4@us.ibm.com
# SPDX-License-Identifier: BSD-3-Clause
#
X
all: groupmems
X
groupmems: groupmems.c
X cc -g -o groupmems groupmems.c -L. -lshadow
X
install: groupmems
X -/usr/sbin/groupadd groups
X install -o root -g groups -m 4770 groupmems /usr/bin
X
install.man: groupmems.8
X install -o root -g root -m 644 groupmems.8 /usr/man/man8
X
SHAR_EOF
(set 20 00 05 25 14 40 28 'Makefile'; eval "$shar_touch") &&
chmod 0644 'Makefile' ||
$echo 'restore of' 'Makefile' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'Makefile:' 'MD5 check failed'
b46cf7ef8d59149093c011ced3f3103c Makefile
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'Makefile'`"
test 1960 -eq "$shar_count" ||
$echo 'Makefile:' 'original size' '1960,' 'current size' "$shar_count!"
fi
fi
# ============= groupmems.c ==============
if test -f 'groupmems.c' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'groupmems.c' '(file already exists)'
else
$echo 'x -' extracting 'groupmems.c' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'groupmems.c' &&
/*
X * SPDX-FileCopyrightText: 2000, International Business Machines, Inc.
X * SPDX-FileCopyrightText: 2000, George Kraft IV, gk4@us.ibm.com
X * SPDX-License-Identifier: BSD-3-Clause
X */
/*
**
** Utility "groupmem" adds and deletes members from a user's group.
**
** Setup (as "root"):
**
** groupadd -r groups
** chmod 2770 groupmems
** chown root.groups groupmems
** groupmems -g groups -a gk4
**
** Usage (as "gk4"):
**
** groupmems -a olive
** groupmems -a jordan
** groupmems -a meghan
** groupmems -a morgan
** groupmems -a jake
** groupmems -l
** groupmems -d jake
** groupmems -l
*/
X
#include <stdio.h>
#include <pwd.h>
#include <grp.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include "defines.h"
#include "groupio.h"
X
/* Exit Status Values */
X
#define EXIT_SUCCESS 0 /* success */
#define EXIT_USAGE 1 /* invalid command syntax */
#define EXIT_GROUP_FILE 2 /* group file access problems */
#define EXIT_NOT_ROOT 3 /* not superuser */
#define EXIT_NOT_EROOT 4 /* not effective superuser */
#define EXIT_NOT_PRIMARY 5 /* not primary owner of group */
#define EXIT_NOT_MEMBER 6 /* member of group does not exist */
#define EXIT_MEMBER_EXISTS 7 /* member of group already exists */
X
#define TRUE 1
#define FALSE 0
X
/* Globals */
X
extern int optind;
extern char *optarg;
static char *adduser = NULL;
static char *deluser = NULL;
static char *thisgroup = NULL;
static int purge = FALSE;
static int list = FALSE;
static int exclusive = 0;
X
static int isroot(void) {
X return getuid() ? FALSE : TRUE;
}
X
static int isgroup(void) {
X gid_t g = getgid();
X struct group *grp = getgrgid(g);
X
X return TRUE;
}
X
static char *whoami(void) {
X struct group *grp = getgrgid(getgid());
X struct passwd *usr = getpwuid(getuid());
X
X if (0 == strcmp(usr->pw_name, grp->gr_name)) {
X return (char *)strdup(usr->pw_name);
X } else {
X return NULL;
X }
}
X
static void
addtogroup(char *user, char **members) {
X int i;
X char **pmembers;
X
X for (i = 0; NULL != members[i]; i++ ) {
X if (0 == strcmp(user, members[i])) {
X fprintf(stderr, "Member already exists\n");
X exit(EXIT_MEMBER_EXISTS);
X }
X }
X
X if (0 == i) {
X pmembers = (char **)calloc(2, sizeof(char *));
X } else {
X pmembers = (char **)realloc(members, sizeof(char *)*(i+1));
X }
X
X *members = *pmembers;
X members[i] = user;
X members[i+1] = NULL;
}
X
static void
rmfromgroup(char *user, char **members) {
X int i;
X int found = FALSE;
X
X i = 0;
X while (!found && NULL != members[i]) {
X if (0 == strcmp(user, members[i])) {
X found = TRUE;
X } else {
X i++;
X }
X }
X
X while (found && NULL != members[i]) {
X members[i] = members[++i];
X }
X
X if (!found) {
X fprintf(stderr, "Member to remove could not be found\n");
X exit(EXIT_NOT_MEMBER);
X }
}
X
static void
nomembers(char **members) {
X int i;
X
X for (i = 0; NULL != members[i]; i++ ) {
X members[i] = NULL;
X }
}
X
static void
members(char **members) {
X int i;
X
X for (i = 0; NULL != members[i]; i++ ) {
X printf("%s ", members[i]);
X
X if (NULL == members[i+1]) {
X printf("\n");
X } else {
X printf(" ");
X }
X }
}
X
static void usage(void) {
X fprintf(stderr, "usage: groupmems -a username | -d username | -D | -l [-g groupname]\n");
X exit(EXIT_USAGE);
}
X
main(int argc, char **argv) {
X int arg, i;
X char *name;
X struct group *grp;
X
X while ((arg = getopt(argc, argv, "a:d:g:Dl")) != EOF) {
X switch (arg) {
X case 'a':
X adduser = strdup(optarg);
X ++exclusive;
X break;
X case 'd':
X deluser = strdup(optarg);
X ++exclusive;
X break;
X case 'g':
X thisgroup = strdup(optarg);
X break;
X case 'D':
X purge = TRUE;
X ++exclusive;
X break;
X case 'l':
X list = TRUE;
X ++exclusive;
X break;
X default:
X usage();
X }
X }
X
X if (exclusive > 1 || optind < argc) {
X usage();
X }
X
X if (!isroot() && NULL != thisgroup) {
X fprintf(stderr, "Only root can add members to different groups\n");
X exit(EXIT_NOT_ROOT);
X } else if (isroot() && NULL != thisgroup) {
X name = thisgroup;
X } else if (!isgroup()) {
X fprintf(stderr, "Group access is required\n");
X exit(EXIT_NOT_EROOT);
X } else if (NULL == (name = whoami())) {
X fprintf(stderr, "Not primary owner of current group\n");
X exit(EXIT_NOT_PRIMARY);
X }
X
X if (!gr_lock()) {
X fprintf(stderr, "Unable to lock group file\n");
X exit(EXIT_GROUP_FILE);
X }
X
X if (!gr_open(O_RDWR)) {
X fprintf(stderr, "Unable to open group file\n");
X exit(EXIT_GROUP_FILE);
X }
X
X grp = (struct group *)gr_locate(name);
X
X if (NULL != adduser) {
X addtogroup(adduser, grp->gr_mem);
X gr_update(grp);
X } else if (NULL != deluser) {
X rmfromgroup(deluser, grp->gr_mem);
X gr_update(grp);
X } else if (purge) {
X nomembers(grp->gr_mem);
X gr_update(grp);
X } else if (list) {
X members(grp->gr_mem);
X }
X
X if (!gr_close()) {
X fprintf(stderr, "Cannot close group file\n");
X exit(EXIT_GROUP_FILE);
X }
X
X gr_unlock();
X
X exit(EXIT_SUCCESS);
}
X
/* EOF */
SHAR_EOF
(set 20 00 05 25 14 36 38 'groupmems.c'; eval "$shar_touch") &&
chmod 0644 'groupmems.c' ||
$echo 'restore of' 'groupmems.c' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'groupmems.c:' 'MD5 check failed'
f0dd68f8d762d89d24d3ce1f4141f981 groupmems.c
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'groupmems.c'`"
test 6348 -eq "$shar_count" ||
$echo 'groupmems.c:' 'original size' '6348,' 'current size' "$shar_count!"
fi
fi
# ============= groupmems.8 ==============
if test -f 'groupmems.8' && test "$first_param" != -c; then
$echo 'x -' SKIPPING 'groupmems.8' '(file already exists)'
else
$echo 'x -' extracting 'groupmems.8' '(text)'
sed 's/^X//' << 'SHAR_EOF' > 'groupmems.8' &&
X.\"
X.\" SPDX-FileCopyrightText: 2000, International Business Machines, Inc.
X.\" SPDX-FileCopyrightText: 2000, George Kraft IV, gk4@us.ibm.com
X.\" SPDX-License-Identifier: BSD-3-Clause
X.\"
X.\" $Id$
X.\"
X.TH GROUPMEMS 8
X.SH NAME
groupmems \- Administer members of a user's primary group
X.SH SYNOPSIS
X.B groupmems
\fB-a\fI user_name \fR |
\fB-d\fI user_name \fR |
\fB-l\fR |
\fB-D\fR |
[\fB-g\fI group_name \fR]
X.SH DESCRIPTION
The \fBgroupmems\fR utility allows a user to administer their own
group membership list without the requirement of superuser privileges.
The \fBgroupmems\fR utility is for systems that configure its users to
be in their own name sake primary group (i.e., guest / guest).
X.P
Only the superuser, as administrator, can use \fBgroupmems\fR to alter
the memberships of other groups.
X.IP "\fB-a \fIuser_name\fR"
Add a new user to the group membership list.
X.IP "\fB-d \fIuser_name\fR"
Delete a user from the group membership list.
X.IP "\fB-l\fR"
List the group membership list.
X.IP "\fB-D\fR"
Delete all users from the group membership list.
X.IP "\fB-g \fIgroup_name\fR"
The superuser can specify which group membership list to modify.
X.SH SETUP
The \fBgroupmems\fR executable should be in mode \fB2770\fR as user \fBroot\fR
and in group \fBgroups\fR. The system administrator can add users to
group groups to allow or disallow them using the \fBgroupmems\fR utility
to manager their own group membership list.
X.P
X $ groupadd -r groups
X.br
X $ chmod 2770 groupmems
X.br
X $ chown root.groups groupmems
X.br
X $ groupmems -g groups -a gk4
X.SH FILES
/etc/group
X.br
/etc/gshadow
X.SH SEE ALSO
X.BR chfn (1),
X.BR chsh (1),
X.BR useradd (8),
X.BR userdel (8),
X.BR usermod (8),
X.BR passwd (1),
X.BR groupadd (8),
X.BR groupdel (8)
X.SH AUTHOR
George Kraft IV (gk4@us.ibm.com)
X.\" EOF
SHAR_EOF
(set 20 00 05 25 14 38 23 'groupmems.8'; eval "$shar_touch") &&
chmod 0600 'groupmems.8' ||
$echo 'restore of' 'groupmems.8' 'failed'
if ( md5sum --help 2>&1 | grep 'sage: md5sum \[' ) >/dev/null 2>&1 \
&& ( md5sum --version 2>&1 | grep -v 'textutils 1.12' ) >/dev/null; then
md5sum -c << SHAR_EOF >/dev/null 2>&1 \
|| $echo 'groupmems.8:' 'MD5 check failed'
181e6cd3a3c9d3df320197fa2cde2b4a groupmems.8
SHAR_EOF
else
shar_count="`LC_ALL= LC_CTYPE= LANG= wc -c < 'groupmems.8'`"
test 3372 -eq "$shar_count" ||
$echo 'groupmems.8:' 'original size' '3372,' 'current size' "$shar_count!"
fi
fi
rm -fr _sh10937
exit 0

308
contrib/pwdauth.c Normal file
View File

@@ -0,0 +1,308 @@
/*
* pwdauth.c - program to verify a given username/password pair.
*
* Run it with username in argv[1] (may be omitted - default is the
* current user), and send it the password over a pipe on stdin.
* Exit status: 0 - correct password, 1 - wrong password, >1 - other
* errors. For use with shadow passwords, this program should be
* installed setuid root.
*
* This can be used, for example, by xlock - you don't have to install
* this large and complex (== possibly insecure) program setuid root,
* just modify it to run this simple program to do the authentication.
*
* Recent versions (xlockmore-3.9) are cleaner, and drop privileges as
* soon as possible after getting the user's encrypted password.
* Using this program probably doesn't make it more secure, and has one
* disadvantage: since we don't get the encrypted user's password at
* startup (but at the time the user is authenticated), it is not clear
* how we should handle errors (like getpwnam() returning NULL).
* - fail the authentication? Problem: no way to unlock (other than kill
* the process from somewhere else) if the NIS server stops responding.
* - succeed and unlock? Problem: it's too easy to unlock by unplugging
* the box from the network and waiting until NIS times out...
*
* This program is Copyright (C) 1996 Marek Michalkiewicz
* <marekm@i17linuxb.ists.pwr.wroc.pl>.
*
* It may be used and distributed freely for any purposes. There is no
* warranty - use at your own risk. I am not liable for any damages etc.
* If you improve it, please send me your changes.
*/
static char rcsid[] = "$Id$";
/*
* Define USE_SYSLOG to use syslog() to log successful and failed
* authentication. This should be safe even if your system has
* the infamous syslog buffer overrun security problem...
*/
#define USE_SYSLOG
/*
* Define HAVE_GETSPNAM to get shadow passwords using getspnam().
* Some systems don't have getspnam(), but getpwnam() returns
* encrypted passwords only if running as root.
*
* According to the xlock source (not tested, except Linux) -
* define: Linux, Solaris 2.x, SVR4, ...
* undef: HP-UX with Secured Passwords, FreeBSD, NetBSD, QNX.
* Known not supported (yet): Ultrix, OSF/1, SCO.
*/
#define HAVE_GETSPNAM
/*
* Define HAVE_PW_ENCRYPT to use pw_encrypt() instead of crypt().
* pw_encrypt() is like the standard crypt(), except that it may
* support better password hashing algorithms.
*
* Define if linking with libshadow.a from the shadow password
* suite (Linux, SunOS 4.x?).
*/
#undef HAVE_PW_ENCRYPT
/*
* Define HAVE_AUTH_METHODS to support the shadow suite specific
* extension: the encrypted password field contains a list of
* administrator defined authentication methods, separated by
* semicolons. This program only supports the standard password
* authentication method (a string that doesn't start with '@').
*/
#undef HAVE_AUTH_METHODS
/*
* FAIL_DELAY - number of seconds to sleep before exiting if the
* password was wrong, to slow down password guessing attempts.
*/
#define FAIL_DELAY 2
/* No user-serviceable parts below :-). */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <unistd.h>
#include <pwd.h>
#ifdef USE_SYSLOG
#include <syslog.h>
#ifndef LOG_AUTHPRIV
#define LOG_AUTHPRIV LOG_AUTH
#endif
#endif
#ifdef HAVE_GETSPNAM
#include <shadow.h>
#endif
#ifdef HAVE_PW_ENCRYPT
extern char *pw_encrypt();
#define crypt pw_encrypt
#endif
/*
* Read the password (one line) from fp. We don't turn off echo
* because we expect input from a pipe.
*/
static char *
get_line(fp)
FILE *fp;
{
static char buf[128];
char *cp;
int ch;
cp = buf;
while ((ch = getc(fp)) != EOF && ch != '\0' && ch != '\n') {
if (cp >= buf + sizeof buf - 1)
break;
*cp++ = ch;
}
*cp = '\0';
return buf;
}
/*
* Get the password file entry for the current user. If the name
* returned by getlogin() is correct (matches the current real uid),
* return the entry for that user. Otherwise, return the entry (if
* any) matching the current real uid. Return NULL on failure.
*/
static struct passwd *
get_my_pwent()
{
uid_t uid = getuid();
char *name = getlogin();
if (name && *name) {
struct passwd *pw = getpwnam(name);
if (pw && pw->pw_uid == uid)
return pw;
}
return getpwuid(uid);
}
/*
* Verify the password. The system-dependent shadow support is here.
*/
static int
password_auth_ok(pw, pass)
const struct passwd *pw;
const char *pass;
{
int result;
char *cp;
#ifdef HAVE_AUTH_METHODS
char *buf;
#endif
#ifdef HAVE_GETSPNAM
struct spwd *sp;
#endif
if (pw) {
#ifdef HAVE_GETSPNAM
sp = getspnam(pw->pw_name);
if (sp)
cp = sp->sp_pwdp;
else
#endif
cp = pw->pw_passwd;
} else
cp = "xx";
#ifdef HAVE_AUTH_METHODS
buf = strdup(cp); /* will be modified by strtok() */
if (!buf) {
fprintf(stderr, "Out of memory.\n");
exit(13);
}
cp = strtok(buf, ";");
while (cp && *cp == '@')
cp = strtok(NULL, ";");
/* fail if no password authentication for this user */
if (!cp)
cp = "xx";
#endif
if (*pass || *cp)
result = (strcmp(crypt(pass, cp), cp) == 0);
else
result = 1; /* user with no password */
#ifdef HAVE_AUTH_METHODS
free(buf);
#endif
return result;
}
/*
* Main program.
*/
int
main(argc, argv)
int argc;
char **argv;
{
struct passwd *pw;
char *pass, *name;
char myname[32];
#ifdef USE_SYSLOG
openlog("pwdauth", LOG_PID | LOG_CONS, LOG_AUTHPRIV);
#endif
pw = get_my_pwent();
if (!pw) {
#ifdef USE_SYSLOG
syslog(LOG_ERR, "can't get login name for uid %d.\n",
(int) getuid());
#endif
fprintf(stderr, "Who are you?\n");
exit(2);
}
strncpy(myname, pw->pw_name, sizeof myname - 1);
myname[sizeof myname - 1] = '\0';
name = myname;
if (argc > 1) {
name = argv[1];
pw = getpwnam(name);
}
pass = get_line(stdin);
if (password_auth_ok(pw, pass)) {
#ifdef USE_SYSLOG
syslog(pw->pw_uid ? LOG_INFO : LOG_NOTICE,
"user `%s' entered correct password for `%.32s'.\n",
myname, name);
#endif
exit(0);
}
#ifdef USE_SYSLOG
/* be careful not to overrun the syslog buffer */
syslog((!pw || pw->pw_uid) ? LOG_NOTICE : LOG_WARNING,
"user `%s' entered incorrect password for `%.32s'.\n",
myname, name);
#endif
#ifdef FAIL_DELAY
sleep(FAIL_DELAY);
#endif
fprintf(stderr, "Wrong password.\n");
exit(1);
}
#if 0
/*
* You can use code similar to the following to run this program.
* Return values: >=0 - program exit status (use the <sys/wait.h>
* macros to get the exit code, it is shifted left by 8 bits),
* -1 - check errno.
*/
int
verify_password(const char *username, const char *password)
{
int pipe_fd[2];
int pid, wpid, status;
if (pipe(pipe_fd))
return -1;
if ((pid = fork()) == 0) {
char *arg[3];
char *env[1];
/* child */
close(pipe_fd[1]);
if (pipe_fd[0] != 0) {
if (dup2(pipe_fd[0], 0) != 0)
_exit(127);
close(pipe_fd[0]);
}
arg[0] = "/usr/bin/pwdauth";
arg[1] = username;
arg[2] = NULL;
env[0] = NULL;
execve(arg[0], arg, env);
_exit(127);
} else if (pid == -1) {
/* error */
close(pipe_fd[0]);
close(pipe_fd[1]);
return -1;
}
/* parent */
close(pipe_fd[0]);
write(pipe_fd[1], password, strlen(password));
write(pipe_fd[1], "\n", 1);
close(pipe_fd[1]);
while ((wpid = wait(&status)) != pid) {
if (wpid == -1)
return -1;
}
return status;
}
#endif

View File

@@ -0,0 +1,147 @@
Hello Marek,
I have created a diffile against the 980403 release that adds
functionality to newusers for automatic handling of users with only
anonymous ftp login (using the guestgroup feature in ftpaccess, which
means that the users home directory looks like '/home/user/./'). It also
adds a commandline argument to specify an initial directory structure
for such users, with a tarball normally containing the bin,lib,etc
directories used in the chrooted environment.
I am using it to automatically create chunks of users with only ftp
access for a webserver.
I have tried to follow your coding standards and I believe it is bug
free but.. well, who knows. :) It's not much code however.
I hope you find it useful. Do what you like with it, feel free to ask if
anything is unclear.
Best rgds,
Calle Karlsson
ckn@kash.se
diff -uNr shadow-980403.orig/src/newusers.c shadow-980403/src/newusers.c
--- shadow-980403.orig/src/newusers.c Fri Jan 30 00:22:43 1998
+++ shadow-980403/src/newusers.c Fri Apr 17 16:55:33 1998
@@ -76,11 +76,35 @@
static void
usage(void)
{
- fprintf(stderr, "Usage: %s [ input ]\n", Prog);
+ fprintf (stderr, "Usage: %s [-p prototype tarfile] [ input ]\n", Prog);
+ fprintf (stderr, "The prototype tarfile is only used for users\n");
+ fprintf (stderr, "marked as anonymous ftp users. It must be a full pathname.\n");
exit(1);
}
/*
+ * createuserdir - create a directory and chmod it
+ */
+
+static int
+createuserdir (char * dir, int uid, int gid, int line)
+{
+ if (mkdir (dir, 0777 & ~getdef_num("UMASK", 077))) {
+ fprintf (stderr, "%s: line %d: mkdir %s failed\n",
+ Prog, line, dir);
+ return -1;
+ }
+
+ if (chown (dir, uid, gid)) {
+ fprintf (stderr, "%s: line %d: chown %s failed\n",
+ Prog, line, dir);
+ return -1;
+ }
+
+ return 0;
+}
+
+/*
* add_group - create a new group or add a user to an existing group
*/
@@ -328,6 +352,8 @@
main(int argc, char **argv)
{
char buf[BUFSIZ];
+ char anonproto[BUFSIZ];
+ int flag;
char *fields[8];
int nfields;
char *cp;
@@ -340,12 +366,23 @@
Prog = Basename(argv[0]);
- if (argc > 1 && argv[1][0] == '-')
- usage ();
+ * anonproto = '\0';
+
+ while ((flag = getopt (argc, argv, "p:h")) != EOF) {
+ switch (flag) {
+ case 'p':
+ STRFCPY(anonproto, optarg);
+ break;
+ case 'h':
+ default:
+ usage ();
+ break;
+ }
+ }
- if (argc == 2) {
- if (! freopen (argv[1], "r", stdin)) {
- snprintf(buf, sizeof buf, "%s: %s", Prog, argv[1]);
+ if (optind < argc) {
+ if (! freopen (argv[optind], "r", stdin)) {
+ snprintf(buf, sizeof buf, "%s: %s", Prog, argv[optind]);
perror (buf);
exit (1);
}
@@ -499,15 +536,36 @@
if (fields[6][0])
newpw.pw_shell = fields[6];
- if (newpw.pw_dir[0] && access(newpw.pw_dir, F_OK)) {
- if (mkdir (newpw.pw_dir,
- 0777 & ~getdef_num("UMASK", 077)))
- fprintf (stderr, "%s: line %d: mkdir failed\n",
- Prog, line);
- else if (chown (newpw.pw_dir,
- newpw.pw_uid, newpw.pw_gid))
- fprintf (stderr, "%s: line %d: chown failed\n",
- Prog, line);
+ if (newpw.pw_dir[0]) {
+ char * userdir = strdup (newpw.pw_dir);
+ char * anonpart;
+ int rc;
+
+ if ((anonpart = strstr (userdir, "/./"))) {
+ * anonpart = '\0';
+ anonpart += 2;
+ }
+
+ if (access(userdir, F_OK))
+ rc = createuserdir (userdir, newpw.pw_uid, newpw.pw_gid, line);
+ else
+ rc = 0;
+
+ if (rc == 0 && anonpart) {
+ if (* anonproto) {
+ char cmdbuf [BUFSIZ];
+ snprintf(cmdbuf, sizeof cmdbuf,
+ "cd %s; tar xf %s",
+ userdir, anonproto);
+ system (cmdbuf);
+ }
+ if (strlen (anonpart) > 1) {
+ strcat (userdir, anonpart);
+ if (access (userdir, F_OK))
+ createuserdir (userdir, newpw.pw_uid, newpw.pw_gid, line);
+ }
+ }
+ free (userdir);
}
/*

BIN
contrib/udbachk.tgz Normal file

Binary file not shown.

43
debian/HOME_MODE.xml vendored Normal file
View File

@@ -0,0 +1,43 @@
<!--
Copyright (c) 1991 - 1993, Julianne Frances Haugh
Copyright (c) 1991 - 1993, Chip Rosenthal
Copyright (c) 2007 - 2009, Nicolas François
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The name of the copyright holders or contributors may not be used to
endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS 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 THE COPYRIGHT
HOLDERS 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.
-->
<varlistentry>
<term><option>HOME_MODE</option> (number)</term>
<listitem>
<para>
The mode for new home directories. If not specified,
the <option>UMASK</option> is used to create the mode.
</para>
<para>
<command>useradd</command> and <command>newusers</command> use this
to set the mode of the home directory they create.
</para>
</listitem>
</varlistentry>

16
debian/Makefile vendored Normal file
View File

@@ -0,0 +1,16 @@
PKG=shadow
SITE=ftp://pkg-shadow.alioth.debian.org/pub/pkg-shadow/
deb:: check_cheese
include /usr/share/quilt/quilt.debbuild.mk
check_cheese:
@dpkg-parsechangelog | grep -q "\* The \".*\".* release\." || { \
echo ""; \
echo " ** **"; \
echo " ** Warning: not a cheesy release! **"; \
echo " ** **"; \
echo ""; \
exit 1; \
}

62
debian/NEWS vendored Normal file
View File

@@ -0,0 +1,62 @@
shadow (1:4.13+dfsg1-2) unstable; urgency=medium
The previous entry falsely states that PREVENT_NO_AUTH in /etc/login.defs
affects authentication. The historical default of letting all users with
empty password field in without authentication is still in effect.
-- Balint Reczey <balint@balintreczey.hu> Mon, 25 Sep 2023 17:04:09 +0200
shadow (1:4.11.1+dfsg1-0exp1) experimental; urgency=medium
Login now prevents an empty password field to be interpreted as
"no authentication required" for UID 0 (root account).
The historical default of letting all users with empty password field
in without authentication can be restored in /etc/login.defs setting
PREVENT_NO_AUTH to "no".
-- Balint Reczey <balint@balintreczey.hu> Sun, 07 Nov 2021 21:51:46 +0100
shadow (1:4.7-1) unstable; urgency=medium
* /etc/securetty is no longer shipped by this package and it is no longer
honored in login's PAM configuration by default. Please see #731656 for the
details.
-- Balint Reczey <rbalint@ubuntu.com> Thu, 20 Jun 2019 13:46:52 +0200
shadow (1:4.0.15-5) unstable; urgency=low
* commands passed in argument to su must use su's -c option and must quote
the command if it contains a space, as in:
su - root -c "ls -l /"
The following commands won't work anymore:
su - root -c ls -l /
su - root "ls -l /"
su - root ls -l /
-- Christian Perrier <bubulle@debian.org> Sat, 8 Apr 2006 20:11:38 +0200
shadow (1:4.0.14-1) unstable; urgency=low
* passwd does not support the -f, -s, and -g options anymore. You should use
the chfn, chsh and gpasswd utilities instead.
* login now distributes the nologin utility, which can be used as a shell
to politely refuse a login
-- Christian Perrier <bubulle@debian.org> Thu, 5 Jan 2006 08:47:44 +0100
shadow (1:4.0.12-1) unstable; urgency=low
CLOSE_SESSIONS and other variables are not used anymore in
/etc/login/defs.
As shadow utilities which use this file now warn about unknown
entries there, administrators should remove such unknown entries.
The supplied login.defs file does not include them anymore.
dpasswd is no more distributed by upstream. Login do not support
dialup password anymore. Re-introducing this functionality in
upstream is not trivial.
-- Christian Perrier <bubulle@debian.org> Thu, 25 Aug 2005 08:38:47 +0200

62
debian/README.debian vendored Normal file
View File

@@ -0,0 +1,62 @@
Read this file first for a brief overview of the new versions of login
and passwd.
---Shadow passwords
The command `shadowconfig on' will turn on shadow password support.
`shadowconfig off' will turn it back off. If you turn on shadow
password support, you'll gain the ability to set password ages and
expirations with chage(1).
NOTE: If you use the nscd package, you may have problems with a
slight delay in updating the password information. You may notice
this during upgrades of certain packages that try to add a system
user and then access the users information immediately afterwards.
To avoid this, it is suggested that you stop the nscd daemon before
upgrades, then restart it again.
---General configuration
Most of the configuration for the shadow utilities is in
/etc/login.defs. See login.defs(5). The defaults are quite
reasonable.
Also see the /etc/pam.d/* files for each program to configure the PAM
support. PAM documentation is available in several formats in the
libpam-doc package.
---MD5 Encryption
This is enabled now using the /etc/pam.d/* files. Examples are given.
---Adding users and groups
Though you may add users and groups with the SysV type commands,
useradd and groupadd, I recommend you add them with Debian adduser
version 3+. adduser gives you more configuration and conforms to the
Debian UID and GID allocation.
Editing user and group parameters can be done with usermod and
groupmod. Removing users and groups can be done with userdel and
groupdel.
--- Group administration
Local group allocation is much easier. With gpasswd(1) you can
designate users to administer groups. They can then securely add or
remove users from the group.
--- What to read next?
Read the manpages, the other files in this directory, and the Shadow
Password HOWTO (included in the doc-linux package). A large portion
of these files deals with getting shadow installed. You can, of
course, ignore those parts.
Also, the libpam-doc package will go a long way to allowing you to take
full advantage of the PAM authentication scheme.

8
debian/README.source vendored Normal file
View File

@@ -0,0 +1,8 @@
If you update the translation of upsteam files (thank you for that!) please
submit a pull request upstream instead of filing a bug in the Debian BTS
to get it reviewed and accepted faster.
A testsuite is also available. Instruction on how to run this testsuite
are available in tests/README
-- Balint Reczey <balint@balintreczey.hu>, Mon, 31 Jan 2022 14:07:11 +0100

19
debian/TODO vendored Normal file
View File

@@ -0,0 +1,19 @@
Things that should be done:
* Verify the files left in debian/tmp
+ e.g. /etc/default/adduser should be installed
* Check the build system: rebuilding the package twoce in the same tree
doubles the size of the diff.gz file
Other points (not related to the release of a syncronized shadow):
* compare the source with the usages and man pages
+ probably add a sentence to chsh/chfn's manpages about authentication
required for ordinary users
* do something (a tool) for the variables in login.defs
In Debian, some tools are not compiled with the PAM support, so upstream
getdef.c won't be OK.
It should be nice to see in each man page the set of variables used.
The Debian package can now compile (export DEB_BUILD_OPTIONS='nostrip debug')
with the debugging informations. This may be used to extract the set of
variables used in Debian/for each tools.
* verify all the patches around (I've found patches for at least RedHat,
OWL, LFS, Mandriva, Gentoo; are they already applied?)

25
debian/bugs-usertags vendored Normal file
View File

@@ -0,0 +1,25 @@
This described the usertags used by the team.
For usertags documentation, see
http://lists.debian.org/debian-devel-announce/2005/09/msg00002.html
All bugs tagged by team members must be tagged with
"user pkg-shadow-devel@lists.alioth.debian.org"
Tags list
---------
toclose: This bug has been announced to be closed in case no more news
or information is received from the bug submitter or someone
else until the delay specified in the limits_YYYYMMDD tag
limits-YYYYMMDD: combine it with "toclose". Specifies the date after which
bugs can be closed without other action in case no news
is received
manpages-replace A bug reported angainst a manpages-xx package to indicate
conflicting man pages. This tag can be used to tune the
Replaces fields.
su-transition: This bug is related to the su transition (#276419)

4108
debian/changelog vendored Normal file

File diff suppressed because it is too large Load Diff

88
debian/control vendored Normal file
View File

@@ -0,0 +1,88 @@
Source: shadow
Maintainer: Shadow package maintainers <pkg-shadow-devel@lists.alioth.debian.org>
Uploaders: Serge Hallyn <serge@hallyn.com>
Section: admin
Priority: required
Build-Depends: debhelper-compat (= 13),
gettext,
libcrypt-dev,
libpam0g-dev,
quilt,
xsltproc <!nodoc>,
docbook-xsl <!nodoc>,
docbook-xml <!nodoc>,
libxml2-utils <!nodoc>,
libselinux1-dev [linux-any],
libsemanage-dev [linux-any],
itstool <!nodoc>,
bison,
libaudit-dev [linux-any]
Standards-Version: 4.6.1
Vcs-Git: https://salsa.debian.org/debian/shadow.git -b master
Vcs-Browser: https://salsa.debian.org/debian/shadow
Homepage: https://github.com/shadow-maint/shadow
Rules-Requires-Root: binary-targets
Package: passwd
Architecture: any
Multi-Arch: foreign
Depends: ${shlibs:Depends},
${misc:Depends},
libpam-modules
Recommends: sensible-utils
Description: change and administer password and group data
This package includes passwd, chsh, chfn, and many other programs to
maintain password and group data.
.
Shadow passwords are supported. See /usr/share/doc/passwd/README.Debian
Package: login
Architecture: any
Multi-Arch: foreign
Essential: yes
Pre-Depends: ${shlibs:Depends},
${misc:Depends},
libpam-runtime,
libpam-modules
Breaks: hurd (<< 20140206~) [hurd-any]
Conflicts: python-4suite (<< 0.99cvs20060405-1)
Replaces: hurd (<< 20140206~) [hurd-any]
Description: system login tools
This package provides some required infrastructure for logins and for
changing effective user or group IDs, including:
* login, the program that invokes a user shell on a virtual terminal;
* nologin, a dummy shell for disabled user accounts;
Package: uidmap
Architecture: any
Multi-Arch: foreign
Priority: optional
Depends: ${shlibs:Depends},
${misc:Depends}
Description: programs to help use subuids
These programs help unprivileged users to create uid and gid mappings in
user namespaces.
Package: libsubid4
Section: libs
Priority: optional
Architecture: any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: subordinate id handling library -- shared library
The library provides an interface for querying, granding and ungranting
subordinate user and group ids.
Package: libsubid-dev
Section: libdevel
Priority: optional
Architecture: any
Multi-Arch: same
Depends: ${misc:Depends}, libsubid4 (= ${binary:Version})
Description: subordinate id handling library -- shared library
The library provides an interface for querying, granding and ungranting
subordinate user and group ids.
.
This package contains the C header files that are
needed for applications to use the libsubid4 library.

221
debian/copyright vendored Normal file
View File

@@ -0,0 +1,221 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: Shadow
Source: https://github.com/shadow-maint/shadow
Note: atudel is licensed under BSD-4-Clause which is not DFSG compatible
Files-Excluded: contrib/atudel
Files: *
Copyright: 1989-1994, Julianne Frances Haugh
2016-2022, Serge Hallyn <serge@hallyn.com>
License: BSD-3-clause
Files: man/po/da.po
man/po/de.po
man/tr/man1/su.1
po/da.po
po/de.po
po/es.po
po/eu.po
po/fi.po
po/gl.po
po/it.po
po/kk.po
po/nb.po
po/nl.po
po/nn.po
po/pl.po
po/pt_BR.po
po/ru.po
po/sq.po
po/sv.po
po/vi.po
Copyright: 1999-2015, Free Software Foundation, Inc
License: BSD-3-clause
Files: man/fi/man1/chfn.1
man/id/man1/*
man/ko/man1/chfn.1
man/ko/man1/chsh.1
man/tr/man1/chfn.1
man/zh_TW/man1/chfn.1
man/zh_TW/man1/chsh.1
Copyright: 1994, salvatore valente <svalente@athena.mit.edu>
License: GPL-1
Files: man/pt_BR/man8/*
man/zh_TW/man8/usermod.8
Copyright: 1991-1994, Julianne Frances Haugh
License: BSD-3-clause
Files: man/hu/man1/gpasswd.1
man/ja/man1/gpasswd.1
man/pt_BR/man1/*
Copyright: 1996, Rafal Maszkowski <rzm@pdi.net>
License: BSD-3-clause
Files: man/id/man1/login.1
man/ko/man1/login.1
man/tr/man1/login.1
Copyright: 1993, Rickard E. Faith <faith@cs.unc.edu>
License: BSD-3-clause
Files: man/ja/man1/groups.1
man/ja/man5/limits.5
man/ja/man8/vipw.8
Copyright: 2001, Maki KURODA
License: BSD-3-clause
Files: man/pt_BR/man5/passwd.5
man/tr/man5/passwd.5
Copyright: 1993, Michael Haardt <michael@moria.de>
License: GPL-2+
Files: man/ja/man1/chage.1
man/ja/man5/suauth.5
Copyright: 1997, Kazuyoshi Furutaka
License: BSD-3-clause
Files: man/po/fr.po
po/fr.po
Copyright: 2011-2013, Debian French l10n team <debian-l10n-french@lists.debian.org>
License: BSD-3-clause
Files: man/zh_TW/man5/*
Copyright: 1993, Michael Haardt <michael@moria.de>
1993, Scorpio, www.linuxforum.net
License: GPL-2+
Files: contrib/udbachk.tgz
Copyright: 1999, Sami Kerola and Janne Riihijärvi
License: GPL-2+
Files: man/hu/man5/*
Copyright: 1993, Michael Haardt <u31b3hs@pool.informatik.rwth-aachen.de>
License: GPL-2+
Files: contrib/adduser2.sh
Copyright: 1996, Petri Mattila, Prihateam Networks <petri@prihateam.fi>
License: GPL-2+
Files: contrib/pwdauth.c
Copyright: 1996, Marek Michalkiewicz
License: BSD-3-clause
Files: lib/subordinateio.h
Copyright: 2012, Eric W. Biederman
License: BSD-3-clause
Files: libmisc/date_to_str.c
Copyright: 2021, Alejandro Colomar <alx.manpages@gmail.com>
License: BSD-3-clause
Files: man/hu/man1/su.1
Copyright: 1999, Ragnar Hojland Espinosa <ragnar@macula.net>
License: BSD-3-clause
Files: man/ja/man1/id.1
Copyright: 2000, ISHIKAWA Keisuke
License: BSD-3-clause
Files: man/ja/man8/pwconv.8
Copyright: 2001, Yuichi SATO
License: BSD-3-clause
Files: src/login_nopam.c
Copyright: 1995, Wietse Venema
License: BSD-3-clause
Files: src/su.c
Copyright: 1989 - 1994, Julianne Frances Haugh
1996 - 2000, Marek Michałkiewicz
2000 - 2006, Tomasz Kłoczko
2007 - 2013, Nicolas François
License: GPL-2+
Files: src/vipw.c
Copyright: 1997, Guy Maor <maor@ece.utexas.edu>
1999 - 2000, Marek Michałkiewicz
2002 - 2006, Tomasz Kłoczko
2007 - 2013, Nicolas François
License: GPL-2+
Files: libmisc/getdate.y
Copyright: Steven M. Bellovin <smb@research.att.com>
License: public-domain
Originally written by Steven M. Bellovin <smb@research.att.com> while
at the University of North Carolina at Chapel Hill. Later tweaked by
a couple of people on Usenet. Completely overhauled by Rich $alz
<rsalz@bbn.com> and Jim Berets <jberets@bbn.com> in August, 1990;
.
This code is in the public domain and has no copyright.
Files: man/ko/man5/*
Copyright: 2000, ASPLINUX <man@asp-linux.co.kr>
License: GPL-2+
Files: debian/*
Copyright: 1999-2001, Ben Collins <bcollins@debian.org>
2001-2004 Karl Ramm <kcr@debian.org>
2004-2014 Christian Perrier <bubulle@debian.org>
2006-2012 Nicolas Francois (Nekral) <nicolas.francois@centraliens.net>
2017-2022 Balint Reczey <balint@balintreczey.hu>
License: BSD-3-clause
Files: debian/HOME_MODE.xml
Copyright: 1991-1993, Chip Rosenthal
1991-1993, Julianne Frances Haugh
2007-2009, Nicolas François
License: BSD-3-clause
Files: debian/patches/401_cppw_src.dpatch
Copyright: 1997, Guy Maor <maor@ece.utexas.edu>
1999, Stephen Frost <sfrost@snowman.net>
License: GPL-2+
Files: debian/passwd.expire.cron
Copyright: 1999, Ben Collins <bcollins@debian.org>
License: BSD-3-clause
License: BSD-3-clause
All rights reserved.
.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the University nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 THE REGENTS 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.
License: GPL-1
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 1
.
On Debian systems, the complete text of version 1 of the GNU General
Public License can be found in '/usr/share/common-licenses/GPL-1'.
License: GPL-2+
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 dated June, 1991, or (at
your option) any later version.
.
On Debian systems, the complete text of version 2 of the GNU General
Public License can be found in '/usr/share/common-licenses/GPL-2'.

1
debian/cpgr.8 vendored Normal file
View File

@@ -0,0 +1 @@
.so man8/cppw.8

27
debian/cppw.8 vendored Normal file
View File

@@ -0,0 +1,27 @@
.TH CPPW 8 "7 Apr 2005"
.SH NAME
cppw, cpgr \- copy with locking the given file to the password or group file
.SH SYNOPSIS
\fBcppw\fR [\fB\-h\fR] [\fB\-s\fR] password_file
.br
\fBcpgr\fR [\fB\-h\fR] [\fB\-s\fR] group_file
.SH DESCRIPTION
.BR cppw " and " cpgr
will copy, with locking, the given file to
.IR /etc/passwd " and " /etc/group ", respectively."
With the \fB\-s\fR flag, they will copy the shadow versions of those files,
.IR /etc/shadow " and " /etc/gshadow ", respectively."
With the \fB\-h\fR flag, the commands display a short help message and exit
silently.
.SH "SEE ALSO"
.BR vipw (8),
.BR vigr (8),
.BR group (5),
.BR passwd (5),
.BR shadow (5),
.BR gshadow (5)
.SH AUTHOR
\fBcppw\fR and \fBcpgr\fR were written by Stephen Frost, based on
\fBvipw\fR and \fBvigr\fR written by Guy Maor.

37
debian/default/useradd vendored Normal file
View File

@@ -0,0 +1,37 @@
# Default values for useradd(8)
#
# The SHELL variable specifies the default login shell on your
# system.
# Similar to DSHELL in adduser. However, we use "sh" here because
# useradd is a low level utility and should be as general
# as possible
SHELL=/bin/sh
#
# The default group for users
# 100=users on Debian systems
# Same as USERS_GID in adduser
# This argument is used when the -n flag is specified.
# The default behavior (when -n and -g are not specified) is to create a
# primary user group with the same name as the user being added to the
# system.
# GROUP=100
#
# The default home directory. Same as DHOME for adduser
# HOME=/home
#
# The number of days after a password expires until the account
# is permanently disabled
# INACTIVE=-1
#
# The default expire date
# EXPIRE=
#
# The SKEL variable specifies the directory containing "skeletal" user
# files; in other words, files such as a sample .profile that will be
# copied to the new user's home directory when it is created.
# SKEL=/etc/skel
#
# Defines whether the mail spool should be created while
# creating the account
# CREATE_MAIL_SPOOL=no

94
debian/dependencies vendored Normal file
View File

@@ -0,0 +1,94 @@
Build-Depends:
==============
* autoconf
* automake1.9
works with 1.7 or 1.9 (at least)
* libtool
* gettext
POT, PO, GMO regenerated?
* libpam0g-dev
OK
* debhelper (>= 4.1.16)
* po-debconf
OK
* quilt
patch system
* dpkg-dev (>= 1.13.5)
* xsltproc
used to generate the manpages
* docbook-xsl
needed for /usr/share/xml/docbook/stylesheet/nwalsh/manpages/docbook.xsl
* docbook-xml
manpages/docbook.xsl includes html/docbook.xsl
(But it is not strictly needed. The generated manpages are identical.
Without it, a warning is generated.)
Needed by JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN], [DocBook XML DTD V4.1.2], [], enable_man=no)
* libxml2-utils
needed by the JH_CHECK_XML_CATALOG macros
* cdbs
used in debian/rules
* libselinux1-dev [!hurd-i386 !kfreebsd-i386 !kfreebsd-amd64]
* gnome-doc-utils (>= 0.4.3-1)
xml2po, 0.4.3-1 needed for the -l switch.
passwd Depends:
===============
* ${shlibs:Depends}
OK
* ${loginpam}
- hurd
login
libpam-modules (>= 0.72-5)
- other archs
+ login (>= 970502-1)
login is needed because some passwd utils need /etc/login.defs
login is Essential, so this is just to enforce the version
+ libpam-modules (>= 0.72-5)
* debianutils (>= 2.15.2)
After 1:4.0.12-6, {add,remove}-shell are distributed in debianutils (2.15)
/etc/shell was forgotten and introduced in debianutils in 2.15.2
passwd Conflicts:
=================
passwd Replaces:
================
Some of the passwd man pages are also distributed in some manpages* packages.
Look at the debian/02/run test to optimize these dependencies.
NOTE: Not all maintainers have been notified.
* manpages-de (<< 0.4-9), manpages-fi (<< 0.2-4), manpages-fr (<<1.64.0-1), manpages-hu (<< 20010119-5), manpages-it (<< 0.3.4-3), manpages-ja (<< 0.5.0.0.20050915-1), manpages-ko (<< 20050219-2), manpages-es (<< 1.55-4), manpages-es-extra (<< 0.8a-15), manpages-ru (<< 0.98-3)
All those packages have been updated during sarge->etch. So these Replaces
should be removed after lenny release
* manpages-tr, manpages-zh
Those packages are still in etch, so the Replaces should be kept even
after lenny release
login Pre-Depends:
==================
* ${shlibs:Depends}
* libpam-runtime (>= 0.76-14)
sarge contained 0.76-22
Why Pre-Depends? (because it's an essential package?)
login Depends:
==============
* libpam-modules (>= 0.72-5)
libpam-modules is needed.
potato contained 0.72-9
login Conflicts:
================
login Replaces:
===============
* Some of the login man pages are also distributed in some manpages* packages.
Look at the debian/02/run test to optimize these dependencies.
NOTE: Not all maintainers have been notified.
- manpages-fi, manpages-fr (<<1.64.0-1), manpages-hu, manpages-it, manpages-ko, manpages-ja (<< 0.5.0.0.20050915-1), manpages-de (<< 0.4-10), manpages-es-extra (<<0.8a-15)
Those are packages that have been updated during sarge->etch. These
Replaces should be removed after lenny
- manpages-tr, manpages-zh
Those packages are still in etch, so the Replaces should be kept even
after lenny release

7
debian/gitlab-ci.yml vendored Normal file
View File

@@ -0,0 +1,7 @@
variables:
RELEASE: 'unstable'
# workaround for https://salsa.debian.org/salsa-ci-team/pipeline/-/issues/259
SALSA_CI_REPROTEST_ARGS: --vary=domain_host.use_sudo=1
include:
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml

3
debian/libsubid-dev.install vendored Normal file
View File

@@ -0,0 +1,3 @@
usr/include/*
usr/lib/*/libsubid.a
usr/lib/*/libsubid.so

1
debian/libsubid4.install vendored Normal file
View File

@@ -0,0 +1 @@
usr/lib/*/libsubid.so.*

10
debian/libsubid4.symbols vendored Normal file
View File

@@ -0,0 +1,10 @@
libsubid.so.4 libsubid4 #MINVER#
subid_get_gid_owners@Base 1:4.11.1
subid_get_gid_ranges@Base 1:4.11.1
subid_get_uid_owners@Base 1:4.11.1
subid_get_uid_ranges@Base 1:4.11.1
subid_grant_gid_range@Base 1:4.11.1
subid_grant_uid_range@Base 1:4.11.1
subid_init@Base 1:4.11.1
subid_ungrant_gid_range@Base 1:4.11.1
subid_ungrant_uid_range@Base 1:4.11.1

394
debian/login.defs vendored Normal file
View File

@@ -0,0 +1,394 @@
#
# /etc/login.defs - Configuration control definitions for the login package.
#
# Three items must be defined: MAIL_DIR, ENV_SUPATH, and ENV_PATH.
# If unspecified, some arbitrary (and possibly incorrect) value will
# be assumed. All other items are optional - if not specified then
# the described action or option will be inhibited.
#
# Comment lines (lines beginning with "#") and blank lines are ignored.
#
# Modified for Linux. --marekm
# REQUIRED for useradd/userdel/usermod
# Directory where mailboxes reside, _or_ name of file, relative to the
# home directory. If you _do_ define MAIL_DIR and MAIL_FILE,
# MAIL_DIR takes precedence.
#
# Essentially:
# - MAIL_DIR defines the location of users mail spool files
# (for mbox use) by appending the username to MAIL_DIR as defined
# below.
# - MAIL_FILE defines the location of the users mail spool files as the
# fully-qualified filename obtained by prepending the user home
# directory before $MAIL_FILE
#
# NOTE: This is no more used for setting up users MAIL environment variable
# which is, starting from shadow 4.0.12-1 in Debian, entirely the
# job of the pam_mail PAM modules
# See default PAM configuration files provided for
# login, su, etc.
#
# This is a temporary situation: setting these variables will soon
# move to /etc/default/useradd and the variables will then be
# no more supported
MAIL_DIR /var/mail
#MAIL_FILE .mail
#
# Enable logging and display of /var/log/faillog login failure info.
# This option conflicts with the pam_tally PAM module.
#
FAILLOG_ENAB yes
#
# Enable display of unknown usernames when login failures are recorded.
#
# WARNING: Unknown usernames may become world readable.
# See #290803 and #298773 for details about how this could become a security
# concern
LOG_UNKFAIL_ENAB no
#
# Enable logging of successful logins
#
LOG_OK_LOGINS no
#
# Enable "syslog" logging of su activity - in addition to sulog file logging.
# SYSLOG_SG_ENAB does the same for newgrp and sg.
#
SYSLOG_SU_ENAB yes
SYSLOG_SG_ENAB yes
#
# If defined, all su activity is logged to this file.
#
#SULOG_FILE /var/log/sulog
#
# If defined, file which maps tty line to TERM environment parameter.
# Each line of the file is in a format something like "vt100 tty01".
#
#TTYTYPE_FILE /etc/ttytype
#
# If defined, login failures will be logged here in a utmp format
# last, when invoked as lastb, will read /var/log/btmp, so...
#
FTMP_FILE /var/log/btmp
#
# If defined, the command name to display when running "su -". For
# example, if this is defined as "su" then a "ps" will display the
# command is "-su". If not defined, then "ps" would display the
# name of the shell actually being run, e.g. something like "-sh".
#
SU_NAME su
#
# If defined, file which inhibits all the usual chatter during the login
# sequence. If a full pathname, then hushed mode will be enabled if the
# user's name or shell are found in the file. If not a full pathname, then
# hushed mode will be enabled if the file exists in the user's home directory.
#
HUSHLOGIN_FILE .hushlogin
#HUSHLOGIN_FILE /etc/hushlogins
#
# *REQUIRED* The default PATH settings, for superuser and normal users.
#
# (they are minimal, add the rest in the shell startup files)
ENV_SUPATH PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ENV_PATH PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
#
# Terminal permissions
#
# TTYGROUP Login tty will be assigned this group ownership.
# TTYPERM Login tty will be set to this permission.
#
# If you have a "write" program which is "setgid" to a special group
# which owns the terminals, define TTYGROUP to the group number and
# TTYPERM to 0620. Otherwise leave TTYGROUP commented out and assign
# TTYPERM to either 622 or 600.
#
# In Debian /usr/bin/bsd-write or similar programs are setgid tty
# However, the default and recommended value for TTYPERM is still 0600
# to not allow anyone to write to anyone else console or terminal
# Users can still allow other people to write them by issuing
# the "mesg y" command.
TTYGROUP tty
TTYPERM 0600
#
# Login configuration initializations:
#
# ERASECHAR Terminal ERASE character ('\010' = backspace).
# KILLCHAR Terminal KILL character ('\025' = CTRL/U).
# UMASK Default "umask" value.
#
# The ERASECHAR and KILLCHAR are used only on System V machines.
#
# UMASK is the default umask value for pam_umask and is used by
# useradd and newusers to set the mode of the new home directories.
# 022 is the "historical" value in Debian for UMASK
# 027, or even 077, could be considered better for privacy
# There is no One True Answer here : each sysadmin must make up his/her
# mind.
#
# If USERGROUPS_ENAB is set to "yes", that will modify this UMASK default value
# for private user groups, i. e. the uid is the same as gid, and username is
# the same as the primary group name: for these, the user permissions will be
# used as group permissions, e. g. 022 will become 002.
#
# Prefix these values with "0" to get octal, "0x" to get hexadecimal.
#
ERASECHAR 0177
KILLCHAR 025
UMASK 022
# HOME_MODE is used by useradd(8) and newusers(8) to set the mode for new
# home directories.
# If HOME_MODE is not set, the value of UMASK is used to create the mode.
#HOME_MODE 0700
#
# Password aging controls:
#
# PASS_MAX_DAYS Maximum number of days a password may be used.
# PASS_MIN_DAYS Minimum number of days allowed between password changes.
# PASS_WARN_AGE Number of days warning given before a password expires.
#
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_WARN_AGE 7
#
# Min/max values for automatic uid selection in useradd
#
UID_MIN 1000
UID_MAX 60000
# System accounts
#SYS_UID_MIN 100
#SYS_UID_MAX 999
# Extra per user uids
SUB_UID_MIN 100000
SUB_UID_MAX 600100000
SUB_UID_COUNT 65536
#
# Min/max values for automatic gid selection in groupadd
#
GID_MIN 1000
GID_MAX 60000
# System accounts
#SYS_GID_MIN 100
#SYS_GID_MAX 999
# Extra per user group ids
SUB_GID_MIN 100000
SUB_GID_MAX 600100000
SUB_GID_COUNT 65536
#
# Max number of login retries if password is bad. This will most likely be
# overriden by PAM, since the default pam_unix module has it's own built
# in of 3 retries. However, this is a safe fallback in case you are using
# an authentication module that does not enforce PAM_MAXTRIES.
#
LOGIN_RETRIES 5
#
# Max time in seconds for login
#
LOGIN_TIMEOUT 60
#
# Which fields may be changed by regular users using chfn - use
# any combination of letters "frwh" (full name, room number, work
# phone, home phone). If not defined, no changes are allowed.
# For backward compatibility, "yes" = "rwh" and "no" = "frwh".
#
CHFN_RESTRICT rwh
#
# Should login be allowed if we can't cd to the home directory?
# Default is no.
#
DEFAULT_HOME yes
#
# If defined, this command is run when removing a user.
# It should remove any at/cron/print jobs etc. owned by
# the user to be removed (passed as the first argument).
#
#USERDEL_CMD /usr/sbin/userdel_local
#
# If set to yes, userdel will remove the user's group if it contains no
# more members, and useradd will create by default a group with the name
# of the user.
#
# Other former uses of this variable such as setting the umask when
# user==primary group are not used in PAM environments, such as Debian
#
USERGROUPS_ENAB yes
#
# Instead of the real user shell, the program specified by this parameter
# will be launched, although its visible name (argv[0]) will be the shell's.
# The program may do whatever it wants (logging, additional authentification,
# banner, ...) before running the actual shell.
#
# FAKE_SHELL /bin/fakeshell
#
# If defined, either full pathname of a file containing device names or
# a ":" delimited list of device names. Root logins will be allowed only
# upon these devices.
#
# This variable is used by login and su.
#
#CONSOLE /etc/consoles
#CONSOLE console:tty01:tty02:tty03:tty04
#
# List of groups to add to the user's supplementary group set
# when logging in on the console (as determined by the CONSOLE
# setting). Default is none.
#
# Use with caution - it is possible for users to gain permanent
# access to these groups, even when not logged in on the console.
# How to do it is left as an exercise for the reader...
#
# This variable is used by login and su.
#
#CONSOLE_GROUPS floppy:audio:cdrom
#
# If set to "yes", new passwords will be encrypted using the MD5-based
# algorithm compatible with the one used by recent releases of FreeBSD.
# It supports passwords of unlimited length and longer salt strings.
# Set to "no" if you need to copy encrypted passwords to other systems
# which don't understand the new algorithm. Default is "no".
#
# This variable is deprecated. You should use ENCRYPT_METHOD.
#
#MD5_CRYPT_ENAB no
#
# If set to MD5, MD5-based algorithm will be used for encrypting password
# If set to SHA256, SHA256-based algorithm will be used for encrypting password
# If set to SHA512, SHA512-based algorithm will be used for encrypting password
# If set to BCRYPT, BCRYPT-based algorithm will be used for encrypting password
# If set to YESCRYPT, YESCRYPT-based algorithm will be used for encrypting password
# If set to DES, DES-based algorithm will be used for encrypting password (default)
# MD5 and DES should not be used for new hashes, see crypt(5) for recommendations.
# Overrides the MD5_CRYPT_ENAB option
#
# Note: It is recommended to use a value consistent with
# the PAM modules configuration.
#
ENCRYPT_METHOD SHA512
#
# Only works if ENCRYPT_METHOD is set to SHA256 or SHA512.
#
# Define the number of SHA rounds.
# With a lot of rounds, it is more difficult to brute-force the password.
# However, more CPU resources will be needed to authenticate users if
# this value is increased.
#
# If not specified, the libc will choose the default number of rounds (5000),
# which is orders of magnitude too low for modern hardware.
# The values must be within the 1000-999999999 range.
# If only one of the MIN or MAX values is set, then this value will be used.
# If MIN > MAX, the highest value will be used.
#
#SHA_CRYPT_MIN_ROUNDS 5000
#SHA_CRYPT_MAX_ROUNDS 5000
#
# Only works if ENCRYPT_METHOD is set to YESCRYPT.
#
# Define the YESCRYPT cost factor.
# With a higher cost factor, it is more difficult to brute-force the password.
# However, more CPU time and more memory will be needed to authenticate users
# if this value is increased.
#
# If not specified, a cost factor of 5 will be used.
# The value must be within the 1-11 range.
#
#YESCRYPT_COST_FACTOR 5
#
# The pwck(8) utility emits a warning for any system account with a home
# directory that does not exist. Some system accounts intentionally do
# not have a home directory. Such accounts may have this string as
# their home directory in /etc/passwd to avoid a spurious warning.
#
NONEXISTENT /nonexistent
#
# Allow newuidmap and newgidmap when running under an alternative
# primary group.
#
#GRANT_AUX_GROUP_SUBIDS yes
#
# Select the HMAC cryptography algorithm.
# Used in pam_timestamp module to calculate the keyed-hash message
# authentication code.
#
# Note: It is recommended to check hmac(3) to see the possible algorithms
# that are available in your system.
#
#HMAC_CRYPTO_ALGO SHA512
################# OBSOLETED BY PAM ##############
# #
# These options are now handled by PAM. Please #
# edit the appropriate file in /etc/pam.d/ to #
# enable the equivelants of them.
#
###############
#MOTD_FILE
#DIALUPS_CHECK_ENAB
#LASTLOG_ENAB
#MAIL_CHECK_ENAB
#OBSCURE_CHECKS_ENAB
#PORTTIME_CHECKS_ENAB
#SU_WHEEL_ONLY
#CRACKLIB_DICTPATH
#PASS_CHANGE_TRIES
#PASS_ALWAYS_WARN
#ENVIRON_FILE
#NOLOGINS_FILE
#ISSUE_FILE
#PASS_MIN_LEN
#PASS_MAX_LEN
#ULIMIT
#ENV_HZ
#CHFN_AUTH
#CHSH_AUTH
#FAIL_DELAY
################# OBSOLETED #######################
# #
# These options are no more handled by shadow. #
# #
# Shadow utilities will display a warning if they #
# still appear. #
# #
###################################################
# CLOSE_SESSIONS
# LOGIN_STRING
# NO_PASSWORD_CONSOLE
# QMAIL_DIR

1
debian/login.dirs vendored Normal file
View File

@@ -0,0 +1 @@
usr/share/lintian/overrides

7
debian/login.install vendored Normal file
View File

@@ -0,0 +1,7 @@
debian/login.defs etc
usr/share/locale/*/LC_MESSAGES/shadow.mo
sbin/nologin usr/sbin
usr/bin/faillog
usr/bin/lastlog
usr/bin/newgrp
bin/login usr/bin

1
debian/login.links vendored Normal file
View File

@@ -0,0 +1 @@
usr/bin/newgrp usr/bin/sg

1
debian/login.lintian-overrides vendored Normal file
View File

@@ -0,0 +1 @@
login: elevated-privileges 4755 root/root [usr/bin/newgrp]

1
debian/login.maintscript vendored Normal file
View File

@@ -0,0 +1 @@
rm_conffile /etc/securetty 1:4.7-1~

16
debian/login.manpages vendored Normal file
View File

@@ -0,0 +1,16 @@
usr/share/man/*/man1/login.1
usr/share/man/*/man1/newgrp.1
usr/share/man/*/man1/sg.1
usr/share/man/*/man5/faillog.5
usr/share/man/*/man5/login.defs.5
usr/share/man/*/man8/faillog.8
usr/share/man/*/man8/lastlog.8
usr/share/man/*/man8/nologin.8
usr/share/man/man1/login.1
usr/share/man/man1/newgrp.1
usr/share/man/man1/sg.1
usr/share/man/man5/faillog.5
usr/share/man/man5/login.defs.5
usr/share/man/man8/faillog.8
usr/share/man/man8/lastlog.8
usr/share/man/man8/nologin.8

100
debian/login.pam vendored Normal file
View File

@@ -0,0 +1,100 @@
#
# The PAM configuration file for the Shadow `login' service
#
# Enforce a minimal delay in case of failure (in microseconds).
# (Replaces the `FAIL_DELAY' setting from login.defs)
# Note that other modules may require another minimal delay. (for example,
# to disable any delay, you should add the nodelay option to pam_unix)
auth optional pam_faildelay.so delay=3000000
# Outputs an issue file prior to each login prompt (Replaces the
# ISSUE_FILE option from login.defs). Uncomment for use
# auth required pam_issue.so issue=/etc/issue
# Disallows other than root logins when /etc/nologin exists
# (Replaces the `NOLOGINS_FILE' option from login.defs)
auth requisite pam_nologin.so
# SELinux needs to be the first session rule. This ensures that any
# lingering context has been cleared. Without this it is possible
# that a module could execute code in the wrong domain.
# When the module is present, "required" would be sufficient (When SELinux
# is disabled, this returns success.)
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
# Sets the loginuid process attribute
session required pam_loginuid.so
# Prints the message of the day upon successful login.
# (Replaces the `MOTD_FILE' option in login.defs)
# This includes a dynamically generated part from /run/motd.dynamic
# and a static (admin-editable) part from /etc/motd.
session optional pam_motd.so motd=/run/motd.dynamic
session optional pam_motd.so noupdate
# SELinux needs to intervene at login time to ensure that the process
# starts in the proper default security context. Only sessions which are
# intended to run in the user's context should be run after this.
# pam_selinux.so changes the SELinux context of the used TTY and configures
# SELinux in order to transition to the user context with the next execve()
# call.
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
# When the module is present, "required" would be sufficient (When SELinux
# is disabled, this returns success.)
# This module parses environment configuration file(s)
# and also allows you to use an extended config
# file /etc/security/pam_env.conf.
#
# parsing /etc/environment needs "readenv=1"
session required pam_env.so readenv=1
# locale variables can also be set in /etc/default/locale
# reading this file *in addition to /etc/environment* does not hurt
session required pam_env.so readenv=1 envfile=/etc/default/locale
# Standard Un*x authentication.
@include common-auth
# This allows certain extra groups to be granted to a user
# based on things like time of day, tty, service, and user.
# Please edit /etc/security/group.conf to fit your needs
# (Replaces the `CONSOLE_GROUPS' option in login.defs)
auth optional pam_group.so
# Uncomment and edit /etc/security/time.conf if you need to set
# time restraint on logins.
# (Replaces the `PORTTIME_CHECKS_ENAB' option from login.defs
# as well as /etc/porttime)
# account requisite pam_time.so
# Uncomment and edit /etc/security/access.conf if you need to
# set access limits.
# (Replaces /etc/login.access file)
# account required pam_access.so
# Sets up user limits according to /etc/security/limits.conf
# (Replaces the use of /etc/limits in old login)
session required pam_limits.so
# Prints the last login info upon successful login
# (Replaces the `LASTLOG_ENAB' option from login.defs)
session optional pam_lastlog.so
# Prints the status of the user's mailbox upon successful login
# (Replaces the `MAIL_CHECK_ENAB' option from login.defs).
#
# This also defines the MAIL environment variable
# However, userdel also needs MAIL_DIR and MAIL_FILE variables
# in /etc/login.defs to make sure that removing a user
# also removes the user's mail spool file.
# See comments in /etc/login.defs
session optional pam_mail.so standard
# Create a new session keyring.
session optional pam_keyinit.so force revoke
# Standard Un*x account and session
@include common-account
@include common-session
@include common-password

30
debian/login.postinst vendored Normal file
View File

@@ -0,0 +1,30 @@
#!/bin/sh
set -e
if [ "$1" = "configure" ]; then
# Install faillog during initial installs only
if [ "$2" = "" ] && [ ! -f "$DPKG_ROOT/var/log/faillog" ] ; then
touch "$DPKG_ROOT/var/log/faillog"
chown 0:0 "$DPKG_ROOT/var/log/faillog"
chmod 644 "$DPKG_ROOT/var/log/faillog"
fi
# Create subuid/subgid if missing
if [ ! -e "$DPKG_ROOT/etc/subuid" ]; then
touch "$DPKG_ROOT/etc/subuid"
chown 0:0 "$DPKG_ROOT/etc/subuid"
chmod 644 "$DPKG_ROOT/etc/subuid"
fi
if [ ! -e "$DPKG_ROOT/etc/subgid" ]; then
touch "$DPKG_ROOT/etc/subgid"
chown 0:0 "$DPKG_ROOT/etc/subgid"
chmod 644 "$DPKG_ROOT/etc/subgid"
fi
fi
#DEBHELPER#
exit 0

36
debian/not-installed vendored Normal file
View File

@@ -0,0 +1,36 @@
bin/groups
etc/default/useradd
etc/login.defs
etc/pam.d/chfn
etc/pam.d/chage
etc/pam.d/chpasswd
etc/pam.d/chsh
etc/pam.d/groupadd
etc/pam.d/groupdel
etc/pam.d/groupmems
etc/pam.d/groupmod
etc/pam.d/login
etc/pam.d/newusers
etc/pam.d/passwd
etc/pam.d/useradd
etc/pam.d/userdel
etc/pam.d/usermod
usr/bin/sg
usr/lib/*/libsubid.la
usr/sbin/logoutd
usr/sbin/vigr
usr/share/man/*/man1/groups.1
usr/share/man/*/man1/logoutd.1
usr/share/man/*/man1/su.1
usr/share/man/*/man3/getspnam.3
usr/share/man/*/man3/shadow.3
usr/share/man/*/man5/suauth.5
usr/share/man/*/man8/logoutd.8
usr/share/man/man1/groups.1
usr/share/man/man1/logoutd.1
usr/share/man/man1/su.1
usr/share/man/man3/getspnam.3
usr/share/man/man3/shadow.3
usr/share/man/man5/suauth.5
usr/share/man/man8/logoutd.8

8
debian/passwd.chage.pam vendored Normal file
View File

@@ -0,0 +1,8 @@
# The PAM configuration file for the Shadow 'chage' service
#
# This allows root to change password aging being prompted for a password
auth sufficient pam_rootok.so
# checks for account validity
account required pam_permit.so

16
debian/passwd.chfn.pam vendored Normal file
View File

@@ -0,0 +1,16 @@
#
# The PAM configuration file for the Shadow `chfn' service
#
# This allows root to change user infomation without being
# prompted for a password
auth sufficient pam_rootok.so
# The standard Unix authentication modules, used with
# NIS (man nsswitch) as well as normal /etc/passwd and
# /etc/shadow entries.
@include common-auth
@include common-account
@include common-session

2
debian/passwd.dirs vendored Normal file
View File

@@ -0,0 +1,2 @@
usr/share/lintian/overrides
etc/default

1
debian/passwd.examples vendored Normal file
View File

@@ -0,0 +1 @@
debian/passwd.expire.cron

57
debian/passwd.expire.cron vendored Normal file
View File

@@ -0,0 +1,57 @@
#!/usr/bin/perl
#
# passwd.expire.cron: sample expiry notification script for use as a cronjob
#
# Copyright 1999 by Ben Collins <bcollins@debian.org>, complete rights granted
# for use, distribution, modification, etc.
#
# Usage:
# edit the listed options, including the actual email, then rename to
# /etc/cron.daily/passwd
#
# If your users don't have a valid login shell (ie. they are ftp or mail
# users only), they will need some other way to change their password
# (telnet will work since login will handle password aging, or a poppasswd
# program, if they are mail users).
# <CONFIG> #
# should be same as /etc/adduser.conf
$LOW_UID=1000;
$HIGH_UID=29999;
# this let's the MTA handle the domain,
# set it manually if you want. Make sure
# you also add the @ like "\@domain.com"
$MAIL_DOM="";
# </CONFIG> #
# Set the current day reference
$curdays = int(time() / (60 * 60 * 24));
# Now go through the list
open(SH, "< /etc/shadow");
while (<SH>) {
@shent = split(':', $_);
@userent = getpwnam($shent[0]);
if ($userent[2] >= $LOW_UID && $userent[2] <= $HIGH_UID) {
if ($curdays > $shent[2] + $shent[4] - $shent[5] &&
$shent[4] != -1 && $shent[4] != 0 &&
$shent[5] != -1 && $shent[5] != 0) {
$daysleft = ($shent[2] + $shent[4]) - $curdays;
if ($daysleft == 1) { $days = "day"; } else {$days = "days"; }
if ($daysleft < 0) { next; }
open (MAIL, "| mail -s '[WARNING] account will expire in $daysleft $days' $shent[0]${MAIL_DOM}");
print MAIL <<EOF;
Your account will expire in $daysleft $days. Please change your password before
then or your account will expire
EOF
close (MAIL);
# This makes sure we also get a list of almost expired users
print "$shent[0]'s account will expire in $daysleft days\n";
}
}
@userent = getpwent();
}

8
debian/passwd.groupadd.pam vendored Normal file
View File

@@ -0,0 +1,8 @@
# The PAM configuration file for the Shadow 'groupadd' service
#
# This allows root to add groups without being prompted for a password
auth sufficient pam_rootok.so
# checks for account validity
account required pam_permit.so

8
debian/passwd.groupdel.pam vendored Normal file
View File

@@ -0,0 +1,8 @@
# The PAM configuration file for the Shadow 'groupdel' service
#
# This allows root to remove groups without being prompted for a password
auth sufficient pam_rootok.so
# checks for account validity
account required pam_permit.so

8
debian/passwd.groupmod.pam vendored Normal file
View File

@@ -0,0 +1,8 @@
# The PAM configuration file for the Shadow 'groupmod' service
#
# This allows root to modify groups without being prompted for a password
auth sufficient pam_rootok.so
# checks for account validity
account required pam_permit.so

26
debian/passwd.install vendored Normal file
View File

@@ -0,0 +1,26 @@
debian/default/useradd etc/default
debian/shadowconfig usr/sbin
usr/bin/chage
usr/bin/chfn
usr/bin/chsh
usr/bin/expiry
usr/bin/gpasswd
usr/bin/passwd
usr/sbin/chpasswd
usr/sbin/chgpasswd
usr/sbin/cppw
usr/sbin/groupadd
usr/sbin/groupdel
usr/sbin/groupmod
usr/sbin/groupmems
usr/sbin/grpck
usr/sbin/grpconv
usr/sbin/grpunconv
usr/sbin/newusers
usr/sbin/pwck
usr/sbin/pwconv
usr/sbin/pwunconv
usr/sbin/useradd
usr/sbin/userdel
usr/sbin/usermod
usr/sbin/vipw

2
debian/passwd.links vendored Normal file
View File

@@ -0,0 +1,2 @@
usr/sbin/vipw usr/sbin/vigr
usr/sbin/cppw usr/sbin/cpgr

6
debian/passwd.lintian-overrides vendored Normal file
View File

@@ -0,0 +1,6 @@
passwd: elevated-privileges 2755 root/shadow [usr/bin/chage]
passwd: elevated-privileges 4755 root/root [usr/bin/chfn]
passwd: elevated-privileges 4755 root/root [usr/bin/chsh]
passwd: elevated-privileges 2755 root/shadow [usr/bin/expiry]
passwd: elevated-privileges 4755 root/root [usr/bin/gpasswd]
passwd: elevated-privileges 4755 root/root [usr/bin/passwd]

1
debian/passwd.maintscript vendored Normal file
View File

@@ -0,0 +1 @@
rm_conffile /etc/cron.daily/passwd 1:4.7-2~

60
debian/passwd.manpages vendored Normal file
View File

@@ -0,0 +1,60 @@
debian/cpgr.8
debian/cppw.8
usr/share/man/*/man1/chage.1
usr/share/man/*/man1/chfn.1
usr/share/man/*/man1/chsh.1
usr/share/man/*/man1/expiry.1
usr/share/man/*/man1/gpasswd.1
usr/share/man/*/man1/passwd.1
usr/share/man/*/man5/passwd.5
usr/share/man/*/man5/subgid.5
usr/share/man/*/man5/subuid.5
usr/share/man/*/man5/shadow.5
usr/share/man/*/man5/gshadow.5
usr/share/man/*/man8/chpasswd.8
usr/share/man/*/man8/chgpasswd.8
usr/share/man/*/man8/groupadd.8
usr/share/man/*/man8/groupdel.8
usr/share/man/*/man8/groupmod.8
usr/share/man/*/man8/groupmems.8
usr/share/man/*/man8/grpck.8
usr/share/man/*/man8/grpconv.8
usr/share/man/*/man8/grpunconv.8
usr/share/man/*/man8/newusers.8
usr/share/man/*/man8/pwck.8
usr/share/man/*/man8/pwconv.8
usr/share/man/*/man8/pwunconv.8
usr/share/man/*/man8/useradd.8
usr/share/man/*/man8/userdel.8
usr/share/man/*/man8/usermod.8
usr/share/man/*/man8/vigr.8
usr/share/man/*/man8/vipw.8
usr/share/man/man1/chage.1
usr/share/man/man1/chfn.1
usr/share/man/man1/chsh.1
usr/share/man/man1/expiry.1
usr/share/man/man1/gpasswd.1
usr/share/man/man1/passwd.1
usr/share/man/man5/passwd.5
usr/share/man/man5/shadow.5
usr/share/man/man5/gshadow.5
usr/share/man/man5/subuid.5
usr/share/man/man5/subgid.5
usr/share/man/man8/chgpasswd.8
usr/share/man/man8/chpasswd.8
usr/share/man/man8/groupadd.8
usr/share/man/man8/groupdel.8
usr/share/man/man8/groupmems.8
usr/share/man/man8/groupmod.8
usr/share/man/man8/grpck.8
usr/share/man/man8/grpconv.8
usr/share/man/man8/grpunconv.8
usr/share/man/man8/newusers.8
usr/share/man/man8/pwck.8
usr/share/man/man8/pwconv.8
usr/share/man/man8/pwunconv.8
usr/share/man/man8/useradd.8
usr/share/man/man8/userdel.8
usr/share/man/man8/usermod.8
usr/share/man/man8/vigr.8
usr/share/man/man8/vipw.8

5
debian/passwd.newusers.pam vendored Normal file
View File

@@ -0,0 +1,5 @@
# The PAM configuration file for the Shadow 'newusers' service
#
@include common-password

6
debian/passwd.passwd.pam vendored Normal file
View File

@@ -0,0 +1,6 @@
#
# The PAM configuration file for the Shadow `passwd' service
#
@include common-password

30
debian/passwd.postinst vendored Normal file
View File

@@ -0,0 +1,30 @@
#!/bin/sh
set -e
case "$1" in
configure)
if ! getent group shadow | grep -q '^shadow:[^:]*:42'
then
groupadd -g 42 shadow || (
cat <<EOF
Group ID 42 has been allocated for the shadow group. You have either
used 42 yourself or created a shadow group with a different ID.
Please correct this problem and reconfigure with ``dpkg --configure passwd''.
Note that both user and group IDs in the range 0-99 are globally
allocated by the Debian project and must be the same on every Debian
system.
EOF
exit 1
)
fi
;;
esac
# Run shadowconfig only on new installs
[ -z "$2" ] && shadowconfig on
#DEBHELPER#
exit 0

8
debian/passwd.tmpfiles vendored Normal file
View File

@@ -0,0 +1,8 @@
# If a password operation is in progress and we lose power, stale lockfiles
# can be left behind. Clear them on boot.
r! /etc/gshadow.lock
r! /etc/shadow.lock
r! /etc/passwd.lock
r! /etc/group.lock
r! /etc/subuid.lock
r! /etc/subgid.lock

8
debian/passwd.useradd.pam vendored Normal file
View File

@@ -0,0 +1,8 @@
# The PAM configuration file for the Shadow 'useradd' service
#
# This allows root to add users without being prompted for a password
auth sufficient pam_rootok.so
# checks for account validity
account required pam_permit.so

8
debian/passwd.userdel.pam vendored Normal file
View File

@@ -0,0 +1,8 @@
# The PAM configuration file for the Shadow 'userdel' service
#
# This allows root to remove users without being prompted for a password
auth sufficient pam_rootok.so
# checks for account validity
account required pam_permit.so

8
debian/passwd.usermod.pam vendored Normal file
View File

@@ -0,0 +1,8 @@
# The PAM configuration file for the Shadow 'groupdel' service
#
# This allows root to remove groups without being prompted for a password
auth sufficient pam_rootok.so
# checks for account validity
account required pam_permit.so

View File

@@ -0,0 +1,137 @@
From 65c88a43a23c2391dcc90c0abda3e839e9c57904 Mon Sep 17 00:00:00 2001
From: Alejandro Colomar <alx@kernel.org>
Date: Sat, 10 Jun 2023 16:20:05 +0200
Subject: [PATCH] gpasswd(1): Fix password leak
How to trigger this password leak?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When gpasswd(1) asks for the new password, it asks twice (as is usual
for confirming the new password). Each of those 2 password prompts
uses agetpass() to get the password. If the second agetpass() fails,
the first password, which has been copied into the 'static' buffer
'pass' via STRFCPY(), wasn't being zeroed.
agetpass() is defined in <./libmisc/agetpass.c> (around line 91), and
can fail for any of the following reasons:
- malloc(3) or readpassphrase(3) failure.
These are going to be difficult to trigger. Maybe getting the system
to the limits of memory utilization at that exact point, so that the
next malloc(3) gets ENOMEM, and possibly even the OOM is triggered.
About readpassphrase(3), ENFILE and EINTR seem the only plausible
ones, and EINTR probably requires privilege or being the same user;
but I wouldn't discard ENFILE so easily, if a process starts opening
files.
- The password is longer than PASS_MAX.
The is plausible with physical access. However, at that point, a
keylogger will be a much simpler attack.
And, the attacker must be able to know when the second password is being
introduced, which is not going to be easy.
How to read the password after the leak?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Provoking the leak yourself at the right point by entering a very long
password is easy, and inspecting the process stack at that point should
be doable. Try to find some consistent patterns.
Then, search for those patterns in free memory, right after the victim
leaks their password.
Once you get the leak, a program should read all the free memory
searching for patterns that gpasswd(1) leaves nearby the leaked
password.
On 6/10/23 03:14, Seth Arnold wrote:
> An attacker process wouldn't be able to use malloc(3) for this task.
> There's a handful of tools available for userspace to allocate memory:
>
> - brk / sbrk
> - mmap MAP_ANONYMOUS
> - mmap /dev/zero
> - mmap some other file
> - shm_open
> - shmget
>
> Most of these return only pages of zeros to a process. Using mmap of an
> existing file, you can get some of the contents of the file demand-loaded
> into the memory space on the first use.
>
> The MAP_UNINITIALIZED flag only works if the kernel was compiled with
> CONFIG_MMAP_ALLOW_UNINITIALIZED. This is rare.
>
> malloc(3) doesn't zero memory, to our collective frustration, but all the
> garbage in the allocations is from previous allocations in the current
> process. It isn't leftover from other processes.
>
> The avenues available for reading the memory:
> - /dev/mem and /dev/kmem (requires root, not available with Secure Boot)
> - /proc/pid/mem (requires ptrace privileges, mediated by YAMA)
> - ptrace (requires ptrace privileges, mediated by YAMA)
> - causing memory to be swapped to disk, and then inspecting the swap
>
> These all require a certain amount of privileges.
How to fix it?
~~~~~~~~~~~~~~
memzero(), which internally calls explicit_bzero(3), or whatever
alternative the system provides with a slightly different name, will
make sure that the buffer is zeroed in memory, and optimizations are not
allowed to impede this zeroing.
This is not really 100% effective, since compilers may place copies of
the string somewhere hidden in the stack. Those copies won't get zeroed
by explicit_bzero(3). However, that's arguably a compiler bug, since
compilers should make everything possible to avoid optimizing strings
that are later passed to explicit_bzero(3). But we all know that
sometimes it's impossible to have perfect knowledge in the compiler, so
this is plausible. Nevertheless, there's nothing we can do against such
issues, except minimizing the time such passwords are stored in plain
text.
Security concerns
~~~~~~~~~~~~~~~~~
We believe this isn't easy to exploit. Nevertheless, and since the fix
is trivial, this fix should probably be applied soon, and backported to
all supported distributions, to prevent someone else having more
imagination than us to find a way.
Affected versions
~~~~~~~~~~~~~~~~~
All. Bug introduced in shadow 19990709. That's the second commit in
the git history.
Fixes: 45c6603cc86c ("[svn-upgrade] Integrating new upstream version, shadow (19990709)")
Reported-by: Alejandro Colomar <alx@kernel.org>
Cc: Serge Hallyn <serge@hallyn.com>
Cc: Iker Pedrosa <ipedrosa@redhat.com>
Cc: Seth Arnold <seth.arnold@canonical.com>
Cc: Christian Brauner <christian@brauner.io>
Cc: Balint Reczey <rbalint@debian.org>
Cc: Sam James <sam@gentoo.org>
Cc: David Runge <dvzrv@archlinux.org>
Cc: Andreas Jaeger <aj@suse.de>
Cc: <~hallyn/shadow@lists.sr.ht>
Signed-off-by: Alejandro Colomar <alx@kernel.org>
---
src/gpasswd.c | 1 +
1 file changed, 1 insertion(+)
--- a/src/gpasswd.c
+++ b/src/gpasswd.c
@@ -896,6 +896,7 @@
strzero (cp);
cp = getpass (_("Re-enter new password: "));
if (NULL == cp) {
+ memzero (pass, sizeof pass);
exit (1);
}

View File

@@ -0,0 +1,45 @@
From e5905c4b84d4fb90aefcd96ee618411ebfac663d Mon Sep 17 00:00:00 2001
From: tomspiderlabs <128755403+tomspiderlabs@users.noreply.github.com>
Date: Thu, 23 Mar 2023 23:39:38 +0000
Subject: [PATCH] Added control character check
Added control character check, returning -1 (to "err") if control characters are present.
---
lib/fields.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/lib/fields.c b/lib/fields.c
index 640be931..fb51b582 100644
--- a/lib/fields.c
+++ b/lib/fields.c
@@ -21,9 +21,9 @@
*
* The supplied field is scanned for non-printable and other illegal
* characters.
- * + -1 is returned if an illegal character is present.
- * + 1 is returned if no illegal characters are present, but the field
- * contains a non-printable character.
+ * + -1 is returned if an illegal or control character is present.
+ * + 1 is returned if no illegal or control characters are present,
+ * but the field contains a non-printable character.
* + 0 is returned otherwise.
*/
int valid_field (const char *field, const char *illegal)
@@ -45,10 +45,13 @@ int valid_field (const char *field, const char *illegal)
}
if (0 == err) {
- /* Search if there are some non-printable characters */
+ /* Search if there are non-printable or control characters */
for (cp = field; '\0' != *cp; cp++) {
if (!isprint (*cp)) {
err = 1;
+ }
+ if (!iscntrl (*cp)) {
+ err = -1;
break;
}
}
--
2.34.1

View File

@@ -0,0 +1,61 @@
From 2eaea70111f65b16d55998386e4ceb4273c19eb4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@googlemail.com>
Date: Fri, 31 Mar 2023 14:46:50 +0200
Subject: [PATCH] Overhaul valid_field()
e5905c4b ("Added control character check") introduced checking for
control characters but had the logic inverted, so it rejects all
characters that are not control ones.
Cast the character to `unsigned char` before passing to the character
checking functions to avoid UB.
Use strpbrk(3) for the illegal character test and return early.
---
lib/fields.c | 24 ++++++++++--------------
1 file changed, 10 insertions(+), 14 deletions(-)
diff --git a/lib/fields.c b/lib/fields.c
index fb51b582..53929248 100644
--- a/lib/fields.c
+++ b/lib/fields.c
@@ -37,26 +37,22 @@ int valid_field (const char *field, const char *illegal)
/* For each character of field, search if it appears in the list
* of illegal characters. */
+ if (illegal && NULL != strpbrk (field, illegal)) {
+ return -1;
+ }
+
+ /* Search if there are non-printable or control characters */
for (cp = field; '\0' != *cp; cp++) {
- if (strchr (illegal, *cp) != NULL) {
+ unsigned char c = *cp;
+ if (!isprint (c)) {
+ err = 1;
+ }
+ if (iscntrl (c)) {
err = -1;
break;
}
}
- if (0 == err) {
- /* Search if there are non-printable or control characters */
- for (cp = field; '\0' != *cp; cp++) {
- if (!isprint (*cp)) {
- err = 1;
- }
- if (!iscntrl (*cp)) {
- err = -1;
- break;
- }
- }
- }
-
return err;
}
--
2.34.1

View File

@@ -0,0 +1,51 @@
Goal: Log login failures to the btmp file
Notes:
* I'm not sure login should add an entry in the FTMP file when PAM is used.
(but nothing in /etc/login.defs indicates that the failure is not logged)
--- a/src/login.c
+++ b/src/login.c
@@ -827,6 +827,24 @@
(void) puts ("");
(void) puts (_("Login incorrect"));
+ if (getdef_str("FTMP_FILE") != NULL) {
+#ifdef USE_UTMPX
+ struct utmpx *failent =
+ prepare_utmpx (failent_user,
+ tty,
+ /* FIXME: or fromhost? */hostname,
+ utent);
+#else /* !USE_UTMPX */
+ struct utmp *failent =
+ prepare_utmp (failent_user,
+ tty,
+ hostname,
+ utent);
+#endif /* !USE_UTMPX */
+ failtmp (failent_user, failent);
+ free (failent);
+ }
+
if (failcount >= retries) {
SYSLOG ((LOG_NOTICE,
"TOO MANY LOGIN TRIES (%u)%s FOR '%s'",
--- a/lib/getdef.c
+++ b/lib/getdef.c
@@ -38,7 +38,6 @@
{"ENVIRON_FILE", NULL}, \
{"ENV_TZ", NULL}, \
{"FAILLOG_ENAB", NULL}, \
- {"FTMP_FILE", NULL}, \
{"HMAC_CRYPTO_ALGO", NULL}, \
{"ISSUE_FILE", NULL}, \
{"LASTLOG_ENAB", NULL}, \
@@ -80,6 +79,7 @@
{"ERASECHAR", NULL},
{"FAIL_DELAY", NULL},
{"FAKE_SHELL", NULL},
+ {"FTMP_FILE", NULL},
{"GID_MAX", NULL},
{"GID_MIN", NULL},
{"HOME_MODE", NULL},

276
debian/patches/401_cppw_src.dpatch vendored Normal file
View File

@@ -0,0 +1,276 @@
#! /bin/sh /usr/share/dpatch/dpatch-run
## 401_cppw_src.dpatch by Nicolas FRANCOIS <nicolas.francois@centraliens.net>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Add cppw / cpgr
@DPATCH@
--- /dev/null
+++ b/src/cppw.c
@@ -0,0 +1,238 @@
+/*
+ cppw, cpgr copy with locking given file over the password or group file
+ with -s will copy with locking given file over shadow or gshadow file
+
+ Copyright (C) 1999 Stephen Frost <sfrost@snowman.net>
+
+ Based on vipw, vigr by:
+ Copyright (C) 1997 Guy Maor <maor@ece.utexas.edu>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+ */
+
+#include <config.h>
+#include "defines.h"
+
+#include <errno.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <sys/types.h>
+#include <signal.h>
+#include <utime.h>
+#include "exitcodes.h"
+#include "prototypes.h"
+#include "pwio.h"
+#include "shadowio.h"
+#include "groupio.h"
+#include "sgroupio.h"
+
+
+const char *Prog;
+
+const char *filename, *filenewname;
+static bool filelocked = false;
+static int (*unlock) (void);
+
+/* local function prototypes */
+static int create_copy (FILE *fp, const char *dest, struct stat *sb);
+static void cppwexit (const char *msg, int syserr, int ret);
+static void cppwcopy (const char *file,
+ const char *in_file,
+ int (*file_lock) (void),
+ int (*file_unlock) (void));
+
+static int create_copy (FILE *fp, const char *dest, struct stat *sb)
+{
+ struct utimbuf ub;
+ FILE *bkfp;
+ int c;
+ mode_t mask;
+
+ mask = umask (077);
+ bkfp = fopen (dest, "w");
+ (void) umask (mask);
+ if (NULL == bkfp) {
+ return -1;
+ }
+
+ rewind (fp);
+ while ((c = getc (fp)) != EOF) {
+ if (putc (c, bkfp) == EOF) {
+ break;
+ }
+ }
+
+ if ( (c != EOF)
+ || (fflush (bkfp) != 0)) {
+ (void) fclose (bkfp);
+ (void) unlink (dest);
+ return -1;
+ }
+ if ( (fsync (fileno (bkfp)) != 0)
+ || (fclose (bkfp) != 0)) {
+ (void) unlink (dest);
+ return -1;
+ }
+
+ ub.actime = sb->st_atime;
+ ub.modtime = sb->st_mtime;
+ if ( (utime (dest, &ub) != 0)
+ || (chmod (dest, sb->st_mode) != 0)
+ || (chown (dest, sb->st_uid, sb->st_gid) != 0)) {
+ (void) unlink (dest);
+ return -1;
+ }
+ return 0;
+}
+
+static void cppwexit (const char *msg, int syserr, int ret)
+{
+ int err = errno;
+ if (filelocked) {
+ (*unlock) ();
+ }
+ if (NULL != msg) {
+ fprintf (stderr, "%s: %s", Prog, msg);
+ if (0 != syserr) {
+ fprintf (stderr, ": %s", strerror (err));
+ }
+ (void) fputs ("\n", stderr);
+ }
+ if (NULL != filename) {
+ fprintf (stderr, _("%s: %s is unchanged\n"), Prog, filename);
+ } else {
+ fprintf (stderr, _("%s: no changes\n"), Prog);
+ }
+
+ exit (ret);
+}
+
+static void cppwcopy (const char *file,
+ const char *in_file,
+ int (*file_lock) (void),
+ int (*file_unlock) (void))
+{
+ struct stat st1;
+ FILE *f;
+ char filenew[1024];
+
+ snprintf (filenew, sizeof filenew, "%s.new", file);
+ unlock = file_unlock;
+ filename = file;
+ filenewname = filenew;
+
+ if (access (file, F_OK) != 0) {
+ cppwexit (file, 1, 1);
+ }
+ if (file_lock () == 0) {
+ cppwexit (_("Couldn't lock file"), 0, 5);
+ }
+ filelocked = true;
+
+ /* file to copy has same owners, perm */
+ if (stat (file, &st1) != 0) {
+ cppwexit (file, 1, 1);
+ }
+ f = fopen (in_file, "r");
+ if (NULL == f) {
+ cppwexit (in_file, 1, 1);
+ }
+ if (create_copy (f, filenew, &st1) != 0) {
+ cppwexit (_("Couldn't make copy"), errno, 1);
+ }
+
+ /* XXX - here we should check filenew for errors; if there are any,
+ * fail w/ an appropriate error code and let the user manually fix
+ * it. Use pwck or grpck to do the check. - Stephen (Shamelessly
+ * stolen from '--marekm's comment) */
+
+ if (rename (filenew, file) != 0) {
+ fprintf (stderr, _("%s: can't copy %s: %s)\n"),
+ Prog, filenew, strerror (errno));
+ cppwexit (NULL,0,1);
+ }
+
+ (*file_unlock) ();
+}
+
+int main (int argc, char **argv)
+{
+ int flag;
+ bool cpshadow = false;
+ char *in_file;
+ int e = E_USAGE;
+ bool do_cppw = true;
+
+ (void) setlocale (LC_ALL, "");
+ (void) bindtextdomain (PACKAGE, LOCALEDIR);
+ (void) textdomain (PACKAGE);
+
+ Prog = Basename (argv[0]);
+ if (strcmp (Prog, "cpgr") == 0) {
+ do_cppw = false;
+ }
+
+ while ((flag = getopt (argc, argv, "ghps")) != EOF) {
+ switch (flag) {
+ case 'p':
+ do_cppw = true;
+ break;
+ case 'g':
+ do_cppw = false;
+ break;
+ case 's':
+ cpshadow = true;
+ break;
+ case 'h':
+ e = E_SUCCESS;
+ /*pass through*/
+ default:
+ (void) fputs (_("Usage:\n\
+`cppw <file>' copys over /etc/passwd `cppw -s <file>' copys over /etc/shadow\n\
+`cpgr <file>' copys over /etc/group `cpgr -s <file>' copys over /etc/gshadow\n\
+"), (E_SUCCESS != e) ? stderr : stdout);
+ exit (e);
+ }
+ }
+
+ if (argc != optind + 1) {
+ cppwexit (_("wrong number of arguments, -h for usage"),0,1);
+ }
+
+ in_file = argv[optind];
+
+ if (do_cppw) {
+ if (cpshadow) {
+ cppwcopy (SHADOW_FILE, in_file, spw_lock, spw_unlock);
+ } else {
+ cppwcopy (PASSWD_FILE, in_file, pw_lock, pw_unlock);
+ }
+ } else {
+#ifdef SHADOWGRP
+ if (cpshadow) {
+ cppwcopy (SGROUP_FILE, in_file, sgr_lock, sgr_unlock);
+ } else
+#endif /* SHADOWGRP */
+ {
+ cppwcopy (GROUP_FILE, in_file, gr_lock, gr_unlock);
+ }
+ }
+
+ return 0;
+}
+
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -34,6 +34,7 @@
bin_PROGRAMS += su
endif
usbin_PROGRAMS = \
+ cppw \
chgpasswd \
chpasswd \
groupadd \
@@ -102,6 +103,7 @@
chgpasswd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT) $(LIBECONF)
chsh_LDADD = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD) $(LIBECONF)
chpasswd_LDADD = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT) $(LIBECONF)
+cppw_LDADD = $(LDADD) $(LIBSELINUX) $(LIBAUDIT)
expiry_LDADD = $(LDADD) $(LIBECONF)
gpasswd_LDADD = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT) $(LIBECONF)
groupadd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBECONF) -ldl
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -91,6 +91,7 @@
src/chgpasswd.c
src/chpasswd.c
src/chsh.c
+src/cppw.c
src/expiry.c
src/faillog.c
src/gpasswd.c

64
debian/patches/402_cppw_selinux vendored Normal file
View File

@@ -0,0 +1,64 @@
Goal: Add selinux support to cppw
Fix:
Status wrt upstream: cppw is not available upstream.
The patch was made based on the
302_vim_selinux_support patch. It needs to be
reviewed by an SE-Linux aware person.
Depends on 401_cppw_src.dpatch
Index: git/src/cppw.c
===================================================================
--- git.orig/src/cppw.c
+++ git/src/cppw.c
@@ -34,6 +34,9 @@
#include <sys/types.h>
#include <signal.h>
#include <utime.h>
+#ifdef WITH_SELINUX
+#include <selinux/selinux.h>
+#endif /* WITH_SELINUX */
#include "exitcodes.h"
#include "prototypes.h"
#include "pwio.h"
@@ -139,6 +142,22 @@
if (access (file, F_OK) != 0) {
cppwexit (file, 1, 1);
}
+#ifdef WITH_SELINUX
+ /* if SE Linux is enabled then set the context of all new files
+ * to be the context of the file we are editing */
+ if (is_selinux_enabled () > 0) {
+ security_context_t passwd_context=NULL;
+ int ret = 0;
+ if (getfilecon (file, &passwd_context) < 0) {
+ cppwexit (_("Couldn't get file context"), errno, 1);
+ }
+ ret = setfscreatecon (passwd_context);
+ freecon (passwd_context);
+ if (0 != ret) {
+ cppwexit (_("setfscreatecon () failed"), errno, 1);
+ }
+ }
+#endif /* WITH_SELINUX */
if (file_lock () == 0) {
cppwexit (_("Couldn't lock file"), 0, 5);
}
@@ -167,6 +186,15 @@
cppwexit (NULL,0,1);
}
+#ifdef WITH_SELINUX
+ /* unset the fscreatecon */
+ if (is_selinux_enabled () > 0) {
+ if (setfscreatecon (NULL)) {
+ cppwexit (_("setfscreatecon() failed"), errno, 1);
+ }
+ }
+#endif /* WITH_SELINUX */
+
(*file_unlock) ();
}

84
debian/patches/429_login_FAILLOG_ENAB vendored Normal file
View File

@@ -0,0 +1,84 @@
Goal: Re-enable logging and displaying failures on login when login is
compiled with PAM and when FAILLOG_ENAB is set to yes. And create the
faillog file if it does not exist on postinst (as on Woody).
Depends: 008_login_more_LOG_UNKFAIL_ENAB
Fixes: #192849
Note: It could be removed if pam_tally could report the number of failures
preceding a successful login.
--- a/src/login.c
+++ b/src/login.c
@@ -114,9 +114,9 @@
#endif
);
-#ifndef USE_PAM
static struct faillog faillog;
+#ifndef USE_PAM
static void bad_time_notify (void);
static void check_nologin (bool login_to_root);
#else
@@ -787,6 +787,9 @@
SYSLOG ((LOG_NOTICE,
"TOO MANY LOGIN TRIES (%u)%s FOR '%s'",
failcount, fromhost, failent_user));
+ if ((NULL != pwd) && getdef_bool("FAILLOG_ENAB")) {
+ failure (pwd->pw_uid, tty, &faillog);
+ }
fprintf (stderr,
_("Maximum number of tries exceeded (%u)\n"),
failcount);
@@ -804,6 +807,14 @@
pam_strerror (pamh, retcode)));
failed = true;
}
+ if ( (NULL != pwd)
+ && getdef_bool("FAILLOG_ENAB")
+ && ! failcheck (pwd->pw_uid, &faillog, failed)) {
+ SYSLOG((LOG_CRIT,
+ "exceeded failure limit for `%s' %s",
+ failent_user, fromhost));
+ failed = 1;
+ }
if (!failed) {
break;
@@ -827,6 +838,10 @@
(void) puts ("");
(void) puts (_("Login incorrect"));
+ if ((NULL != pwd) && getdef_bool("FAILLOG_ENAB")) {
+ failure (pwd->pw_uid, tty, &faillog);
+ }
+
if (getdef_str("FTMP_FILE") != NULL) {
#ifdef USE_UTMPX
struct utmpx *failent =
@@ -1295,6 +1310,7 @@
*/
#ifndef USE_PAM
motd (); /* print the message of the day */
+#endif
if ( getdef_bool ("FAILLOG_ENAB")
&& (0 != faillog.fail_cnt)) {
failprint (&faillog);
@@ -1307,6 +1323,7 @@
username, (int) faillog.fail_cnt));
}
}
+#ifndef USE_PAM
if ( getdef_bool ("LASTLOG_ENAB")
&& pwd->pw_uid <= (uid_t) getdef_ulong ("LASTLOG_UID_MAX", 0xFFFFFFFFUL)
&& (ll.ll_time != 0)) {
--- a/lib/getdef.c
+++ b/lib/getdef.c
@@ -78,6 +78,7 @@
{"ENV_SUPATH", NULL},
{"ERASECHAR", NULL},
{"FAIL_DELAY", NULL},
+ {"FAILLOG_ENAB", NULL},
{"FAKE_SHELL", NULL},
{"FTMP_FILE", NULL},
{"GID_MAX", NULL},

View File

@@ -0,0 +1,97 @@
Goal: Do not hardcode pam_fail_delay and let pam_unix do its
job to set a delay...or not
Fixes: #87648
Status wrt upstream: Forwarded but not applied yet
Note: If removed, FAIL_DELAY must be re-added to /etc/login.defs
--- a/src/login.c
+++ b/src/login.c
@@ -512,7 +512,6 @@
#if !defined(USE_PAM)
char ptime[80];
#endif
- unsigned int delay;
unsigned int retries;
bool subroot = false;
#ifndef USE_PAM
@@ -537,6 +536,7 @@
pid_t child;
char *pam_user = NULL;
#else
+ unsigned int delay;
struct spwd *spwd = NULL;
#endif
/*
@@ -701,7 +701,6 @@
}
environ = newenvp; /* make new environment active */
- delay = getdef_unum ("FAIL_DELAY", 1);
retries = getdef_unum ("LOGIN_RETRIES", RETRIES);
#ifdef USE_PAM
@@ -717,8 +716,7 @@
/*
* hostname & tty are either set to NULL or their correct values,
- * depending on how much we know. We also set PAM's fail delay to
- * ours.
+ * depending on how much we know.
*
* PAM_RHOST and PAM_TTY are used for authentication, only use
* information coming from login or from the caller (e.g. no utmp)
@@ -727,10 +725,6 @@
PAM_FAIL_CHECK;
retcode = pam_set_item (pamh, PAM_TTY, tty);
PAM_FAIL_CHECK;
-#ifdef HAS_PAM_FAIL_DELAY
- retcode = pam_fail_delay (pamh, 1000000 * delay);
- PAM_FAIL_CHECK;
-#endif
/* if fflg, then the user has already been authenticated */
if (!fflg) {
unsigned int failcount = 0;
@@ -771,12 +765,6 @@
bool failed = false;
failcount++;
-#ifdef HAS_PAM_FAIL_DELAY
- if (delay > 0) {
- retcode = pam_fail_delay(pamh, 1000000*delay);
- PAM_FAIL_CHECK;
- }
-#endif
retcode = pam_authenticate (pamh, 0);
@@ -1110,14 +1098,17 @@
free (username);
username = NULL;
+#ifndef USE_PAM
/*
* Wait a while (a la SVR4 /usr/bin/login) before attempting
* to login the user again. If the earlier alarm occurs
* before the sleep() below completes, login will exit.
*/
+ delay = getdef_unum ("FAIL_DELAY", 1);
if (delay > 0) {
(void) sleep (delay);
}
+#endif
(void) puts (_("Login incorrect"));
--- a/lib/getdef.c
+++ b/lib/getdef.c
@@ -77,7 +77,6 @@
{"ENV_PATH", NULL},
{"ENV_SUPATH", NULL},
{"ERASECHAR", NULL},
- {"FAIL_DELAY", NULL},
{"FAILLOG_ENAB", NULL},
{"FAKE_SHELL", NULL},
{"FTMP_FILE", NULL},

View File

@@ -0,0 +1,60 @@
Goal: save the [g]shadow files with the 'shadow' group and mode 0440
Fixes: #166793
--- a/lib/commonio.c
+++ b/lib/commonio.c
@@ -21,6 +21,7 @@
#include <errno.h>
#include <stdio.h>
#include <signal.h>
+#include <grp.h>
#include "nscd.h"
#include "sssd.h"
#ifdef WITH_TCB
@@ -970,12 +971,23 @@
goto fail;
}
} else {
+ struct group *grp;
/*
* Default permissions for new [g]shadow files.
*/
sb.st_mode = db->st_mode;
sb.st_uid = db->st_uid;
sb.st_gid = db->st_gid;
+
+ /*
+ * Try to retrieve the shadow's GID, and fall back to GID 0.
+ */
+ if (sb.st_gid == 0) {
+ if ((grp = getgrnam("shadow")) != NULL)
+ sb.st_gid = grp->gr_gid;
+ else
+ sb.st_gid = 0;
+ }
}
snprintf (buf, sizeof buf, "%s+", db->filename);
--- a/lib/sgroupio.c
+++ b/lib/sgroupio.c
@@ -206,7 +206,7 @@
#ifdef WITH_SELINUX
NULL, /* scontext */
#endif
- 0400, /* st_mode */
+ 0440, /* st_mode */
0, /* st_uid */
0, /* st_gid */
NULL, /* head */
--- a/lib/shadowio.c
+++ b/lib/shadowio.c
@@ -84,7 +84,7 @@
#ifdef WITH_SELINUX
NULL, /* scontext */
#endif /* WITH_SELINUX */
- 0400, /* st_mode */
+ 0440, /* st_mode */
0, /* st_uid */
0, /* st_gid */
NULL, /* head */

View File

@@ -0,0 +1,41 @@
From: Balint Reczey <balint@balintreczey.hu>
Description: Keep using Debian's adduser defaults
Upstream's bbf4b79bc49fd1826eb41f6629669ef0b647267b commit
in 4.9 merged those values from upstream's default configuration file
which is not shipped in Debian.
This patch keeps the program's compiled in defaults in sync with the
configuration files shipped in Debian (debian/default/useradd).
Bug: https://github.com/shadow-maint/shadow/issues/501
Bug-Debian: https://bugs.debian.org/1004710
Forwarded: not-needed
--- a/src/useradd.c
+++ b/src/useradd.c
@@ -79,12 +79,12 @@
/*
* These defaults are used if there is no defaults file.
*/
-static gid_t def_group = 1000;
+static gid_t def_group = 100;
static const char *def_gname = "other";
static const char *def_home = "/home";
static const char *def_shell = "/bin/bash";
static const char *def_template = SKEL_DIR;
-static const char *def_create_mail_spool = "yes";
+static const char *def_create_mail_spool = "no";
static const char *def_log_init = "yes";
static long def_inactive = -1;
diff --git a/man/useradd.8.xml b/man/useradd.8.xml
index af02a23f..c7f95b47 100644
--- a/man/useradd.8.xml
+++ b/man/useradd.8.xml
@@ -248,7 +248,7 @@
command line), useradd will set the primary group of the new
user to the value specified by the <option>GROUP</option>
variable in <filename>/etc/default/useradd</filename>, or
- 1000 by default.
+ 100 by default.
</para>
</listitem>
</varlistentry>

201
debian/patches/503_shadowconfig.8 vendored Normal file
View File

@@ -0,0 +1,201 @@
Goal: Document the shadowconfig utility
Status wrt upstream: The shadowconfig utility is debian specific.
Its man page also (but it used to be distributed)
Index: git/man/shadowconfig.8
===================================================================
--- /dev/null
+++ git/man/shadowconfig.8
@@ -0,0 +1,41 @@
+.\"Generated by db2man.xsl. Don't modify this, modify the source.
+.de Sh \" Subsection
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Ip \" List item
+.br
+.ie \\n(.$>=3 .ne \\$3
+.el .ne 3
+.IP "\\$1" \\$2
+..
+.TH "SHADOWCONFIG" 8 "19 Apr 1997" "" ""
+.SH NAME
+shadowconfig \- toggle shadow passwords on and off
+.SH "SYNOPSIS"
+.ad l
+.hy 0
+.HP 13
+\fBshadowconfig\fR \fB\fIon\fR\fR | \fB\fIoff\fR\fR
+.ad
+.hy
+
+.SH "DESCRIPTION"
+
+.PP
+\fBshadowconfig\fR on will turn shadow passwords on; \fIshadowconfig off\fR will turn shadow passwords off\&. \fBshadowconfig\fR will print an error message and exit with a nonzero code if it finds anything awry\&. If that happens, you should correct the error and run it again\&. Turning shadow passwords on when they are already on, or off when they are already off, is harmless\&.
+
+.PP
+Read \fI/usr/share/doc/passwd/README\&.Debian\fR for a brief introduction to shadow passwords and related features\&.
+
+.PP
+Note that turning shadow passwords off and on again will lose all password aging information\&.
+
Index: git/man/shadowconfig.8.xml
===================================================================
--- /dev/null
+++ git/man/shadowconfig.8.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
+ "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd">
+<refentry id='shadowconfig.8'>
+ <!-- $Id: shadowconfig.8.xml,v 1.6 2005/06/15 12:39:27 kloczek Exp $ -->
+ <refentryinfo>
+ <date>19 Apr 1997</date>
+ </refentryinfo>
+ <refmeta>
+ <refentrytitle>shadowconfig</refentrytitle>
+ <manvolnum>8</manvolnum>
+ <refmiscinfo class='date'>19 Apr 1997</refmiscinfo>
+ <refmiscinfo class='source'>Debian GNU/Linux</refmiscinfo>
+ </refmeta>
+ <refnamediv id='name'>
+ <refname>shadowconfig</refname>
+ <refpurpose>toggle shadow passwords on and off</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv id='synopsis'>
+ <cmdsynopsis>
+ <command>shadowconfig</command>
+ <group choice='plain'>
+ <arg choice='plain'><replaceable>on</replaceable></arg>
+ <arg choice='plain'><replaceable>off</replaceable></arg>
+ </group>
+ </cmdsynopsis>
+ </refsynopsisdiv>
+
+ <refsect1 id='description'>
+ <title>DESCRIPTION</title>
+ <para><command>shadowconfig</command> on will turn shadow passwords on;
+ <emphasis remap='B'>shadowconfig off</emphasis> will turn shadow
+ passwords off. <command>shadowconfig</command> will print an error
+ message and exit with a nonzero code if it finds anything awry. If
+ that happens, you should correct the error and run it again. Turning
+ shadow passwords on when they are already on, or off when they are
+ already off, is harmless.
+ </para>
+
+ <para>
+ Read <filename>/usr/share/doc/passwd/README.Debian</filename> for a
+ brief introduction
+ to shadow passwords and related features.
+ </para>
+
+ <para>Note that turning shadow passwords off and on again will lose all
+ password
+ aging information.
+ </para>
+ </refsect1>
+</refentry>
Index: git/man/fr/shadowconfig.8
===================================================================
--- /dev/null
+++ git/man/fr/shadowconfig.8
@@ -0,0 +1,26 @@
+.\" This file was generated with po4a. Translate the source file.
+.\"
+.\"$Id: shadowconfig.8,v 1.4 2001/08/23 23:10:48 kloczek Exp $
+.TH SHADOWCONFIG 8 "19 avril 1997" "Debian GNU/Linux"
+.SH NOM
+shadowconfig \- active ou désactive les mots de passe cachés
+.SH SYNOPSIS
+\fBshadowconfig\fP \fIon\fP | \fIoff\fP
+.SH DESCRIPTION
+.PP
+\fBshadowconfig on\fP active les mots de passe cachés («\ shadow passwords\ »)\ ; \fBshadowconfig off\fP les désactive. \fBShadowconfig\fP affiche un message
+d'erreur et quitte avec une valeur de retour non nulle s'il rencontre
+quelque chose d'inattendu. Dans ce cas, vous devrez corriger l'erreur avant
+de recommencer.
+
+Activer les mots de passe cachés lorsqu'ils sont déjà activés, ou les
+désactiver lorsqu'ils ne sont pas actifs est sans effet.
+
+Lisez \fI/usr/share/doc/passwd/README.Debian\fP pour une brève introduction aux
+mots de passe cachés et à leurs fonctionnalités.
+
+Notez que désactiver puis réactiver les mots de passe cachés aura pour
+conséquence la perte des informations d'âge sur les mots de passe.
+.SH TRADUCTION
+Nicolas FRANÇOIS, 2004.
+Veuillez signaler toute erreur à <\fIdebian\-l10\-french@lists.debian.org\fR>.
Index: git/man/ja/shadowconfig.8
===================================================================
--- /dev/null
+++ git/man/ja/shadowconfig.8
@@ -0,0 +1,25 @@
+.\" all right reserved,
+.\" Translated Tue Oct 30 11:59:11 JST 2001
+.\" by Maki KURODA <mkuroda@aisys-jp.com>
+.\"
+.TH SHADOWCONFIG 8 "19 Apr 1997" "Debian GNU/Linux"
+.SH 名前
+shadowconfig \- shadow パスワードの設定をオン及びオフに切替える
+.SH 書式
+.B "shadowconfig"
+.IR on " | " off
+.SH 説明
+.PP
+.B shadowconfig on
+は shadow パスワードを有効にする。
+.B shadowconfig off
+は shadow パスワードを無効にする。
+.B shadowconfig
+は何らかの間違いがあると、エラーメッセージを表示し、
+ゼロではない返り値を返す。
+もしそのようなことが起こった場合、エラーを修正し、再度実行しなければならない。
+shadow パスワードの設定がすでにオンの場合にオンに設定したり、
+すでにオフの場合にオフに設定しても、何の影響もない。
+
+.I /usr/share/doc/passwd/README.debian.gz
+には shadow パスワードとそれに関する特徴の簡単な紹介が書かれている。
Index: git/man/pl/shadowconfig.8
===================================================================
--- /dev/null
+++ git/man/pl/shadowconfig.8
@@ -0,0 +1,27 @@
+.\" $Id: shadowconfig.8,v 1.3 2001/08/23 23:10:51 kloczek Exp $
+.\" {PTM/WK/1999-09-14}
+.TH SHADOWCONFIG 8 "19 kwietnia 1997" "Debian GNU/Linux"
+.SH NAZWA
+shadowconfig - przełącza ochronę haseł i grup przez pliki shadow
+.SH SKŁADNIA
+.B "shadowconfig"
+.IR on " | " off
+.SH OPIS
+.PP
+.B shadowconfig on
+włącza ochronę haseł i grup przez dodatkowe, przesłaniane pliki (shadow);
+.B shadowconfig off
+wyłącza dodatkowe pliki haseł i grup.
+.B shadowconfig
+wyświetla komunikat o błędzie i kończy pracę z niezerowym kodem jeśli
+znajdzie coś nieprawidłowego. W takim wypadku powinieneś poprawić błąd
+.\" if it finds anything awry.
+i uruchomić program ponownie.
+
+Włączenie ochrony haseł, gdy jest ona już włączona lub jej wyłączenie,
+gdy jest wyłączona jest nieszkodliwe.
+
+Przeczytaj
+.IR /usr/share/doc/passwd/README.debian.gz ,
+gdzie znajdziesz krótkie wprowadzenie do ochrony haseł z użyciem dodatkowych
+plików haseł przesłanianych (shadow passwords) i związanych tematów.

View File

@@ -0,0 +1,36 @@
Goal: Recommend using adduser and deluser.
Fixes: #406046
Status wrt upstream: Debian specific patch.
--- a/man/useradd.8.xml
+++ b/man/useradd.8.xml
@@ -83,6 +83,12 @@
<refsect1 id='description'>
<title>DESCRIPTION</title>
<para>
+ <command>useradd</command> is a low level utility for adding
+ users. On Debian, administrators should usually use
+ <citerefentry><refentrytitle>adduser</refentrytitle>
+ <manvolnum>8</manvolnum></citerefentry> instead.
+ </para>
+ <para>
When invoked without the <option>-D</option> option, the
<command>useradd</command> command creates a new user account using
the values specified on the command line plus the default values from
--- a/man/userdel.8.xml
+++ b/man/userdel.8.xml
@@ -59,6 +59,12 @@
<refsect1 id='description'>
<title>DESCRIPTION</title>
<para>
+ <command>userdel</command> is a low level utility for removing
+ users. On Debian, administrators should usually use
+ <citerefentry><refentrytitle>deluser</refentrytitle>
+ <manvolnum>8</manvolnum></citerefentry> instead.
+ </para>
+ <para>
The <command>userdel</command> command modifies the system account
files, deleting all entries that refer to the user name <emphasis
remap='I'>LOGIN</emphasis>. The named user must exist.

111
debian/patches/506_relaxed_usernames vendored Normal file
View File

@@ -0,0 +1,111 @@
Goal: Relaxed usernames/groupnames checking patch.
Status wrt upstream: Debian specific. Not to be used upstream
Details:
Allows any non-empty user/grounames that don't contain ':', ',' or '\n'
characters and don't start with '-', '+', or '~'. This patch is more
restrictive than original Karl's version. closes: #264879
Also closes: #377844
Comments from Karl Ramm (shadow 1:4.0.3-9, 20 Aug 2003 02:06:50 -0400):
I can't come up with a good justification as to why characters other
than ':'s and '\0's should be disallowed in group and usernames (other
than '-' as the leading character). Thus, the maintenance tools don't
anymore. closes: #79682, #166798, #171179
--- a/libmisc/chkname.c
+++ b/libmisc/chkname.c
@@ -32,44 +32,26 @@
}
/*
- * User/group names must match gnu e-regex:
- * [a-zA-Z0-9_.][a-zA-Z0-9_.-]{0,30}[a-zA-Z0-9_.$-]?
- *
- * as a non-POSIX, extension, allow "$" as the last char for
- * sake of Samba 3.x "add machine script"
- *
- * Also do not allow fully numeric names or just "." or "..".
- */
- int numeric;
-
- if ('\0' == *name ||
- ('.' == *name && (('.' == name[1] && '\0' == name[2]) ||
- '\0' == name[1])) ||
- !((*name >= 'a' && *name <= 'z') ||
- (*name >= 'A' && *name <= 'Z') ||
- (*name >= '0' && *name <= '9') ||
- *name == '_' ||
- *name == '.')) {
+ * POSIX indicate that usernames are composed of characters from the
+ * portable filename character set [A-Za-z0-9._-], and that the hyphen
+ * should not be used as the first character of a portable user name.
+ *
+ * Allow more relaxed user/group names in Debian -- ^[^-~+:,\s][^:,\s]*$
+ */
+ if ( ('\0' == *name)
+ || ('-' == *name)
+ || ('~' == *name)
+ || ('+' == *name)) {
return false;
}
-
- numeric = isdigit(*name);
-
- while ('\0' != *++name) {
- if (!((*name >= 'a' && *name <= 'z') ||
- (*name >= 'A' && *name <= 'Z') ||
- (*name >= '0' && *name <= '9') ||
- *name == '_' ||
- *name == '.' ||
- *name == '-' ||
- (*name == '$' && name[1] == '\0')
- )) {
+ do {
+ if ((':' == *name) || (',' == *name) || isspace(*name)) {
return false;
}
- numeric &= isdigit(*name);
- }
+ name++;
+ } while ('\0' != *name);
- return !numeric;
+ return true;
}
bool is_valid_user_name (const char *name)
--- a/man/useradd.8.xml
+++ b/man/useradd.8.xml
@@ -708,6 +708,14 @@
the <command>ls</command> output.
</para>
<para>
+ On Debian, the only constraints are that usernames must neither start
+ with a dash ('-') nor plus ('+') nor tilde ('~') nor contain a
+ colon (':'), a comma (','), or a whitespace (space: ' ',
+ end of line: '\n', tabulation: '\t', etc.). Note that using a slash
+ ('/') may break the default algorithm for the definition of the
+ user's home directory.
+ </para>
+ <para>
Usernames may only be up to 32 characters long.
</para>
</refsect1>
--- a/man/groupadd.8.xml
+++ b/man/groupadd.8.xml
@@ -72,6 +72,12 @@
also disallowed.
</para>
<para>
+ On Debian, the only constraints are that groupnames must neither start
+ with a dash ('-') nor plus ('+') nor tilde ('~') nor contain a
+ colon (':'), a comma (','), or a whitespace (space:' ',
+ end of line: '\n', tabulation: '\t', etc.).
+ </para>
+ <para>
Groupnames may only be up to &GROUP_NAME_MAX_LENGTH; characters long.
</para>
</refsect1>

40
debian/patches/542_useradd-O_option vendored Normal file
View File

@@ -0,0 +1,40 @@
Goal: accepts the -O flag for backward compatibility. (was used by adduser?)
Note: useradd.8 needs to be regenerated.
Status wrt upstream: not included as this is just specific
backward compatibility for Debian
--- a/man/useradd.8.xml
+++ b/man/useradd.8.xml
@@ -326,6 +326,11 @@
=<replaceable>100</replaceable>&nbsp;<option>-K</option>&nbsp;
<replaceable>UID_MAX</replaceable>=<replaceable>499</replaceable>
</para>
+ <para>
+ For the compatibility with previous Debian's
+ <command>useradd</command>, the <option>-O</option> option is
+ also supported.
+ </para>
<!--para>
Note: <option>-K</option>&nbsp;<replaceable>UID_MIN</replaceable>=<replaceable>10</replaceable>,<replaceable>UID_MAX</replaceable>=<replaceable>499</replaceable>
doesn't work yet.
--- a/src/useradd.c
+++ b/src/useradd.c
@@ -1227,7 +1227,7 @@
{NULL, 0, NULL, '\0'}
};
while ((c = getopt_long (argc, argv,
- "b:c:d:De:f:g:G:hk:K:lmMNop:rR:P:s:u:U"
+ "b:c:d:De:f:g:G:hk:O:K:lmMNop:rR:P:s:u:U"
#ifdef WITH_SELINUX
"Z:"
#endif /* WITH_SELINUX */
@@ -1367,6 +1367,7 @@
kflg = true;
break;
case 'K':
+ case 'O': /* compatibility with previous Debian useradd */
/*
* override login.defs defaults (-K name=value)
* example: -K UID_MIN=100 -K UID_MAX=499

81
debian/patches/900_testsuite_groupmems vendored Normal file
View File

@@ -0,0 +1,81 @@
--- a/debian/passwd.install
+++ b/debian/passwd.install
@@ -9,6 +9,7 @@
usr/sbin/cppw
usr/sbin/groupadd
usr/sbin/groupdel
+usr/sbin/groupmems
usr/sbin/groupmod
usr/sbin/grpck
usr/sbin/grpconv
@@ -33,6 +34,7 @@
usr/share/man/*/man8/chpasswd.8
usr/share/man/*/man8/groupadd.8
usr/share/man/*/man8/groupdel.8
+usr/share/man/*/man8/groupmems.8
usr/share/man/*/man8/groupmod.8
usr/share/man/*/man8/grpck.8
usr/share/man/*/man8/grpconv.8
@@ -59,6 +61,7 @@
usr/share/man/man8/chpasswd.8
usr/share/man/man8/groupadd.8
usr/share/man/man8/groupdel.8
+usr/share/man/man8/groupmems.8
usr/share/man/man8/groupmod.8
usr/share/man/man8/grpck.8
usr/share/man/man8/grpconv.8
--- a/debian/passwd.postinst
+++ b/debian/passwd.postinst
@@ -31,6 +31,24 @@
exit 1
)
fi
+ if ! getent group groupmems | grep -q '^groupmems:[^:]*:99'
+ then
+ groupadd -g 99 groupmems || (
+ cat <<EOF
+************************ TESTSUITE *****************************
+Group ID 99 has been allocated for the groupmems group. You have either
+used 99 yourself or created a groupmems group with a different ID.
+Please correct this problem and reconfigure with ``dpkg --configure passwd''.
+
+Note that both user and group IDs in the range 0-99 are globally
+allocated by the Debian project and must be the same on every Debian
+system.
+EOF
+ exit 1
+ )
+# FIXME
+ chgrp groupmems /usr/sbin/groupmems
+ fi
;;
esac
--- a/debian/rules
+++ b/debian/rules
@@ -60,6 +60,7 @@
dh_installpam -p passwd --name=chsh
dh_installpam -p passwd --name=chpasswd
dh_installpam -p passwd --name=newusers
+ dh_installpam -p passwd --name=groupmems
ifeq ($(DEB_HOST_ARCH_OS),hurd)
# login is not built on The Hurd, but some utilities of passwd depends on
# /etc/login.defs.
@@ -87,3 +88,6 @@
chgrp shadow debian/passwd/usr/bin/expiry
chmod g+s debian/passwd/usr/bin/chage
chmod g+s debian/passwd/usr/bin/expiry
+ chgrp groupmems debian/passwd/usr/sbin/groupmems
+ chmod u+s debian/passwd/usr/sbin/groupmems
+ chmod o-x debian/passwd/usr/sbin/groupmems
--- /dev/null
+++ b/debian/passwd.groupmems.pam
@@ -0,0 +1,8 @@
+# The PAM configuration file for the Shadow 'groupmod' service
+#
+
+# This allows root to modify groups without being prompted for a password
+auth sufficient pam_rootok.so
+
+@include common-auth
+@include common-account

76
debian/patches/901_testsuite_gcov vendored Normal file
View File

@@ -0,0 +1,76 @@
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -1,6 +1,8 @@
AUTOMAKE_OPTIONS = 1.0 foreign
+CFLAGS += -fprofile-arcs -ftest-coverage
+
DEFS =
noinst_LTLIBRARIES = libshadow.la
--- a/libmisc/Makefile.am
+++ b/libmisc/Makefile.am
@@ -1,6 +1,8 @@
EXTRA_DIST = .indent.pro xgetXXbyYY.c
+CFLAGS += -fprofile-arcs -ftest-coverage
+
INCLUDES = -I$(top_srcdir)/lib
noinst_LIBRARIES = libmisc.a
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -7,6 +7,8 @@
suidperms = 4755
sgidperms = 2755
+CFLAGS += -fprofile-arcs -ftest-coverage
+
INCLUDES = \
-I${top_srcdir}/lib \
-I$(top_srcdir)/libmisc
--- a/debian/rules
+++ b/debian/rules
@@ -40,6 +40,12 @@
endif
export CFLAGS
+clean:: clean_gcov
+
+clean_gcov:
+ find . -name "*.gcda" -delete
+ find . -name "*.gcno" -delete
+
# Add extras to the install process:
binary-install/login::
dh_installpam -p login
--- a/lib/defines.h
+++ b/lib/defines.h
@@ -174,23 +174,9 @@
trust the formatted time received from the unix domain (or worse,
UDP) socket. -MM */
/* Avoid translated PAM error messages: Set LC_ALL to "C".
+ * This is disabled for coverage testing
* --Nekral */
-#define SYSLOG(x) \
- do { \
- char *old_locale = setlocale (LC_ALL, NULL); \
- char *saved_locale = NULL; \
- if (NULL != old_locale) { \
- saved_locale = strdup (old_locale); \
- } \
- if (NULL != saved_locale) { \
- (void) setlocale (LC_ALL, "C"); \
- } \
- syslog x ; \
- if (NULL != saved_locale) { \
- (void) setlocale (LC_ALL, saved_locale); \
- free (saved_locale); \
- } \
- } while (false)
+#define SYSLOG(x) syslog x
#else /* !ENABLE_NLS */
#define SYSLOG(x) syslog x
#endif /* !ENABLE_NLS */

22
debian/patches/README.patches vendored Normal file
View File

@@ -0,0 +1,22 @@
Small intro to the system for numbering the patches here...
-The 00xx-... patches are forwarded to upstream's git repository
-The 0xx_... series of patches are patches isolated from the latest
version of the shadow Debian package not using quilt in order to
separate upstream from Debian-specific stuff.
NO MORE PATCHES SHOULD BE ADDED IN THESE SERIES
-The 4xx series are patches which have been applied to Debian's shadow
and have NOT been accepted and/or applied upstream. These patches MUST be kept
even after resynced with upstream
-The 5xx series are patches which are applied to Debian's shadow
and will never be proposed upstream because they're too specific
This list SHOULD BE AS SHORT AS POSSIBLE
In short, while we are working towards synchronisation with upstream,
our goal is to make 0xx patches disappear by moving them either to 3xx
series (things already implemented upstream) or to 4xx series
(Debian-specific patches).

23
debian/patches/series vendored Normal file
View File

@@ -0,0 +1,23 @@
# CVE-2023-4641
0001-gpasswd-1-Fix-password-leak.patch
# CVE-2023-29383
0002-Added-control-character-check.patch
0003-Overhaul-valid_field.patch
# These patches are only for the testsuite:
#900_testsuite_groupmems
#901_testsuite_gcov
008_login_log_failure_in_FTMP
401_cppw_src.dpatch
# 402 should be merged in 401, but should be reviewed by SE Linux experts first
402_cppw_selinux
429_login_FAILLOG_ENAB
463_login_delay_obeys_to_PAM
501_commonio_group_shadow
502_debian_useradd_defaults
503_shadowconfig.8
505_useradd_recommend_adduser
506_relaxed_usernames
542_useradd-O_option

82
debian/rules vendored Executable file
View File

@@ -0,0 +1,82 @@
#!/usr/bin/make -f
# -*- mode: makefile; coding: utf-8 -*-
# Enable PIE, BINDNOW, and possible future flags.
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
# Adds extra options when calling the configure script:
DEB_CONFIGURE_EXTRA_FLAGS := --without-libcrack \
--mandir=/usr/share/man \
--with-libpam \
--with-yescrypt \
--enable-shadowgrp \
--enable-man \
--disable-account-tools-setuid \
--with-group-name-max-length=32 \
--without-acl \
--without-attr \
--without-su \
--without-tcb \
SHELL=/bin/sh
ifneq ($(filter nodoc,$(DEB_BUILD_PROFILES)),)
DEB_CONFIGURE_EXTRA_FLAGS += --disable-man
endif
# Set the default editor for vipw/vigr
CFLAGS += -DDEFAULT_EDITOR="\"sensible-editor\""
%:
dh $@
override_dh_auto_configure:
cp debian/HOME_MODE.xml man/login.defs.d/HOME_MODE.xml
dh_auto_configure -- $(DEB_CONFIGURE_EXTRA_FLAGS)
override_dh_install-arch:
ifneq ($(DEB_HOST_ARCH_OS),linux)
sed -i 's/session optional pam_keyinit.so/# Linux only # session optional pam_keyinit.so/' debian/login.pam
endif
dh_install -a
ifeq ($(DEB_HOST_ARCH_OS),hurd)
# /bin/login is provided by the hurd package.
rm -f debian/login/usr/bin/login
endif
override_dh_installpam:
# Distribute the pam.d files; unless for the commands with disabled PAM
# support
dh_installpam -p login
dh_installpam -p passwd --name=passwd
dh_installpam -p passwd --name=chfn
dh_installpam -p passwd --name=chsh
dh_installpam -p passwd --name=chpasswd
dh_installpam -p passwd --name=newusers
override_dh_builddeb-arch:
# uidmap
chmod u+s debian/uidmap/usr/bin/newuidmap
chmod u+s debian/uidmap/usr/bin/newgidmap
# login
# No real need for login to be setuid root
# chmod u+s debian/login/bin/login
chmod u+s debian/login/usr/bin/newgrp
# passwd
chmod u+s debian/passwd/usr/bin/chfn
chmod u+s debian/passwd/usr/bin/chsh
chmod u+s debian/passwd/usr/bin/gpasswd
chmod u+s debian/passwd/usr/bin/passwd
chgrp shadow debian/passwd/usr/bin/chage
chgrp shadow debian/passwd/usr/bin/expiry
chmod g+s debian/passwd/usr/bin/chage
chmod g+s debian/passwd/usr/bin/expiry
dh_builddeb -a
override_dh_auto_clean:
sed -i 's/# Linux only # //' debian/login.pam
dh_auto_clean
override_dh_clean:
dh_clean ./man/login.defs.d/HOME_MODE.xml

70
debian/shadowconfig vendored Normal file
View File

@@ -0,0 +1,70 @@
#!/bin/sh
# turn shadow passwords on or off on a Debian system
set -e
shadowon () {
set -e
if [ -n "$DPKG_ROOT" ] \
&& cmp "${DPKG_ROOT}/etc/passwd" "${DPKG_ROOT}/usr/share/base-passwd/passwd.master" 2>/dev/null \
&& cmp "${DPKG_ROOT}/etc/group" "${DPKG_ROOT}/usr/share/base-passwd/group.master" 2>/dev/null; then
# If dpkg is run with --force-script-chrootless and if /etc/passwd
# and /etc/group are unchanged, we avoid the chroot() call by manually
# processing the files. This produces bit-by-bit identical results
# compared to the normal case as shown by the CI setup at
# https://salsa.debian.org/helmutg/dpkg-root-demo/-/jobs
for f in passwd group; do
cp -a "${DPKG_ROOT}/etc/$f" "${DPKG_ROOT}/etc/$f-"
done
chmod 600 "${DPKG_ROOT}/etc/passwd-"
sed -i 's/^\([^:]\+\):\*:/\1:x:/' "${DPKG_ROOT}/etc/group" "${DPKG_ROOT}/etc/passwd"
[ -n "$SOURCE_DATE_EPOCH" ] && epoch=$SOURCE_DATE_EPOCH || epoch=$(date +%s)
sed "s/^\([^:]\+\):.*/\1:*:$((epoch/60/60/24)):0:99999:7:::/" "${DPKG_ROOT}/etc/passwd" > "${DPKG_ROOT}/etc/shadow"
sed "s/^\([^:]\+\):.*/\1:*::/" "${DPKG_ROOT}/etc/group" > "${DPKG_ROOT}/etc/gshadow"
touch "${DPKG_ROOT}/etc/.pwd.lock"
chmod 600 "${DPKG_ROOT}/etc/.pwd.lock"
else
pwck -q -r
grpck -r
pwconv
grpconv
fi
chown root:root "${DPKG_ROOT}/etc/passwd" "${DPKG_ROOT}/etc/group"
chmod 644 "${DPKG_ROOT}/etc/passwd" "${DPKG_ROOT}/etc/group"
chown root:shadow "${DPKG_ROOT}/etc/shadow" "${DPKG_ROOT}/etc/gshadow"
chmod 640 "${DPKG_ROOT}/etc/shadow" "${DPKG_ROOT}/etc/gshadow"
}
shadowoff () {
set -e
pwck -q -r
grpck -r
pwunconv
grpunconv
# sometimes the passwd perms get munged
chown root:root /etc/passwd /etc/group
chmod 644 /etc/passwd /etc/group
}
case "$1" in
"on")
if shadowon ; then
echo Shadow passwords are now on.
else
echo Please correct the error and rerun \`$0 on\'
exit 1
fi
;;
"off")
if shadowoff ; then
echo Shadow passwords are now off.
else
echo Please correct the error and rerun \`$0 off\'
exit 1
fi
;;
*)
echo Usage: $0 on \| off
;;
esac

1
debian/source/format vendored Normal file
View File

@@ -0,0 +1 @@
3.0 (quilt)

2
debian/tests/control vendored Normal file
View File

@@ -0,0 +1,2 @@
Tests: smoke
Restrictions: needs-root superficial

13
debian/tests/smoke vendored Executable file
View File

@@ -0,0 +1,13 @@
#!/bin/sh
set -e
echo "Adding an user works"
useradd shadow-test-user
grep '^shadow-test-user:x:' /etc/passwd
grep '^shadow-test-user:!:' /etc/shadow
echo "Removing an user works"
userdel shadow-test-user
! grep 'shadow-test-user' /etc/passwd
! grep 'shadow-test-user' /etc/shadow

3
debian/uidmap.install vendored Normal file
View File

@@ -0,0 +1,3 @@
bin/getsubids usr/bin
usr/bin/newuidmap
usr/bin/newgidmap

2
debian/uidmap.lintian-overrides vendored Normal file
View File

@@ -0,0 +1,2 @@
uidmap: elevated-privileges 4755 root/root [usr/bin/newgidmap]
uidmap: elevated-privileges 4755 root/root [usr/bin/newuidmap]

5
debian/uidmap.manpages vendored Normal file
View File

@@ -0,0 +1,5 @@
usr/share/man/*/man1/newgidmap.1
usr/share/man/*/man1/newuidmap.1
usr/share/man/man1/getsubids.1
usr/share/man/man1/newgidmap.1
usr/share/man/man1/newuidmap.1

4
debian/upstream/metadata vendored Normal file
View File

@@ -0,0 +1,4 @@
---
Bug-Database: https://github.com/shadow-maint/shadow/issues
Bug-Submit: https://github.com/shadow-maint/shadow/issues/new
Repository-Browse: https://github.com/shadow-maint/shadow

80
debian/upstream/signing-key.asc vendored Normal file
View File

@@ -0,0 +1,80 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
mQENBE+oKZQBCACz5WylGAr+eitZjuSigzR+y30W3E+gkU0DSNlBB3WlorOtmzMX
9F2d+z+ozJuez4NPqwfQ5y2ExKSbL8i1rwYmExZIzTDpm1Q6N3hG+vLbxwbrbsKT
qW9rPiXriU5yRwuvVJl4NOU6T/Pau3/VD8iFN7U4mVpNFVPlB8vCvDJ+07Z0xIH9
MXe8uaERG3v2EL7Mv8L5w05XEeuTT/CJiw6NdzwjZc1FymVoFjntetl8HaJ+5JCB
2ylAbnw/wZJHORgsLxZhOL6/zrJRG8GvjgB+1l8izgl4n0DOqjyyoQIZJ+mfuHR0
6wDqwvP5F9RZqCh8Md4hYujop5a0BKfAzLfdABEBAAG0IFNlcmdlIEhhbGx5biA8
c2VyZ2VoQGtlcm5lbC5vcmc+iQFOBBMBCgA4FiEEZtA4fbhdMg+ECBZtsXXPqY8Z
KvIFAl2r0d0CGwMFCwkIBwMFFQoJCAsFFgIDAQACHgECF4AACgkQsXXPqY8ZKvIM
nAgAiTpLlXuzyD4C+9I/yCA9N/BqK43jnMfJOl/Ky56vgJ/WbrFJLuO3wubMlRLD
3jurC6SK2g0TpygyoX2MjwZVT60Sq3ZcgIh71yyWHhtZ29NuUiKsKnajb9IlP+AM
1V0g9py41YdDUmAuC/5crqyK+8u1CVrB/is7Eym598gIl9nyGvaZrzgjG1cRCjzf
ZU8pRG+VPMr5Xla8rDKBZl+LcusV90eAUa0E/KVFS5N1dQ6HKckYXPSBN3DKHZy+
qKa1k7Dq0CnkTjQmjaMu3j5sdOXg4QUfhCHeLDFAtadNdP04I6g5KZRvC44XdQ1A
bxFMLyObhCsq/QxSh/nYrKsw0rQsU2VyZ2UgSGFsbHluIChrZXJuZWwub3JnKSA8
c2VyZ2VAaGFsbHluLmNvbT6JATgEEwECACIFAk+oKZQCGwMGCwkIBwMCBhUIAgkK
CwQWAgMBAh4BAheAAAoJELF1z6mPGSryYfEIAJviOHYwzXjnHWrsbQQ75rJq2wQ4
NlM5FRljskufCXtIz/DUpKKT3aqG3y7ywtEwl4ePofJmLbC0O5bZF9blgSSCV02z
zGdeUosAJsxumYHVi9CRHWsiAaNMX8gif9vePqz/iY/caPS4w4gBXJK8vLwvxToI
4CZDwIlMkMov//3HQ5v5OKfeqbA1rnsGI74vUw9Zt/Sqgudz5bY65693OqeRRWU6
tOH8zo4HkFew26Ydh80qAn1R7ALnk68zwfXj8vdyR9f05dEqbg/4thZWcjWC/Frn
QOjcTwKu5DnUCE937a1MPzt4t1FCYUHrqcLN99uzGuOD42o9/S+JAa2HWhe5AQ0E
T6gplAEIANz2xhKdYCPfLpAT2wY0NQVoqkAVSymulDwt4DTmeHdFTFgN3vmpzR7C
0ZHX5KWCl6EpB9JdVBPbniMzmUlqc0M9h9+T2T2UzCBJWhM/ZBqzN8OCKvtYopC6
Pd0HCeZgd0hjaar55oCH/VwJT/+CB1oBOjgQ1CEpMAiK6+IYoGlhf/McCU8i/IWM
RGwGarTChAq8MayhAQ5vHXO7UZpNZ5NIgScfJGFqMxCspQDFIKH1OHZWPrE6G/H1
MrqWL55zFi64FU/ReWWDUZ2hAELwpYhMM6tTXyy6PW8QYrhg7NBA/EA2zojzVK9V
113ZuHvVzICOEevWS6DDc9ZC8t7jIccAEQEAAYkBHwQYAQIACQUCT6gplAIbDAAK
CRCxdc+pjxkq8mtUCACLsJVcm3yZmI37LPCJlWXOuRFB24HZyC8ZkPoebcwlzVpU
DcaHS0lwuj5J260I7MpKY9FKydZPX0QrGkMytz2P3s+L1IOsbJQ7HsHPyAqNMjoF
x880CEDIivkav1IPJPHq1R25KaYSuu+NhY/X8nPuykic3bBB3llVFK9L+s1kaHU1
TfWh5aVumRTQmkZtmQxe/gkjL7VxofnPOtxEwL0kXF+b9th1qr6MeEy5+dLLRBrd
CAmQq/PHO+Ugb0FpSa415H5egD0hIQxDMBherElBIvbwSv0hVo2C3PmaoIx/y+4N
M8amRjKoac6O1A0Xr3nCIDsICvf9ZN6ISXqQqwEWuQENBF2r4KYBCADpPHTIGLuE
O4VOOtRAvzLcSIsEg/Iu5Ys1AfEs8RT58loJLxthYpOZVIgyZhLLS3Qpt3aWqYib
nc3E4JfQG6OMYKKvlWykQj5NNNeyRNmzUmxd05sYWhwB4gb4VP1PpEc/pQ51BNUp
ocxndcp9ZAr5hvTJlo4kD5Bvby8d3eOgwZ6hzusJ9QBXioirsgrNYoL7U9qs/tvo
s2PbcnfrNjveftQg0LJakPCEDT9NHBUyZY7JN3ZmV0G+kpMcUzRvhP9rzHVGYVG2
+1CBVDphXpGbxmTCH/bDTCRglSDfr8jDIRNTANe4iRsbQBVanjDeMAPfjAOM+bnZ
HoHW8Z1sS7YNABEBAAGJAmwEGAEKACAWIQRm0Dh9uF0yD4QIFm2xdc+pjxkq8gUC
XavgpgIbAgFACRCxdc+pjxkq8sB0IAQZAQoAHRYhBKm9P/FwcrbbeA/PlDVw2hcn
Cs4kBQJdq+CmAAoJEDVw2hcnCs4k9nwH/j4EtPJvVIpLPS1gKfQaWolZ9El8f12I
UyZka+/FKwh6IGbLQBE9oWi6lsDCKMjqYnuVbrcYtll0Lc7CdQR1fSwfzT95xU/z
/WrGV8xbQQUULA8MVuYottIZByhtdDNvkBogtLLH4tc40BSm2jqcb6LuT4vswULk
9UUOuTUKxWECOM3ci2554l9hGaQ4qSxSXhrPPNR0Le0Y8ElLQI11vTP6UEA6fyVh
I6eg90eMrNP2OHCW5QnIuazPFJ/2lb12BgahKbHXYR/cRqZNCU1rRgH8NWtKL0b9
/Q9bsBvLl00IlA0xhpZZV4c6S5HCQbU/FXqIIgBmQvfaWzVuQVPHGxcjhwf/UPxw
ZiKpo+TGL0GQkP/3H/QH/YHPqNmAOPyoNqUn/RimYs3dyfDTtOTumErF6iLAa9pS
Bo8OJJZBOxskXfylTEDsaxWPbxXHUsULpJZxVHoh+90RT957Hc8PjEa+B3KW5vRd
HwpwemlNYKn++Hv+kIr+ndqauw88s8e2QpvAUS09h2WxXmEOhrHTiGIFs1l6rq5P
+vK5RNQ+xaPSivZZqyzsK6+3s9aTixwPKTw4WYcSOQ92YQ7C1Lsd3GglHxXT/1aW
iYoxjXNR2LfJpOFNUG+mZWn02G++RfXetb/PzPxwE2eSqU/YK9GhpH8KbcwsJQSf
MqXESPQLlFAwkwFyBrkBDQRdq+FiAQgAx36JU5PHoULcaG/Y8BJ5eyfG1v0B/5oG
M1/SbxYpMuAhL3FBvGA0ly0boASm2QF8BK1EsgDmo5rSJgimQnKcQ9uicnXaq+2U
npvqDWHcBOFhdAGNNDz1f6uUXNUZCyJ6pqeMj5+JI1sNqs4tBRt4k6uR8W6Svfij
nGWgoQ0v+TC7WUMb9jYYzFlEt7VpUlRdCDgWISJoT4s0VutQfF01HY8The4kd62d
4cSJP/Nem8QXgwKKyMlMYAcQLjeuXs6odT8YN1xbS53J/2/fcsIVZNEuWAoodXJS
sdWFXNsHbPX7GfHGH9tBeOC20g/dmqfwteIudQ1Tn56MmK4DB3ByfwARAQABiQE2
BBgBCgAgFiEEZtA4fbhdMg+ECBZtsXXPqY8ZKvIFAl2r4WICGwwACgkQsXXPqY8Z
KvL39Qf/S86hi7pvntTGwk1Hl0IyGw9hXsUUhf26PlcgOj9tC3ZFMxrY+4oxtwMY
g2wOodeo4WlmrlYMeGrRwSgiqGWSCPW4LvsssbDuZbKJoxshNAOVHM/1z1CPc2QY
0pboVPBHss+HjeSBfKA7VK1UAMh0dqmLD2EjnasXwWs1jLig1FeFRwM9+fTdqS4h
sXvmxoIdpg7/GhB4SoT7SpXzZX8VPm0hIzKCTOCr73NSGIDhdCPGJWFIrZwCLSJR
Ndl5zIS54uTrNn2+QPwllqBKKtMWDG0uueFWlQEkw6B9+/mOY79K6fiz7clsB2Jy
awWrD3SFaYY3BrQXkdnbSsRUDCR23bkBDQRdq+GrAQgAwoQJz9/x/T8J6cqTPfBc
YS2UbjpguO1O3a1Zhd231nTiKFVph49qcW2+66PI7cjeNRA2/Z+hTUK065XJ9mpf
5NeqzQFQ9dbBMKQw7Jz98RDm7QEUmNZi2avaxljgCDWO4mybMjuDdycwsv0tuOls
dGu4UhPmue/03Abs9RGfVecK3211n93SHu8Ro2QPfuPruuPLxQSVVVzBUaGwJHwK
SrBnpnClDET3DKr9PFv6/yoQlyiFzlJZtiXvQC3Mc5uiSRbpy9GM3P4FwSmc9+7X
SVs87/xrXoH3pUN2MMY+PayF82wUtpPwy0V8MB2NlEaWt+/danioVGVJQauMie84
swARAQABiQE2BBgBCgAgFiEEZtA4fbhdMg+ECBZtsXXPqY8ZKvIFAl2r4asCGyAA
CgkQsXXPqY8ZKvJbjAf/deT3H5ZTF4k22b7mE5978oGxdBRsHP4kcYWN31hDD3yN
S8803VF+C0p/fVv4UMpuT9y771s0tJ+EoPPYARERWKiApFxWMkPL1eaZZB3Wij4z
gYc1iGki3lkrV3cJE4iKqKwtCyKHrj+CX2BugxyxS4dGRzeFUpRva6YJk8bfuFR0
C86Y4xLv/QoIZLmled+xf7N6BIqOmzXayITFheJGmTFsX0xbt6vr/q6S8cvHiMem
CJnlKO3/06pSIA6BRJB+GkBQmVovF70TeeP4AGzstX4U6O0jriySqCptijlVehsV
ImGoVOiDX4qYzOd+x0po5lC5mHe/dO0ZTOTGgxQc9w==
=Ruhn
-----END PGP PUBLIC KEY BLOCK-----

6
debian/watch vendored Normal file
View File

@@ -0,0 +1,6 @@
version=4
opts=downloadurlmangle=s/archive\/refs\/tags\/(.*)\.tar\.gz/releases\/download\/$1\/@PACKAGE@-$1\.tar\.xz/,\
pgpsigurlmangle=s/$/.asc/,\
dversionmangle=s/\+dfsg1//,repacksuffix=+dfsg1 \
https://github.com/shadow-maint/@PACKAGE@/tags \
/shadow-maint/@PACKAGE@/archive/refs/tags/([^v].*)\.tar\.gz

View File

@@ -1,4 +1,5 @@
# This is a dummy Makefile.am to get automake work flawlessly,
# and also cooperate to make a distribution for `make dist'
EXTRA_DIST = HOWTO README.limits
EXTRA_DIST = HOWTO README.limits \
README.platforms WISHLIST console.c.spec.txt cracklib26.diff

View File

@@ -141,8 +141,6 @@ AWK = @AWK@
CC = @CC@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CMOCKA_CFLAGS = @CMOCKA_CFLAGS@
CMOCKA_LIBS = @CMOCKA_LIBS@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CSCOPE = @CSCOPE@
@@ -161,7 +159,6 @@ EGREP = @EGREP@
ETAGS = @ETAGS@
EXEEXT = @EXEEXT@
FGREP = @FGREP@
FILECMD = @FILECMD@
GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
GMSGFMT = @GMSGFMT@
GMSGFMT_015 = @GMSGFMT_015@
@@ -177,15 +174,9 @@ INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBACL = @LIBACL@
LIBADD_DL = @LIBADD_DL@
LIBADD_DLD_LINK = @LIBADD_DLD_LINK@
LIBADD_DLOPEN = @LIBADD_DLOPEN@
LIBADD_SHL_LOAD = @LIBADD_SHL_LOAD@
LIBATTR = @LIBATTR@
LIBAUDIT = @LIBAUDIT@
LIBBSD = @LIBBSD@
LIBBSD_CFLAGS = @LIBBSD_CFLAGS@
LIBBSD_LIBS = @LIBBSD_LIBS@
LIBCRACK = @LIBCRACK@
LIBCRYPT = @LIBCRYPT@
LIBECONF = @LIBECONF@
LIBICONV = @LIBICONV@
@@ -201,7 +192,6 @@ LIBSUBID_ABI = @LIBSUBID_ABI@
LIBSUBID_ABI_MAJOR = @LIBSUBID_ABI_MAJOR@
LIBSUBID_ABI_MICRO = @LIBSUBID_ABI_MICRO@
LIBSUBID_ABI_MINOR = @LIBSUBID_ABI_MINOR@
LIBSYSTEMD = @LIBSYSTEMD@
LIBTCB = @LIBTCB@
LIBTOOL = @LIBTOOL@
LIPO = @LIPO@
@@ -210,8 +200,6 @@ LN_S = @LN_S@
LTLIBICONV = @LTLIBICONV@
LTLIBINTL = @LTLIBINTL@
LTLIBOBJS = @LTLIBOBJS@
LT_DLLOADERS = @LT_DLLOADERS@
LT_DLPREOPEN = @LT_DLPREOPEN@
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
@@ -234,9 +222,6 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
POSUB = @POSUB@
RANLIB = @RANLIB@
SED = @SED@
@@ -308,7 +293,9 @@ target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
EXTRA_DIST = HOWTO README.limits
EXTRA_DIST = HOWTO README.limits \
README.platforms WISHLIST console.c.spec.txt cracklib26.diff
all: all-am
.SUFFIXES:

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