Dr Andrew Scott G7VAV

My photo
 
April 2024
Mo Tu We Th Fr Sa Su
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 1 2 3 4 5
6 7 8 9 10 11 12


des_crypt.h
01: /*
02:  * @(#)des_crypt.h      2.1 88/08/11 4.0 RPCSRC
03:  *
04:  * des_crypt.h, des library routine interface
05:  * Copyright (c) 2010, Oracle America, Inc.
06:  *
07:  * Redistribution and use in source and binary forms, with or without
08:  * modification, are permitted provided that the following conditions are
09:  * met:
10:  *
11:  *     * Redistributions of source code must retain the above copyright
12:  *       notice, this list of conditions and the following disclaimer.
13:  *     * Redistributions in binary form must reproduce the above
14:  *       copyright notice, this list of conditions and the following
15:  *       disclaimer in the documentation and/or other materials
16:  *       provided with the distribution.
17:  *     * Neither the name of the "Oracle America, Inc." nor the names of its
18:  *       contributors may be used to endorse or promote products derived
19:  *       from this software without specific prior written permission.
20:  *
21:  *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
22:  *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
23:  *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
24:  *   FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
25:  *   COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
26:  *   INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27:  *   DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
28:  *   GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
29:  *   INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
30:  *   WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
31:  *   NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32:  *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33:  */
34: 
35: #ifndef __DES_CRYPT_H__
36: #define __DES_CRYPT_H__ 1
37: 
38: #include <features.h>
39: 
40: __BEGIN_DECLS
41: 
42: #define DES_MAXDATA 8192        /* max bytes encrypted in one call */
43: #define DES_DIRMASK (1 << 0)
44: #define DES_ENCRYPT (0*DES_DIRMASK)     /* Encrypt */
45: #define DES_DECRYPT (1*DES_DIRMASK)     /* Decrypt */
46: 
47: 
48: #define DES_DEVMASK (1 << 1)
49: #define DES_HW (0*DES_DEVMASK)  /* Use hardware device */
50: #define DES_SW (1*DES_DEVMASK)  /* Use software device */
51: 
52: 
53: #define DESERR_NONE 0   /* succeeded */
54: #define DESERR_NOHWDEVICE 1     /* succeeded, but hw device not available */
55: #define DESERR_HWERROR 2        /* failed, hardware/driver error */
56: #define DESERR_BADPARAM 3       /* failed, bad parameter to call */
57: 
58: #define DES_FAILED(err) \
59:         ((err) > DESERR_NOHWDEVICE)
60: 
61: /*
62:  * cbc_crypt()
63:  * ecb_crypt()
64:  *
65:  * Encrypt (or decrypt) len bytes of a buffer buf.
66:  * The length must be a multiple of eight.
67:  * The key should have odd parity in the low bit of each byte.
68:  * ivec is the input vector, and is updated to the new one (cbc only).
69:  * The mode is created by oring together the appropriate parameters.
70:  * DESERR_NOHWDEVICE is returned if DES_HW was specified but
71:  * there was no hardware to do it on (the data will still be
72:  * encrypted though, in software).
73:  */
74: 
75: 
76: /*
77:  * Cipher Block Chaining mode
78:  */
79: extern int cbc_crypt (char *__key, char *__buf, unsigned __len,
80:                       unsigned __mode, char *__ivec) __THROW;
81: 
82: /*
83:  * Electronic Code Book mode
84:  */
85: extern int ecb_crypt (char *__key, char *__buf, unsigned __len,
86:                       unsigned __mode) __THROW;
87: 
88: /*
89:  * Set des parity for a key.
90:  * DES parity is odd and in the low bit of each byte
91:  */
92: extern void des_setparity (char *__key) __THROW;
93: 
94: __END_DECLS
95: 
96: #endif
97: 


for client 3.133.108.241
© Andrew Scott 2006 - 2024,
All Rights Reserved
http://www.andrew-scott.uk/
Andrew Scott
http://www.andrew-scott.co.uk/