* exec.c (expand_args): Remove loop left over from earlier implementation.
[gnupg.git] / cipher / algorithms.h
1 /* algorithms.h - prototypes for algorithm functions.
2  *      Copyright (C) 2002 Free Software Foundation, Inc.
3  *
4  * This file is part of GnuPG.
5  *
6  * GnuPG is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * GnuPG is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
19  */
20 #ifndef GNUPG_ALGORITHMS_H
21 #define GNUPG_ALGORITHMS_H 1
22
23 const char *dynload_enum_module_names (int seq);
24
25
26
27 const char *
28 md5_get_info (int algo, size_t *contextsize,
29               byte **r_asnoid, int *r_asnlen, int *r_mdlen,
30               void (**r_init)( void *c ),
31               void (**r_write)( void *c, byte *buf, size_t nbytes ),
32               void (**r_final)( void *c ),
33               byte *(**r_read)( void *c )
34               );
35
36
37 const char *
38 rmd160_get_info (int algo, size_t *contextsize,
39                  byte **r_asnoid, int *r_asnlen, int *r_mdlen,
40                  void (**r_init)( void *c ),
41                  void (**r_write)( void *c, byte *buf, size_t nbytes ),
42                  void (**r_final)( void *c ),
43                  byte *(**r_read)( void *c )
44                  );
45
46 const char *
47 sha1_get_info (int algo, size_t *contextsize,
48                byte **r_asnoid, int *r_asnlen, int *r_mdlen,
49                void (**r_init)( void *c ),
50                void (**r_write)( void *c, byte *buf, size_t nbytes ),
51                void (**r_final)( void *c ),
52                byte *(**r_read)( void *c )
53                );
54
55 const char *
56 tiger_get_info (int algo, size_t *contextsize,
57                 byte **r_asnoid, int *r_asnlen, int *r_mdlen,
58                 void (**r_init)( void *c ),
59                 void (**r_write)( void *c, byte *buf, size_t nbytes ),
60                 void (**r_final)( void *c ),
61                 byte *(**r_read)( void *c )
62                 );
63
64
65 const char *
66 des_get_info( int algo, size_t *keylen,
67                    size_t *blocksize, size_t *contextsize,
68                    int  (**setkeyf)( void *c, byte *key, unsigned keylen ),
69                    void (**encryptf)( void *c, byte *outbuf, byte *inbuf ),
70                    void (**decryptf)( void *c, byte *outbuf, byte *inbuf )
71                  );
72
73 const char *
74 cast5_get_info( int algo, size_t *keylen,
75                    size_t *blocksize, size_t *contextsize,
76                    int  (**setkeyf)( void *c, byte *key, unsigned keylen ),
77                    void (**encryptf)( void *c, byte *outbuf, byte *inbuf ),
78                    void (**decryptf)( void *c, byte *outbuf, byte *inbuf )
79                  );
80
81
82 const char *
83 blowfish_get_info( int algo, size_t *keylen,
84                    size_t *blocksize, size_t *contextsize,
85                    int  (**setkeyf)( void *c, byte *key, unsigned keylen ),
86                    void (**encryptf)( void *c, byte *outbuf, byte *inbuf ),
87                    void (**decryptf)( void *c, byte *outbuf, byte *inbuf )
88                  );
89
90 const char *
91 twofish_get_info( int algo, size_t *keylen,
92                    size_t *blocksize, size_t *contextsize,
93                    int  (**setkeyf)( void *c, byte *key, unsigned keylen ),
94                    void (**encryptf)( void *c, byte *outbuf, byte *inbuf ),
95                    void (**decryptf)( void *c, byte *outbuf, byte *inbuf )
96                  );
97
98 /* this is just a kludge for the time we have not yet changed the cipher
99  * stuff to the scheme we use for random and digests */
100 const char *
101 rijndael_get_info( int algo, size_t *keylen,
102                    size_t *blocksize, size_t *contextsize,
103                    int  (**setkeyf)( void *c, byte *key, unsigned keylen ),
104                    void (**encryptf)( void *c, byte *outbuf, byte *inbuf ),
105                    void (**decryptf)( void *c, byte *outbuf, byte *inbuf )
106                  );
107
108 const char *
109 idea_get_info( int algo, size_t *keylen,
110                size_t *blocksize, size_t *contextsize,
111                int      (**setkeyf)( void *c, byte *key, unsigned keylen ),
112                void (**encryptf)( void *c, byte *outbuf, byte *inbuf ),
113                void (**decryptf)( void *c, byte *outbuf, byte *inbuf )
114                );
115
116
117
118 #endif /*GNUPG_ALGORITHMS_H*/