11322efd7673b0551857a621e6ba9d2d25918c03
[openafs.git] / src / des / des_prototypes.h
1 #ifndef DES_PROTOTYPES_H
2 #define DES_PROTOTYPES_H
3
4 /* misc.c */
5 extern afs_uint32 long_swap_bits(afs_uint32 x);
6 extern afs_uint32 swap_six_bits_to_ansi(afs_uint32 old);
7 extern afs_uint32 swap_four_bits_to_ansi(afs_uint32 old);
8 extern afs_uint32 swap_bit_pos_1(afs_uint32 x);
9 extern afs_uint32 swap_bit_pos_0(afs_uint32 x);
10 extern afs_uint32 swap_bit_pos_0_to_ansi(afs_uint32 x);
11 extern afs_uint32 rev_swap_bit_pos_0(afs_uint32 x);
12 extern afs_uint32 swap_byte_bits(afs_uint32 x);
13 extern int swap_long_bytes_bit_number(afs_uint32 x);
14 #if !defined(KERNEL)
15 extern void test_set(FILE * stream, const char *src, int testbit,
16                      const char *dest, int setbit);
17 #endif
18 extern int des_debug;
19
20 /* cbc_encrypt.c */
21 extern afs_int32 des_cbc_encrypt(void * in, void * out,
22                                  register afs_int32 length,
23                                  des_key_schedule key, des_cblock * iv,
24                                  int encrypt);
25
26 /* pcbc_encrypt.c */
27 extern afs_int32 des_pcbc_encrypt(void * in, void * out,
28                                   register afs_int32 length,
29                                   des_key_schedule key, des_cblock * iv,
30                                   int encrypt);
31
32 /* des.c */
33 extern afs_int32 des_ecb_encrypt(void * clear, void * cipher,
34                                  register des_key_schedule schedule,
35                                  int encrypt);
36
37 /* util.c */
38 #if !defined(KERNEL)
39 extern int des_cblock_print_file(des_cblock * x, FILE * fp);
40 #endif
41
42 /* make_*.c */
43 #if !defined(KERNEL)
44 extern void gen(FILE * stream);
45 #endif
46
47 /* weak_key.c */
48 extern int des_is_weak_key(des_cblock key);
49
50 /* key_parity.c */
51 extern void des_fixup_key_parity(register des_cblock key);
52 extern int des_check_key_parity(register des_cblock key);
53
54 /* cksum.c */
55 extern afs_uint32 des_cbc_cksum(des_cblock * in, des_cblock * out,
56                                 register afs_int32 length,
57                                 des_key_schedule key, des_cblock * iv);
58
59 /* quad_cksum.c */
60 extern afs_uint32 des_quad_cksum(unsigned char *in, afs_uint32 * out,
61                                  afs_int32 length, int out_count,
62                                  des_cblock * c_seed);
63
64 /* key_sched.c */
65 extern int afs_des_key_sched(register des_cblock k,
66                              des_key_schedule schedule);
67 extern int des_key_sched(register des_cblock k, des_key_schedule schedule);
68
69
70 /* strng_to_key.c */
71 extern void des_string_to_key(char *str, register des_cblock * key);
72
73 /* new_rnd_key.c */
74 extern int des_random_key(des_cblock key);
75 extern void des_init_random_number_generator(des_cblock key);
76 extern void des_set_random_generator_seed(des_cblock key);
77
78 /* read_pssword.c */
79 extern int des_read_password(des_cblock * k, char *prompt, int verify);
80 extern int des_read_pw_string(char *, int, char *, int);
81
82 #endif