Standard C Library Functions crypt_gensalt(3C)
NAME
crypt_gensalt - generate salt string for string encoding
SYNOPSIS
#include
char *crypt_gensalt(const char *oldsalt, const struct passwd *userinfo);
DESCRIPTION
The crypt_gensalt() function generates the salt string
required by crypt(3C).If oldsalt is NULL, crypt_gensalt() uses the algorithm
defined by CRYPT_DEFAULT in /etc/security/policy.conf. See
policy.conf(4).If oldsalt is non-null, crypt_gensalt() determines if the
algorithm specified by oldsalt is allowable by checking theCRYPT_ALGORITHMS_ALLOW and CRYPT_ALGORITHMS_DEPRECATE vari-
ables in /etc/security/policy.conf. If the algorithm isallowed, crypt_gensalt() loads the appropriate shared
library and calls crypt_gensalt_impl(3C). If the algorithm
is not allowed or there is no entry for it in crypt.conf,crypt_gensalt() uses the default algorithm.
The mechanism just described provides a means to migrate users to new password hashing algorithms when the password is changed.RETURN VALUES
Upon successful completion, crypt_gensalt() returns a
pointer to the new salt. Otherwise a null pointer is returned and errno is set to indicate the error.ERRORS
The crypt_gensalt() function will fail if:
EINVAL The configuration file crypt.conf contains an invalid entry. ELIBACC The required shared library was not found. ENOMEM There is insufficient memory to perform hashing.SunOS 5.11 Last change: 10 Jun 2002 1
Standard C Library Functions crypt_gensalt(3C)
USAGE
The value returned by crypt_gensalt() points to a null-
terminated string. The caller of crypt_gensalt() is respon-
sible for calling free(3C). Applications dealing with user authentication and passwordchanging should not call crypt_gensalt() directly but should
instead call the appropriate pam(3PAM) functions.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
SEE ALSO
passwd(1), crypt(3C), crypt_genhash_impl(3C),
crypt_gensalt_impl(3C), getpassphrase(3C), malloc(3C),
pam(3PAM), crypt.conf(4), passwd(4), policy.conf(4), attri-
butes(5)SunOS 5.11 Last change: 10 Jun 2002 2