3d641d62fb- Update to 4.18.0: * CI: purge man-db #1241 * passwd: document exit code when PAM has errored #1244 * Man patches #1175 * Quick fix: define E_PAM_ERR in lib/pam_pass.c #1245 * Accept /usr/sbin/nologin as an alternate to /sbin/nologin #1246 * Add LOGIN_ENV_SAFELIST to FOREIGNDEFS #1248 * ci: add gawk as a fedora dependency #1252 * man/useradd.8.xml: fix the CREATE_HOME description #1251 * lib/getdate.y: Restrict the date formats that we support #1238 * newuidmap: better error logging on failure #1254 * Extend basic test cases to check shadow and gshadow entries #1237 * lib/sizeof.h: Make sure STRLEN() only accepts string literals #1260 * Add strprefix(), and use it instead of its pattern #1152 * src/: Simplify, using strpbrk(3) #1167 * lib/string/strdup/: STRNDUPA(): Reimplement in terms of strndupa(3) #1189 * Remove dead beef #1230 * lib/atoi/a2i/: Simplify these macros #1137 * strtolower(): Add API, and use it instead of its pattern #1211 * lib/: sget*ent(): Simplify #1146 * fields #1150 * yacc(1) is a dead language; bury it deep in the ground #1217 * Test expiration date #1233 * [scp] Add strcaseprefix(), and use it instead of its pattern #1262 * valid_field(): Improve readability #1208 * lib/, src/, tests/: Use the standard countof() instead of our NITEMS() #1259 * lib/fs/mkstemp/, src/: Move fmkomstemp() to separate files under lib/fs/mkstemp/, and split into mkomstemp() #1139 * [x][v]aprintf(): Add APIs, and use them instead of [x][v]asprintf(3) #1168 * lib/get_pid.c: pid_t is a signed integer #1264
devel
Michael Vetter2025-06-25 04:31:06 +00:00
ef2726a1afAccepting request 1268156 from Base:SystemAna Guerrero2025-04-10 19:57:13 +00:00
69b0472a77- shadow-util-linux.patch: util-linux-2.41 introduced new variable: LOGIN_ENV_SAFELIST. Recognize it and update dependencies. The patch includes gh/shadow-maint/shadow/pull#1248. - shadow-login_defs-check-login_defs.lst: Make the util-linux.spec multibuild file compatible with quilt. Make it working with new quilt.Michael Vetter2025-04-09 12:16:52 +00:00
9499fa5aa4Accepting request 1254773 from Base:SystemAna Guerrero2025-03-24 12:25:33 +00:00
98317afee4- Update o 4.17.4: * Revert "lib/, src/: Use local time for human-readable dates" * lib/getdate.y: Ignore time-zone information and use UTC * src/chfn.c: Partially revert "lib/, src/: Use strsep(3) instead of its pattern" * src/chfn.c: Use stpsep() instead of its pattern * src/chfn.c: Add local variable to refer to the separated field * src/chfn.c: copy_field(): Rename local variable * lib/commonio.c: Rely on the POSIX.1-2008 behavior of realpath(3) * lib/fs/readlink/: readlinknul(): Use ssize_t to simplify * autogen.sh: Promote -Wsign-compare to an error * lib/sizeof.h: ssizeof(): Add signed variant of sizeof * src/lastlog.c: Use ssizeof() to avoid a -Wsign-compare diagnostic * tests/unit/test_xasprintf.c: Fix sign-mismatch diagnostic * configure.ac: stop checking for utmp location * configure.ac: be deterministic about passwd location * lib/, src/: update audit messages * lib/: audit function for groups * src/: update group audit messages * doc/: Remove list of distributionsMichael Vetter2025-03-20 06:54:14 +00:00
420307f9ea- Update to 4.17.3: * chsh: do not warn about blank shell * lib/: Use strisdigit() instead of its pattern * lib/string/ctype/strisascii/: strisdigit(): Add function * lib/string/: Add comments expanding the letter-soup API names * lib/basename.c: Basename(): Use stprcspn() instead of its pattern * lib/string/strspn/, lib/, src/: stprspn(), strrspn_(): Split API into function and macro * lib/string/strspn/, lib/, src/: Move *spn() APIs to separate subdir * lib/string/strchr/: strrcspn(), stprcspn(): Add function and macro * src/useradd.c: Use !strcaseeq() instead of its pattern * lib/, src/: Use strcaseeq() instead of its pattern * lib/string/strcmp/: strcaseeq(): Add function * man/useradd.8.xml: Document new exit code 19 (E_BAD_NAME) * src/useradd.c: E_BAD_NAME: Use a different error code for bad login names * src/useradd.c: create_home(): Use !streq() instead of its pattern * lib/chkname.c: is_valid_name(): Use streq() instead of its pattern * configure.ac, lib/: Use __has_include(<gshadow.h>) instead of HAVE_GSHADOW_H * configure.ac: Remove unused AC_CHECK_HEADERS() checks * configure.ac, lib/: Use __has_include(<sys/capability.h>) instead of HAVE_SYS_CAPABILITY_H * lib/idmapping.c: Unconditionally include <sys/prctl.h> * lib/: Use __has_include(<security/openpam.h>) instead of HAVE_SECURITY_OPENPAM_H * lib/: Use __has_include(<security/pam_misc.h>) instead of HAVE_SECURITY_PAM_MISC_H * configure.ac, lib/: Use __has_include(<sys/random.h>) instead of HAVE_SYS_RANDOM_H * configure.ac, lib/: Use __has_include(<crypt.h>) instead of HAVE_CRYPT_H * lib/, src/: motd(): Report errors instead of exiting from library code * lib/motd.c: motd(): Invert logic to reduce indentation * lib/, src/, doc/: Remove pw_auth()'s $3 as dead code * lib/pwauth.*: PW_{ADD,CHANGE,DELETE,FTP,REXEC}: Remove dead code * lib/, src/, doc/: Remove dead code * src/vipw.c: Restore the original terminal pgrp after editingMichael Vetter2025-02-24 17:47:40 +00:00
faf7390363Accepting request 1238984 from Base:SystemAna Guerrero2025-01-21 20:09:56 +00:00
e6d68f710a- bsc#1235453: Set SYS_{UID,GID}_MIN to 201: After repeated similar requests to change the ID ranges we set the above mentioned value to 201. The max value will stay at 499. This range should be sufficient and will give us leeway for the future. It's not straightforward to find out which static UIDs/GIDs are used in all packages. Update shadow-login_defs-suse.patchMichael Vetter2025-01-20 10:26:02 +00:00
a70f8202f6Accepting request 1237059 from Base:SystemAna Guerrero2025-01-14 15:21:06 +00:00
b485849e2a- Update to 4.17.2: * src/login_nopam.c: Fix compiler warnings #1170 * lib/chkname.c: Put limits for LOGIN_NAME_MAX and sysconf(_SC_LOGIN_NAME_MAX) #1169 * Use HTTPS in link to Wikipedia article on password strength #1164 * lib/attr.h: use C23 attributes only with gcc >= 10 #1172 * login: Fix no-pam authorization regression #1174 * man: Add Portuguese translation #1178 * Update French translation #1177 * Add cheap defense mechanisms #1171 * Add Romanian translation #1176Michael Vetter2025-01-11 16:38:29 +00:00
3fe1d7e250Accepting request 1234180 from Base:SystemAna Guerrero2025-01-02 18:19:11 +00:00
1d046b70ccAccepting request 1233577 from Base:SystemAna Guerrero2024-12-30 11:50:27 +00:00
2ad7a94d8c- Update to 4.17.0: * Fix the lower part of the domain of csrand_uniform() * Fix use of volatile pointer * Use 'dist-hook' to clean up <tests/unit/Makefile> * Use str2[u]l() instead of atoi(3) * Use a2i() in various places * Fix const correctness * Use uid_t for holding UIDs (and GIDs) * Move all sprintf(3)-like APIs to a subdirectory * Move all copying APIs to a subdirectory * Fix forever loop on ENOMEM * Fix REALLOC() nmemb calculation * Remove id(1) * Remove groups(1) * Use local time for human-readable dates * Use %F instead of %Y-%m-%d with strftime(3) * is_valid{user,group}_name(): Set errno to distinguish the reasons * Recommend --badname only if it is useful * Add fmkomstemp() to fix mode of </etc/default/useradd> * Fix use-after-free bug in sgetgrent() * Update Catalan translation * Remove references to cppw, cpgr * groupadd, groupmod: Update gshadow file with -U * Added option -a for listing active users only, optimized using if aflg,return * Added information in lastlog man page for new option '-a' * Plenty of code cleanup and clarificationsMichael Vetter2024-12-27 16:21:20 +00:00
826df7f957- Update to 4.16.0: * The shadow implementations of id(1) and groups(1) are deprecated in favor of the GNU coreutils and binutils versions. They will be removed in 4.17.0. * The rlogind implementation has been removed. * The libsubid major version has been bumped, since it now requires specification of the module's free() implementation. - Update shadow-login_defs-suse.patch - Add shadow-4.16.0-econf.patch: Replace deprecated econf_readDirs with econf_readConfigMichael Vetter2024-06-19 07:13:11 +00:00
467ea622d2Accepting request 1161093 from Base:SystemAna Guerrero2024-03-25 20:06:06 +00:00
57303d29a0- Update to 4.15.1: * Fix a bug that caused spurious error messages about unknown login.defs configuration options #967 * Adding checks for fd omission #964 * Use temporary stat buffer #974 * Fix wrong french translation #975 - Drop shadow-4.15.0-fix-definition.patchMichael Vetter2024-03-24 09:13:40 +00:00
85fe6a4a20Accepting request 1159987 from Base:SystemAna Guerrero2024-03-22 14:15:59 +00:00
0f42921987- Add shadow-4.15.0-fix-definition.patch: Fix error messages about config options. See gh/shadow-maint/shadow#967Michael Vetter2024-03-21 06:39:57 +00:00
413dcfbcf9- Update to 4.15.0 * libshadow: + Use utmpx instead of utmp. This fixes a regression introduced in 4.14.0. + Fix build error (parameter name omitted). * Build system: + Link correctly with libdl. + Install pam configs for chpasswd(8) and newusers(8) when using ./configure --with-libpam --disable-account-tools-setuid. + Merge libshadow and libmisc into a single libshadow. This fixes problems in the linker, which were reported at least in Gentoo. + Fix build with musl libc. + Support out of tree builds * useradd(8): + Set proper SELinux labels for def_usrtemplate - Update Serge Hallyns GPG key - Update shadow-login_defs-unused-by-pam.patchMichael Vetter2024-03-10 07:16:34 +00:00
de9c0c0e13Accepting request 1154375 from Base:SystemAna Guerrero2024-03-04 20:24:37 +00:00
a62399592e- Update to 4.14.6: * login(1): + Fix off-by-one bugs. * passwd(1): + Don't silently truncate passwords of length >= 200 characters. Instead, accept a length of PASS_MAX, and reject longer ones. * libshadow: + Fix calculation in strtoday(), which caused a wrong half-day offset in some cases (bsc#1176006) + Fix parsing of dates in get_date() (bsc#1176006) + Use utmpx instead of utmp. This fixes a regression introduced in 4.14.0.Michael Vetter2024-03-03 06:16:59 +00:00
8122d2daffAccepting request 1146473 from Base:SystemAna Guerrero2024-02-16 20:45:28 +00:00
504a5a8a2a- Update to 4.14.5: * Build system: + Fix regression introduced in 4.14.4, due to a typo. chgpasswd had been deleted from a Makefile variable, but it should have been chpasswd. - Remove shadow-4.14.4-chgpasswd-typo.patchMichael Vetter2024-02-13 18:46:23 +00:00
b61dc19e89Accepting request 1146447 from home:jubalh:branches:Base:SystemMichael Vetter2024-02-13 15:32:50 +00:00
0703facd01Accepting request 1139074 from Base:SystemAna Guerrero2024-01-17 21:14:09 +00:00
42f26e4728Accepting request 1137739 from Base:SystemAna Guerrero2024-01-11 20:04:31 +00:00
ad60077eda- bsc#1199026 bsc#1203823: Remove pam_keyinit from PAM configuration. This was introduced for bsc#1144060.Michael Vetter2024-01-09 14:17:29 +00:00
ed667551d3Accepting request 1121084 from Base:SystemAna Guerrero2023-10-31 19:24:26 +00:00
f19bcfd712- Update to 4.14.2: * libshadow: + Fix build with musl libc. + Avoid NULL dereference. + Update utmp at an initial login * useradd(8): + Set proper SELinux labels for def_usrtemplate * Manual: + Document --prefix in chage(1), chpasswd(8), and passwd(1) - Drop upstreamed shadow-4.14.0-selinux-labels.patchMichael Vetter2023-10-30 07:27:10 +00:00
8cdab85ffcAccepting request 1115994 from Base:SystemAna Guerrero2023-10-06 19:11:40 +00:00
c317274c66- Update to 4.14.1: Build system: Merge libshadow and libmisc into a single libshadow. This fixes problems in the linker, which were reported at least in Gentoo. #791 - Add Alejandro Colomar (new stable branch maintainer) to shadow.keyringMichael Vetter2023-10-06 08:44:42 +00:00
d61b4112ddAccepting request 1114284 from Base:SystemAna Guerrero2023-10-02 18:04:17 +00:00
8a856d91acAccepting request 1114040 from home:jsegitz:branches:Base:SystemMichael Vetter2023-09-29 08:42:12 +00:00
89460a18eaAccepting request 1104351 from Base:SystemAna Guerrero2023-08-18 17:26:58 +00:00
2745f98eaf- Remove dependency on libbsd: On Tumbleweed we have glibc 2.38 already thus string functions like strlcpy will be present and won't be needed from libbsd. readpassphrase() is then the only function from libbsd not present. Upstream shadow has an in tree copy of it, that is used when the --without-libbsd flag is passed along. By relying on glibc 2.38 we don't need to add libbsd and libmd to our ring0 but can't easily upgrade on SLE.Michael Vetter2023-08-17 10:17:53 +00:00
1108d9a8b3- This release depends either on libbsd or on glibc >= 2.38 which only recently got released. libbsd (and libmd) would be new packages in our ring0Michael Vetter2023-08-17 07:07:20 +00:00
87279e85bb* configure: add with-libbsd option * Code cleanup * Replace utmp interface #757 * new option enable-logind #674 * shadow userdel: add the adaptation to the busybox ps in 01-kill_user_procs.sh * chsh: warn if root sets a shell not listed in /etc/shells #535 * newgrp: fix potential string injection * lastlog: fix alignment of Latest header * Fix yescrypt support #748 * chgpasswd: Fix segfault in command-line options * gpasswd: Fix password leak * Add --prefix to passwd, chpasswd and chage #714 (bsc#1206627) * usermod: fix off-by-one issues #701 * ch(g)passwd: Check selinux permissions upon startup #675 * sub_[ug]id_{add,remove}: fix return values * chsh: Verify that login shell path is absolute #730 * process_prefix_flag: Drop privileges * run_parts for groupadd and groupdel #706 * newgrp/useradd: always set SIGCHLD to default * useradd/usermod: add --selinux-range argument #698 * sssd: skip flushing if executable does not exist #699 * semanage: Do not set default SELinux range #676 * Add control character check #687 * usermod: respect --prefix for --gid option * Fix null dereference in basename * newuidmap and newgidmap: support passing pid as fd * Prevent out of boundary access #633 * Explicitly override only newlines #633 * Correctly handle illegal system file in tz #633 * Supporting vendor given -shells- configuration file #599Michael Vetter2023-08-17 07:04:09 +00:00
d8c5f764fa- Dont build lastlog (lastlog.legacy) anymore since we use lastlog2 by default now.Michael Vetter2023-08-14 13:58:58 +00:00
3a9edf4780- Remove scripts that claim to be config but are in /usr (boo#1191578) * userdel-script.patch * useradd-script.patch * useradd.local * userdel-post.local * userdel-pre.localMichael Vetter2023-02-16 09:24:10 +00:00
e2af94b0edAccepting request 1065945 from home:lnussel:branches:Base:SystemMichael Vetter2023-02-16 09:21:12 +00:00
8c1e3ce264- Update to 4.13: * useradd.8: fix default group ID * Revert drop of subid_init() * Georgian translation * useradd: Avoid taking unneeded space: do not reset non-existent data in lastlog * relax username restrictions * selinux: check MLS enabled before setting serange * copy_tree: use fchmodat instead of chmod * copy_tree: don't block on FIFOs * add shell linter * copy_tree: carefully treat permissions * lib/commonio: make lock failures more detailed * lib: use strzero and memzero where applicable * Update Dutch translation * Don't test for NULL before calling free * Use libc MAX() and MIN() * chage: Fix regression in print_date * usermod: report error if homedir does not exist * libmisc: minimum id check for system accounts * fix usermod -rG x y wrongly adding a group * man: add missing space in useradd.8.xml * lastlog: check for localtime() return value * Raise limit for passwd and shadow entry length * Remove adduser-old.c * useradd: Fix buffer overflow when using a prefix * Don't warn when failed to open /etc/nsswitch.conf - Remove patches we took from upstream pre-release: * shadow-copytree-usermod-fifo.patch * shadow-chage-format.patchMichael Vetter2022-11-09 13:35:08 +00:00
b7b2971a9a- Update to 4.12.3: Revert removal of subid_init, which should have bumped soname. So note that 4.12 through 4.12.2 were broken for subid users.Michael Vetter2022-08-22 14:01:13 +00:00
c714985a2e- Update to 4.12.1: * Fix uk manpages - Remove shadow-4.12-remove-uk.patch: fixed upstreamMichael Vetter2022-08-15 17:45:21 +00:00
ccb51bf365- Update to 4.12: * Add absolute path hint to --root * Various cleanups * Fix Ubuntu release used in CI tests * add -F options to userad * useradd manpage updates * Check for ownerid (not just username) in subid ranges * Declare file local functions static * Use strict prototypes * Do not drop const qualifier for Basename * Constify various pointers * Don't return uninitialized memory * Don't let compiler optimize away memory cleaning * Remove many obsolete compatibility checks and defines * Modify ID range check in useradd * Use "extern "C"" to make libsubid easier to use from C++ * French translation updates * Fix s/with-pam/with-libpam/ * Spanish translation updates * French translation fixes * Default max group name length to 32 * Fix PAM service files without-selinux * Improve manpages - groupadd, useradd, usermod - groups and id - pwck * Add fedora to CI builds * Fix condition under which pw_dir check happens * logoutd: switch to strncat * AUTHORS: improve markdown outputMichael Vetter2022-08-12 06:09:36 +00:00
0ca771d496Accepting request 993912 from home:kukuk:branches:Base:SystemMichael Vetter2022-08-09 09:45:37 +00:00