nekral-guest [Tue, 1 Jan 2008 14:31:00 +0000 (14:31 +0000)]
* libmisc/copydir.c, src/usermod.c, lib/prototypes.h: The uid and
gid parameters can be set to -1 to indicate that the original
owners must be kept. Change the types from uid_t/gid_t to a
long int (signed).
* libmisc/copydir.c: Change the copy_entry(), copy_dir(),
copy_symlink(), copy_special(), and copy_file() prototypes
accordingly.
* lib/prototypes.h: Add the parameters' name for the
libmisc/copydir.c functions.
nekral-guest [Tue, 1 Jan 2008 13:13:47 +0000 (13:13 +0000)]
Split process_flags(), open_files(), and close_files() out of main(). New
global variables is_shadow, sort_mode, use_system_grp_file, and
use_system_sgr_file.
nekral-guest [Mon, 31 Dec 2007 14:54:46 +0000 (14:54 +0000)]
* Split also check_perms() out of main().
* Before pam_end(), the return value of the previous
pam API was already checked. No need to validate it again.
nekral-guest [Mon, 31 Dec 2007 13:43:04 +0000 (13:43 +0000)]
* New function: process_flags() split out of main().
The flags variables are now global.
* New functions: check_perms(), update_gecos(),
get_old_fields(), and check_fields() split out of main().
* Before pam_end(), the return value of the previous
pam API was already checked. No need to validate it again.
nekral-guest [Mon, 31 Dec 2007 04:57:54 +0000 (04:57 +0000)]
* src/newusers.c: Compilation fix for PAM support (pamh needs to be
global since the function split).
* src/chpasswd.c: Likewise.
* src/chgpasswd.c: Likewise.
* src/chpasswd.c: Avoid implicit conversions to booleans.
nekral-guest [Mon, 31 Dec 2007 04:29:30 +0000 (04:29 +0000)]
* src/chage.c: Fix typo: s/maximim/maximum/
* src/chage.c: New function: fail_exit(). Change most of the exit()
to a fail_exit, which makes sure the files are unlocked (new global
variables: pw_locked, spw_locked), the PAM transaction is ended, and
the failure is logged to libaudit (use a global user_name and user_uid
for logging).
* src/chage.c: Compilation fix for PAM support (pamh needs to be
global since the function split).
* src/chage.c: Document process_flags(), check_flags(), check_perms(),
open_files(), and close_files().
* src/chage.c: Split update_age() and get_defaults() out of main()
* src/chage.c: Drop the privileges just after opening the files.
* src/chage.c: Do not log to audit only if the user has an entry in
the shadow file.
* NEWS, src/chage.c (open_files): Also open the password file for
writing. This fix chage when the user only has a password entry (and
no shadow entries).
* src/chage.c (get_defaults): Use default values that don't change the
behavior of the account for the fields that are not specified when the
user has no shadow entry.
nekral-guest [Sun, 30 Dec 2007 21:48:55 +0000 (21:48 +0000)]
* Compilation fix for PAM support (pamh needs to be
global since the function split).
* End the PAM transaction in fail_exit().
* Document check_flags().
nekral-guest [Sat, 29 Dec 2007 10:42:25 +0000 (10:42 +0000)]
chage cleanups
* src/chage.c: Before pam_end(), the return value of the previous
pam API was already checked. No need to validate it again.
* src/chage.c: main() split in new functions: process_flags(),
check_flags(), check_perms(), open_files(), and close_files().
nekral-guest [Fri, 28 Dec 2007 23:14:59 +0000 (23:14 +0000)]
* src/chgpasswd.c: Avoid assignments in comparisons.
* src/chgpasswd.c: Avoid implicit brackets.
* src/chgpasswd.c: Fix comments to match chgpasswd (group instead of
user's passwords are changed).
Fix the previous ChangeLog entries regarding chgpasswd.
nekral-guest [Fri, 28 Dec 2007 11:22:27 +0000 (11:22 +0000)]
* process_args renamed process_flags
* Add the options checks in process_flags (group_name, group ID uniqueness)
* Add the parameters' names in the prototypes.
nekral-guest [Thu, 27 Dec 2007 23:23:51 +0000 (23:23 +0000)]
libmisc/copydir.c cleanup
* libmisc/copydir.c: Split copy_tree() in more maintainable functions:
copy_entry(), copy_dir(), copy_symlink(), copy_hardlink(),
copy_special(), and copy_file().
* libmisc/copydir.c: -1 is used to indicate an error, directly set err
to -1, instead of incrementing it, and checking if not nul at the
end.
nekral-guest [Wed, 26 Dec 2007 23:15:43 +0000 (23:15 +0000)]
Merge Debian's patch 451_login_PATH
* NEWS, libmisc/setupenv.c: Export PATH according to ENV_PATH and
ENV_SUPATH, as for su. This impacts login.
* man/login.1.xml: PATH and SUPATH are now used both when PAM support
is disabled and enabled.
nekral-guest [Wed, 26 Dec 2007 21:54:04 +0000 (21:54 +0000)]
Merge Debian's patch 412_lastlog_-u_numerical_range
* NEWS, src/lastlog.c, man/lastlog.8.xml: Accept numerical user, or
ranges with the -u option.
* TODO: The same change should be done on faillog.
nekral-guest [Wed, 26 Dec 2007 16:50:38 +0000 (16:50 +0000)]
Merge Debian's patch 466_fflush-prompt
* libmisc/Makefile.am, lib/prototypes.h, libmisc/yesno.c, src/grpck.c,
src/pwck.c: move yes_or_no() from grpck/pwck to a separate
libmisc/yesno.c (with a read_only argument).
* libmisc/fields.c, libmisc/yesno.c: Make sure stdout is flushed before
reading the user's answer.