bapt
8fa8b523a2
Partial revert of r286152
...
More work needed on the cli validation
2015-08-01 12:18:48 +00:00
bapt
9a71628c9f
Validate expiration days and password days from commmand line and pw.conf
2015-08-01 10:25:55 +00:00
bapt
4eb9f59af4
Create a strtounum function using the same API as strtonum
...
This function returns uintmax_t
Use this function to convert to gid_t/uid_t
2015-07-29 06:22:41 +00:00
bapt
ae6e75a036
Check uid/gid used when creating a user/group are not larger than UID_MAX/GID_MAX
...
PR: 173977
Reported by: nvass@gmx.com
2015-07-28 21:10:58 +00:00
bapt
6a2604d875
when -n is passed to any pw subcommand it is always expected to be considered as
...
a name so do not try to convert it to an id if it is a numeric value
PR: 31933
Reported by: ted@impulse.net
Sponsored by: gandi.net
2015-07-28 12:20:57 +00:00
bapt
ba90467d76
Really fix -o
2015-07-13 09:12:05 +00:00
bapt
7f2e5a63d2
Fix logic of check duplicates that has been inverted
2015-07-13 09:07:38 +00:00
bapt
8621997ee9
Rework the home directory creation and copy or the skel content to use *at
...
functions
This allows to simplify the code a bit for -R by not having to keep modifying
path and also prepare the code to improve support -R in userdel
While here, add regression tests for the functionality
2015-07-12 20:29:51 +00:00
bapt
f15eb75bd0
Make getarg return NULL if args is NULL
2015-07-12 00:02:43 +00:00
bapt
394857c344
check the gecos format early: at the moment the -c option is parsed
2015-07-11 21:09:50 +00:00
bapt
4c8679fa34
Make a separate groupdel/userdel from the main function
2015-07-11 19:07:47 +00:00
bapt
0ee1498c18
Make separate functions to show users and groups
2015-07-11 18:09:27 +00:00
bapt
4567491257
Move the quiet flag into the configuration structure
2015-07-11 17:01:08 +00:00
bapt
f97075fb60
Do not try to set password on group if the group is added as a consequence of
...
of creating a user (regression from r285136)
Reported by: Fabian Keil <fk@fabiankeil.de>
2015-07-09 14:14:44 +00:00
bapt
af8a9dfc9a
Validate input of pw usermod -h and pwusermod -H
...
Push the code that set the password into a separate function to improve
readability
Add regression tests about pw usermod -h and pw usermod -H
2015-07-04 15:27:04 +00:00
bapt
ec480fe320
backout remove of -q option for pw [user|group] next
...
While the return code is broken, some corner case usage depends on the
functionnality, so backout until we get better regression tests covering those
corner case usage.
2015-06-08 05:27:34 +00:00
bapt
2bc43a746d
Fix mistakes than came along with r284139
2015-06-07 21:59:43 +00:00
bapt
65b30fab70
Remove '-q' support for pw [user|group] next
...
the intent of -q in this command is to return as exit status the value of the
next group/user id, which does not make sense given exit status are limited to
values between 0 and 255.
2015-06-07 21:57:20 +00:00
bapt
b0235ac2ee
Fix setting uid/gid min/max via pw
2015-06-07 20:59:59 +00:00
bapt
fc781f489d
Fix generating configuration file
2015-06-07 20:44:06 +00:00
bapt
302d4b4363
Fix duplicate checking
2015-06-07 19:59:01 +00:00
bapt
4a60f5b2aa
In case of rename validate the length of the new name
...
Check early that the new name fits MAXLOGNAME and store it in pwconf
2015-06-07 19:33:25 +00:00
bapt
3be2bba5d7
Refactor input validation
...
Mutualize code to validate inputs of both 'user' and 'group' command
Test that the input name fits into MAXLOGNAME
2015-06-07 19:03:41 +00:00
bapt
87cd2261fe
Handle -7 via gloval pwconf
2015-06-07 15:33:08 +00:00
bapt
9f5d2c6d19
Initialize conf using menset(3)
2015-06-07 15:29:58 +00:00
bapt
4ca3925ed2
Handle pretty print (-P) via global pwconf
2015-06-07 15:27:17 +00:00
bapt
720254061f
Handle dryrun (-N) via global pwconf
2015-06-07 15:09:53 +00:00
bapt
c79845f9d0
Handle -C and -Y locally and stop adding them to arglist
2015-06-07 14:54:07 +00:00
bapt
c6afeed630
Add a new global struct pwconf to store etcpath, rootdir and struct userconf
...
Do not add anymore -R and -V to arglist
Add an error message if both -V and -R are set in arguments
2015-06-07 14:34:38 +00:00
bapt
c6995b5046
New pw -R rootdir option
...
This allows to set an alternate root directory in which the users/groups will be
manipulated
Requested by: gjb, ian
Tested by: gjb
2015-06-03 19:08:25 +00:00
bapt
23c55809b1
Use asprintf instead of malloc + snprintf and test the memory allocation
2015-05-31 10:02:01 +00:00
bapt
76d74e0d6c
Fix wrong message when using pw -V with a non existent directory
...
Add a regression test about it
PR: 194971
Submitted by: Freddy DISSAUX <bugzilla@dsx.bsdsx.fr>
2014-11-12 22:27:53 +00:00
bapt
cfea627c58
Teach pw(8) about how to use pw/gr API to reduce code duplication
...
MFC after: 2 months
2012-10-30 08:00:53 +00:00
scf
c88c109632
Add the groupmod '-d' option to pw to allow the deletion of existing users
...
from a group without the need to perform the same operation by replacing
the existing list via the '-M' option. The '-M' option requires someone
to fetch the existing members with pw, deleting the undesired members from
the list and sending the altered list back to pw.
Approved by: wes (mentor)
MFC after: 5 days
2008-02-23 01:25:22 +00:00
scf
9787c9bf4e
style(9) (verified no object changes)
...
Approved by: wes (mentor)
MFC after: 5 days
2008-02-23 01:17:42 +00:00
le
f17fbfd9be
Add home directory creation mode to pw.conf(5) and be a bit
...
more specific about the effect of the current umask on -M.
2007-03-30 11:23:10 +00:00
le
2f93827b34
Add -M argument to usage() output.
2007-03-30 10:02:47 +00:00
le
b25ea91d22
Introduce the new option -M to allow to set the permissions of
...
the user's newly created home directory. If omitted, it's derived
from the current umask.
PR: bin/16880, bin/83253 (partially), bin/104248
MFC in: 1 month
2007-03-26 23:29:20 +00:00
maxim
4af3cb5278
o Fix groupadd getopt line and make 'pw groupadd -o' work.
...
PR: bin/100684
Submitted by: Devon H. O'Dell
MFC after: 3 weeks
2006-09-18 14:00:39 +00:00
iedowse
94e2d83c18
Add a -H <fd>' option that is like
-h <fd>', but accepts an already
...
encrypted password on the specified file descriptor.
PR: bin/22033
MFC after: 2 weeks
2004-01-11 18:28:08 +00:00
brian
8636b161b3
Fix the type of the NULL arg to execl()
...
Idea from: Theo de Raadt <deraadt@openbsd.org>
2001-07-09 09:24:06 +00:00
kris
5a1251c5ff
Fix a harmless format string bogon and mark a function as __printflike().
...
There is still one instance of non-constant format string use inside that
function, but it's hard to fix.
MFC after: 1 week
2001-07-05 08:01:15 +00:00
dd
24b0122a84
Document the lock and unlock commands. This fixes a segmentation fault.
...
PR: 25187
Approved by: nik
2001-03-14 03:24:30 +00:00
ben
aa10518020
Convert to use the <sys/queue.h> macros rather than fiddling with the queue
...
structure internals.
Reviewed by: markm
2000-12-29 18:04:54 +00:00
obrien
c2ee1dcc02
Add `_PATH_DEVZERO'.
...
Use _PATH_* where where possible.
2000-12-09 09:35:55 +00:00
ache
659df59b0e
Localize ctype too.
...
Add weekday to showuser expired fields
2000-06-24 13:36:13 +00:00
ache
77729ceb43
Localize time/date.
...
Use ISO 8601 date in logs.
Fix wrong argument type in ctype functions.
2000-06-22 16:48:41 +00:00
davidn
4a7877f9e8
Be a little more strict about handling command line args. This allows user and
...
group names like 'help' 'mod' 'user' 'group' etc. to work correctly without
requiring the -n style invocation.
PR: misc/17069
2000-06-18 02:39:17 +00:00
davidn
1b86060031
Portability fixes for other bsd4.4 derivatives.
2000-01-15 00:20:22 +00:00
davidn
091d630070
Add new functionality "lock" and "unlock" to provide a simple password
...
locking mechanism for users. This works by prepending the string
"*LOCKED*" to the password field in master.passwd to prevent successful
decoding.
1999-10-26 08:34:09 +00:00