Provided by: manpages-posix-dev_2.16-1_all bug

NAME

       setkey - set encoding key (CRYPT)

SYNOPSIS

       #include <stdlib.h>

       void setkey(const char *key);

DESCRIPTION

       The setkey() function provides access to an implementation-defined encoding algorithm. The
       argument of setkey() is an array of  length  64  bytes  containing  only  the  bytes  with
       numerical  value of 0 and 1. If this string is divided into groups of 8, the low-order bit
       in each group is ignored; this gives a 56-bit key which is used by the algorithm. This  is
       the  key  that  shall  be  used  with  the  algorithm  to  encode a string block passed to
       encrypt().

       The setkey() function shall not change the setting of errno if successful. An  application
       wishing  to  check for error situations should set errno to 0 before calling setkey().  If
       errno is non-zero on return, an error has occurred.

       The setkey() function need not be reentrant.  A  function  that  is  not  required  to  be
       reentrant is not required to be thread-safe.

RETURN VALUE

       No values are returned.

ERRORS

       The setkey() function shall fail if:

       ENOSYS The functionality is not supported on this implementation.

       The following sections are informative.

EXAMPLES

       None.

APPLICATION USAGE

       Decoding  need  not  be  implemented  in  all  environments. This is related to government
       restrictions in some countries on encryption and decryption routines. Historical  practice
       has  been  to  ship  a  different version of the encryption library without the decryption
       feature in the routines supplied. Thus the exported version of encrypt() does encoding but
       not decoding.

RATIONALE

       None.

FUTURE DIRECTIONS

       None.

SEE ALSO

       crypt() , encrypt() , the Base Definitions volume of IEEE Std 1003.1-2001, <stdlib.h>

COPYRIGHT

       Portions  of  this  text  are  reprinted  and  reproduced in electronic form from IEEE Std
       1003.1, 2003 Edition, Standard for Information Technology  --  Portable  Operating  System
       Interface  (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2003 by
       the Institute of Electrical and Electronics Engineers, Inc and  The  Open  Group.  In  the
       event  of  any  discrepancy  between this version and the original IEEE and The Open Group
       Standard, the original IEEE and The Open Group  Standard  is  the  referee  document.  The
       original Standard can be obtained online at http://www.opengroup.org/unix/online.html .