Opened 11 months ago
Closed 10 months ago
#5617 closed enhancement (fixed)
shadow-4.17.1
| Reported by: | Bruce Dubbs | Owned by: | lfs-book |
|---|---|---|---|
| Priority: | normal | Milestone: | 12.3 |
| Component: | Book | Version: | git |
| Severity: | normal | Keywords: | |
| Cc: |
Description
New minor version.
Change History (6)
comment:1 by , 10 months ago
comment:3 by , 10 months ago
| Resolution: | fixed |
|---|---|
| Status: | closed → reopened |
| Summary: | shadow-4.17.0 → shadow-4.17.1 |
Now version 1.17.1.
comment:6 by , 10 months ago
| Resolution: | → fixed |
|---|---|
| Status: | reopened → closed |
Note:
See TracTickets
for help on using tickets.

4.17.0
lib/csrand.c: Fix the lower part of the domain of csrand_uniform() tests/unit/test_xasprintf.c: Cosmetic tests/unit/test_xasprintf.c: Fix use of volatile pointer Makefile.am: Use 'dist-hook' to clean up <tests/unit/Makefile> lib/typetraits.h: Add macros that give information about a type tests/unit/test_typetraits.c: Add tests for typetraits.h macros src/: Use str2[u]l() instead of atoi(3) lib/get_gid.c: get_gid(): Reimplement in terms of a2i() lib/, libsubid/, po/, src/: get_gid(): Move function to "atoi/getnum.h" lib/: Don't open-code get_gid() lib/get_pid.c: get_pid(): Reimplement in terms of a2i() lib/: get_pid(): Move function to "atoi/getnum.h" lib/atoi/getnum.[ch]: get_fd(): Add function for parsing a file descriptor from a string lib/get_pid.c: get_pidfd_from_fd(): Don't open-code get_fd() src/usermod.c: getulong_range(): Reimplement in terms of a2ul() lib/get_uid.c: get_uid(): Reimplement in terms of a2i() lib/, po/, src/: get_uid(): Move function to "atoi/getnum.h" lib/limits.c: setrlimit_value(): Reimplement in terms of a2i() src/usermod.c: Fix const correctness src/get_subid_owners.c: Use uid_t for holding UIDs (and GIDs) lib/string/sprintf/, lib/, src/, tests/: Move all sprintf(3)-like APIs to a subdirectory lib/string/strcpy/, lib/, src/, tests/: Move all copying APIs to a subdirectory src/su.c: save_caller_context(): Remove unused parameter src/logoutd.c: Remove unused variable src/login.c: Remove dead code lib/, src/: Reduce scope of local variables lib/shadow.c: my_sgetspent(): Clarify that we're assigning an empty string lib/getdate.y: NULL doesn't need a cast lib/, src/: Always pass NULL to time(2) lib/failure.c: failprint(): Remove dead code lib/, src/: Reduce scope of local variables lib/shadow.c: my_sgetspent(): Clarify that we're assigning an empty string lib/getdate.y: NULL doesn't need a cast lib/, src/: Always pass NULL to time(2) lib/failure.c: failprint(): Remove dead code lib/, src/: Add missing include lib/: Use REALLOCF() instead of its pattern lib/commonio.c: commonio_open(): MALLOC() and REALLOCF() already set ENOMEM lib/, src/: Use strchrnul(3) instead of its pattern src/useradd.c: tallylog_reset(): Use Basename() instead of its pattern lib/, src/: Use strsep(3) instead of its pattern lib/gshadow.c: build_list(): Fix forever loop on ENOMEM lib/gshadow.c: build_list(): Fix REALLOC() nmemb calculation src/groupmems.c: Fix number of elements in allocation src/: Use xasprintf() instead of its pattern lib/string/strcpy/strncat.[ch]: STRNCAT(): Add macro lib/string/strdup/: XSTRNDUP(), STRNDUPA(): Add macros lib/utmp.c: Use XSTRNDUP() instead of its pattern lib/utmp.c: prepare_utmp(): Use xstrdup() instead of its pattern src/newusers.c: Exit on ENOMEM, by calling xstrdup() instead of strdup(3) src/logoutd.c: Use STRNDUPA() instead of its pattern src/logoutd.c: Use STRNCAT() instead of its pattern lib/string/strcpy/zustr2stp.[ch], tests/: Remove ZUSTR2STP() lib/string/strdup/xstrdup.[ch], lib/, src/: Move xstrdup() to its own file lib/alloc.[ch]: xmalloc(): Remove unused function lib/alloc/, lib/, src/, tests/: Organize the allocation APIs in a new subdirectory lib/: Use multi-line macro definitions lib/: Use [[gnu::alloc_size(...)]] on allocation functions src/: Remove dead code lib/gshadow.c: Use XREALLOC() instead of silently continuing on ENOMEM lib/attr.h: Use C23-style attributes lib/idmapping.c: Use long constants in prctl(2), and remove 0s Remove id(1) Remove groups(1) lib/getdef.c: getdef_num(): Simplify, by calling a2si() instead of str2sl() lib/getdef.c: getdef_unum(): Fix wrong limit check lib/getdef.c: getdef_long(): Simplify, by calling a2sl() instead of str2sl() lib/limits.c: set_prio(): Simplify, by calling str2si() instead of str2sl() lib/limits.c: set_umask(): Simplify, by calling str2i(mode_t, ) instead of str2ul() lib/limits.c: setup_limits(): Simplify, by calling a2si() instead of str2sl() lib/limits.c: setup_limits(): Simplify, by calling str2si() instead of str2sl() lib/limits.c: setup_limits(): Simplify, by calling str2i(mode_t, ) instead of str2ul() lib/sgetspent.c: sgetspent(): Simplify, by calling a2sl() instead of str2sl() lib/shadow.c: my_sgetspent(): Merge 'else {if}' into 'else if' lib/shadow.c: my_sgetspent(): Remove dead code lib/shadow.c: my_sgetspent(): Simplify error handling src/: Use get_[ug]id() where appropriate src/useradd.c: Simplify, by calling a2sl() instead of str2sl() src/passwd.c: Simplify, by calling a2sl() instead of str2sl() src/usermod.c: Simplify, by calling a2sl() instead of str2sl() src/faillog.c: Simplify, by calling str2sh() instead of str2sl() src/chage.c: Simplify, by calling a2sl() instead of str2sl() lib/string/strchr/: stp[c]spn(), strrspn(), strnul(): Add macros and functions lib/getdef.c: def_load(): Use stp[c]spn() instead of their patterns src/login_nopam.c: login_access(): Simplify, calling strchr(3) lib/sssd.c: Style fixes lib/, src/: Use strrspn() instead of its pattern contrib, lib/, src/, tests/: Use stpcpy(3) instead of its pattern contrib/adduser.c: main(): Use strcpy/cat(3) instead of their pattern lib/port.c: getttyuser(): Remove dead code lib/port.c: getttyuser(): Use goto to break out of nested loops lib/port.c: getportent(): Rename goto label lib/port.c: getportent(): Remove obvious comments lib/port.c: getportent(): Make sure there are at least 2 ':' in the line lib/port.c: getportent(): Make sure the aren't too many fields in the CSV lib/port.c: getportent(): Use equivalent code to parse equally-formatted fields lib/port.c: getttyuser(): Use pointer arithmetic to simplify lib/port.c: getportent(): Align variables lib/port.c: getportent(): Use strsep(3) instead of its pattern lib/string/strtok/stpsep.[ch]: stpsep(): Add function lib/, src/: Use stpsep() instead of its pattern lib/attr.h: ATTR_STRING(): It only accepts one argument lib/string/strchr/stpcspn.[ch]: stpcspn(): Remove unused function src/suauth.c: check_su_auth(): Use stpsep() to simplify lib/nss.c: nss_init(): Use stpsep() instead of strtok_r(3) src/useradd.c: Use stpsep() to simplify src/login_nopam.c: login_access(): Use stpsep() to simplify lib/limits.c: check_logins(): Report LOGIN_ERROR_LOGIN if str2ul() ERANGE lib/idmapping.c: get_map_ranges(): Rename local variable lib/idmapping.c: get_map_ranges(): Move range check to a2ul() calls lib/idmapping.c: get_map_ranges(): Move range check to a2ul() call lib/idmapping.c: get_map_ranges(): Move range check to a2ul() call lib/idmapping.c: get_map_ranges(): Remove dead code lib/idmapping.c: get_map_ranges(): Simplify iterator variables lib/idmapping.c: get_map_ranges(): Don't exit() from a library function src/usermod.c: Rename identifiers ralated to [ug]id's src/usermod.c: Use id_t for parsing uid_t and gid_t lib/atoi/, : Split files lib/atoi/strtoi/, tests/: strto[iu](): 1 is an invalid base lib/chkname.c: An object cannot expand further than the universe in which it resides lib/, src/: Use local time for human-readable dates lib/, src/: Use %F instead of %Y-%m-%d with strftime(3) src/chage.c: print_day_as_date(): Simplify error handling src/chage.c: print_day_as_date(): Handle errors from strfime(3) lib/string/strftime.h: STRFTIME(): Tighten macro definition po/es.po: wsfix lib/: Move memzero.[ch] under lib/string/memset/ lib/string/memset/: memzero(), strzero(): Return the pointer lib/: Chain free(strzero(s)) man/userdel.8.xml: Reword '-f' lib/chkname.c: is_valid{user,group}_name(): Set errno to distinguish the reasons src/: Invert logic to improve readability src/: Recommend --badname only if it is useful src/useradd.c: Add fmkomstemp() to fix mode of </etc/default/useradd> src/check_subid_range.c: Remove dead code lib/, src/: Use stpspn() instead of its pattern lib/port.c: portcmp(): Use strcmp(3) instead of its pattern lib/gshadow.c: endsgent(): Remove dead assignment src/suauth.c: check_su_auth(): Use strspn(3) instead of its pattern src/suauth.c: check_su_auth(): Use pointers to simplify doc/contributions/introduction.md: Fix typo in link lib/alloc/realloc.h: Rename macro parameter lib/alloc/realloc*.h: Always reallocate at least 1 byte lib/fields.c: Remove dead code lib/getdef.c: Remove dead code lib/loginprompt.c: login_prompt(): Use strtcpy() instead of its pattern lib/fs/readlink/: readlinknul(): Add function lib/fs/readlink/readlinknul.h: READLINKNUL(): Add macro lib/: Use readlinknul() instead of its pattern lib/: Use READLINKNUL() instead of its pattern lib/fs/readlink/, lib/: areadlink(): Move and rename function lib/fs/readlink/areadlink.h: Cosmetic changes lib/fs/readlink/areadlink.h: areadlink(): Use PATH_MAX instead of a magic value lib/string/strcmp/: streq(): Add function lib/string/strchr/: strchrcnt(): Add function lib/list.c: comma_to_list(): Use strchrcnt() instead of its pattern lib/gshadow.c: endsgent(): Invert logic to reduce indentation src/login_nopam.c: Rely on the system's MAXHOSTNAMELEN lib/shadow.c: my_sgetspent(): There can be only one! lib/, src/: Use NULL instead of 0 as a null pointer constant share/container-build.sh: Fix path src/login_nopam.c: resolve_hostname(): Use NI_MAXHOST instead of MAXHOSTNAMELEN with getnameinfo(3) lib/csrand.c: csrand(): Use read(2) instead of fread(2) lib/gshadow_.h: STDC is always 1 contrib/, lib/, src/: Use streq() instead of its pattern lib/, src/: Use !streq() instead of its pattern lib/, src/: Use strsep(3) instead of strtok(3) src/: Transform do-while into while lib/gshadow.c: build_list(): Fix type of parameter lib/gshadow.c: build_list(): Remove unused variable lib/gshadow.c: build_list(): Improve variable and parameter names lib/gshadow.c: build_list(): Remove dead assignment lib/gshadow.c: sgetsgent(): Remove superfluous condition lib/gshadow.c: Move zeroing to within build_list() lib/gshadow.c: Remove dead code lib/gshadow.c: build_list(): Minimize use of pointer parameters lib/gshadow.c: build_list(): Compact ++ into previous statement lib/gshadow.c: sgetsgent(): Be consistent using NULL lib/gshadow.c: build_list(): Remove second parameter lib/gshadow.c: Remove redundant variables lib/gshadow.c: build_list(): Allocate at once lib/gshadow.c: build_list(): Transform while loop into for loop lib/sgetgrent.c: sgetgrent(): Fix use-after-free bug lib/, src/: Use streq() instead of its pattern lib/, src/: Use !streq() instead of its pattern lib/fs/readlink/readlinknul.h: readlinknul(): Silence warning lib/fs/readlink/: readlinknul(): Fix return type lib/find_new_[gu]id.c: include stdint.h for UINT16_MAX/UINT32_MAX tests/libsubid/04_nss: fix setting basedir Makefile.am: avoid warning: EXTRA_DIST multiply defined Remove references to cppw, cpgr groupadd, groupmod: Update gshadow file with -U doc(login.defs): fix type of TTYPERM share/ansible: convert fedora dockerfile to ansible share/ansible: create roles share/.gitignore: add build-out folder share/ansible: move fedora ci_run to its own file share/ansible: convert debian dockerfile to ansible share/ansible: convert alpine dockerfile to ansible share/ansible: implement distribution selection share/container-build.sh: update to use Ansible build doc: update documentation to use Ansible build CI: use Ansible build in Github Action share/containers: remove unused dockerfiles useradd: fix write_full() return value useradd: fix comparison sign for write_full() return CI: update Ubuntu repositories configuration CI: run Install dependencies workflow CI: run command as non-root user CI: install libltdl-dev CI: fix fedora build problems CI: avoid cancelling all jobs when one fails CI: update artifacts action Fix coverity unbound buffer issues man/shadow,man/gshadow: Fix grammar lib/user_busy.c: Include <utmpx.h> Added option -a for listing active users only, optimized using if aflg,return Added information in lastlog man page for new option '-a' man: groupmod: fix misleading param man: group(add|mod): clarify list format man: groupmod: remove misleading -N option tests/: Support run_some from exported tarball libsubid test makefile: fix a typo have_range: open the subid db if needed tests/run_some: make sure unshared root user can descend build dir CI: fix handling of sources.list Tobias Stoeckmann (11): Fix typos lib/run_part: Use correct data types lib/run_part: Unify logging lib/run_part: Reduce visibility lib: Fix typo lib/run_part: Unify error messages lib/run_part: Adjust style lib: Eliminate dead code man/passwd: Fix typo man/subgid,man/subuid: Fix program list lib/idmapping.c: Fix get_map_ranges range check Allow setting an empty homedir frostb1te (1): src/gpasswd.c: is_valid_user_list(): Fix invalid free(3) src/useradd.c: Add the missing equals sign src/useradd.c: get_groups(): Fix memory leak