]> git.sur5r.net Git - openldap/blob - libraries/msdos/winsock/include/krb/des.h
Fixed RCS Headers
[openldap] / libraries / msdos / winsock / include / krb / des.h
1 /*
2  * $Source: /data/CVS-Repository/pkg/ldap/libraries/msdos/winsock/include/krb/des.h,v $
3  * $Author: kurt $
4  * $Header: /data/CVS-Repository/pkg/ldap/libraries/msdos/winsock/include/krb/des.h,v 1.1.4.1 1998/08/08 23:05:24 kurt Exp $
5  *
6  * Copyright 1987, 1988 by the Massachusetts Institute of Technology.
7  *
8  * For copying and distribution information, please see the file
9  * <mit-copyright.h>.
10  *
11  * Include file for the Data Encryption Standard library.
12  */
13
14 /* only do the whole thing once  */
15 #ifndef DES_DEFS
16 #define DES_DEFS
17
18 #include <mit_copy.h>
19
20 typedef unsigned char des_cblock[8];    /* crypto-block size */
21 /* Key schedule */
22 typedef struct des_ks_struct { des_cblock _; } des_key_schedule[16];
23
24 #define DES_KEY_SZ      (sizeof(des_cblock))
25 #define DES_ENCRYPT     1
26 #define DES_DECRYPT     0
27
28 #ifndef NCOMPAT
29 #define C_Block des_cblock
30 #define Key_schedule des_key_schedule
31 #define ENCRYPT DES_ENCRYPT
32 #define DECRYPT DES_DECRYPT
33 #define KEY_SZ DES_KEY_SZ
34 #define string_to_key des_string_to_key
35 #define read_pw_string des_read_pw_string
36 #define random_key des_random_key
37 #define pcbc_encrypt des_pcbc_encrypt
38 #define key_sched des_key_sched
39 #define cbc_encrypt des_cbc_encrypt
40 #define cbc_cksum des_cbc_cksum
41 #define C_Block_print des_cblock_print
42 #define quad_cksum des_quad_cksum
43 typedef struct des_ks_struct bit_64;
44 #endif
45
46 #define des_cblock_print(x) des_cblock_print_file(x, stdout)
47
48 int des_check_key_parity(des_cblock);
49 int des_is_weak_key(des_cblock);
50
51 /* Function prototypes */
52 int des_key_sched(des_cblock,des_key_schedule);
53 int des_ecb_encrypt(unsigned long*,unsigned long*,des_key_schedule,int);
54 int des_pcbc_encrypt(des_cblock*,des_cblock*,long,des_key_schedule,
55                                                 des_cblock*,int);
56
57 unsigned long des_cbc_cksum(des_cblock*,des_cblock*,long,
58                               des_key_schedule,des_cblock*);
59
60 int des_is_weak_key(des_cblock);
61 void des_fixup_key_parity(des_cblock);
62 int des_check_key_parity(des_cblock);
63 #endif  /* DES_DEFS */