dispcrypt(3)dispcrypt(3)NAMEdispcrypt - encrypt a password, dispatching based on the associated
algorithm (Enhanced Security)
SYNOPSIS
#include <prot.h>
char *discprypt(
const char *plaintext,
const char *salt,
int algorithm_index );
LIBRARY
Security Library (libsecurity.so)
In order to quickstart a program, the program must be linked as fol‐
lows: -lsecurity -ldb -laud -lm
See the shared library discussion in the Programmer's Guide for more
information about using the quickstarting feature.
PARAMETERS
The unencrypted password to be encrypted. A string value which may be
used as input to the selected encryption algorithm. This parameter
should be at least two characters in length, and null-terminated. For
password validation, it should be the encrypted password which is
already in use. A value from 0 to (get_num_crypts()-1), indicating
which encryption algorithm is to be used. For password validation, use
the fd_oldcrypt field of an es_passwd structure. For password genera‐
tion, use the fd_newcrypt field (and update the fd_oldcrypt field at
the same time as the fd_encrypt field if the change is successful).
DESCRIPTION
The dispcrypt() function applies the specified encryption algorithm to
the given password string and salt value, and returns the encrypted
form of the password. The return value is static data which is over‐
written on subsequent calls to this function or to the encryption algo‐
rithms which it calls, so callers should save a copy of the string
unless the only use is an immediate comparison during password valida‐
tion.
RETURN VALUES
This routine returns NULL if there is an encryption failure. Otherwise,
it returns a pointer to static data, which is the null-terminated
encrypted password result.
SEE ALSOpasswd(1), getespwent(3), get_num_crypts(3)
Security
dispcrypt(3)