Commit Graph

9 Commits

Author SHA1 Message Date
elad
2b9c10de57 Set errno on failure, and man-page updates. 2006-03-19 22:58:21 +00:00
christos
a3f80bb48f - Don't trash error number returned by the handler; return it instead.
- Add default cases and return EINVAL
- Don't check for NULL arguments and return EFAULT. Let it core-dump instead.
  (or add DIAGASSERT)
- Coverity CID 799: Don't dereference m and n if they are known to be NULL.
  Bail out sooner with EINVAL.
2006-03-19 22:18:25 +00:00
elad
bca69c49bf needs assert.h to compile. 2006-02-19 23:13:14 +00:00
elad
f0dd749f9b add _DIAGASSERT as requested by mrg@. 2006-02-19 20:46:29 +00:00
elad
5cd336ae07 When loading a policy with an "nclasses" option, always set the min/max
values for the various character classes to allow any number, just in
case. Also note about that in the man-page.

This makes it easier to use the "nclasses" option.

Note that alternatively we could just memset() to 0xff when doing the
load, but that might lead to more unexpected behavior.
2006-02-18 16:45:01 +00:00
elad
cf6eceb4e7 Don't expose struct pw_policy and use pw_policy_t, use malloc, man-page
fixups.

As discussed on source-changes@.

Okay yamt@, thorpej@.
2006-02-18 16:32:45 +00:00
elad
378a5a27de Some stuff that's been sitting in my tree for too long...
Improve the pw_policy(3) API by splitting it to two functions, one to load
the policy from /etc/passwd.conf and another to test passwords against the
policy.

Some bug fixes, more consistent code, and man-page updates.

Minor for libutil bumped.
2006-02-18 10:52:48 +00:00
elad
769541972d Rename struct pw_policy -> struct pw_policy_handler. 2005-09-16 22:38:48 +00:00
elad
8d6270e665 Introduce pw_policy(3), an easily extendable way of defining password
policies and enforcing them in programs.

Man-page written with much help and tips from David Maxwell, Hubert
Feyrer, and Thomas Klausner.

This bumps libutil minor to 7.

XXX: Need default policy to go in /etc/passwd.conf, and integration
     into local/yp/PAM password changing code.

PR/10206.
2005-09-14 11:36:52 +00:00