crypt_genhash_impl(3C)




NAME

     crypt_genhash_impl - generate encrypted password


SYNOPSIS

     #include <crypt.h>

     char *crypt_genhash_impl(char *ctbuffer,  size_t  ctbufflen,
     const   char   *plaintext,  const  char  *salt,  const  char
     **params);


DESCRIPTION

     The crypt_genhash_impl() function is called by crypt(3C)  to
     generate the encrypted password plaintext.

     The ctbuffer argument is a pointer to an MT-safe  buffer  of
     ctbufflen size that is used to return the result.

     The salt argument is the salt used in encoding.

     The params argument is an argv-like  null-terminated  vector
     of  type  char *. The first element of params represents the
     mechanism token name from crypt.conf(4). The remaining  ele-
     ments    of   params   represent   strings   of   the   form
     <parameter>[=<value>] to allow passing in additional  infor-
     mation  from  the crypt.conf entry, such as specifing rounds
     information "rounds=4096".

     The crypt_genhash_impl() function must not  free(3C)  ctbuf-
     flen on error.


RETURN VALUES

     Upon successful completion, crypt_genhash_impl()  returns  a
     pointer  to  the  encoded  version of plaintext. Otherwise a
     null pointer is returned and errno is set  to  indicate  the
     error.


ERRORS

     The crypt_genhash_impl() 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.


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:
     ____________________________________________________________
    |       ATTRIBUTE TYPE        |       ATTRIBUTE VALUE       |
    |_____________________________|_____________________________|
    | Interface Stability         | Evolving                    |
    |_____________________________|_____________________________|
    | MT-Level                    | MT-Safe                     |
    |_____________________________|_____________________________|


SEE ALSO

     passwd(1),  crypt(3C),   crypt_gensalt_impl(3C),   free(3C),
     getpassphrase(3C), crypt.conf(4), passwd(4), attributes(5)


Man(1) output converted with man2html