Man Linux: Main Page and Category List

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 .