version 1.41, 2013/11/07 11:58:27 |
version 1.42, 2013/11/21 00:45:44 |
|
|
#define CIPHER_H |
#define CIPHER_H |
|
|
#include <openssl/evp.h> |
#include <openssl/evp.h> |
|
#include "cipher-chachapoly.h" |
|
|
/* |
/* |
* Cipher types for SSH-1. New types can be added, but old types should not |
* Cipher types for SSH-1. New types can be added, but old types should not |
* be removed for compatibility. The maximum allowed value is 31. |
* be removed for compatibility. The maximum allowed value is 31. |
|
|
int plaintext; |
int plaintext; |
int encrypt; |
int encrypt; |
EVP_CIPHER_CTX evp; |
EVP_CIPHER_CTX evp; |
|
struct chachapoly_ctx cp_ctx; /* XXX union with evp? */ |
const Cipher *cipher; |
const Cipher *cipher; |
}; |
}; |
|
|
|
|
int cipher_number(const char *); |
int cipher_number(const char *); |
char *cipher_name(int); |
char *cipher_name(int); |
int ciphers_valid(const char *); |
int ciphers_valid(const char *); |
char *cipher_alg_list(char); |
char *cipher_alg_list(char, int); |
void cipher_init(CipherContext *, const Cipher *, const u_char *, u_int, |
void cipher_init(CipherContext *, const Cipher *, const u_char *, u_int, |
const u_char *, u_int, int); |
const u_char *, u_int, int); |
void cipher_crypt(CipherContext *, u_char *, const u_char *, |
void cipher_crypt(CipherContext *, u_int, u_char *, const u_char *, |
u_int, u_int, u_int); |
u_int, u_int, u_int); |
|
int cipher_get_length(CipherContext *, u_int *, u_int, |
|
const u_char *, u_int); |
void cipher_cleanup(CipherContext *); |
void cipher_cleanup(CipherContext *); |
void cipher_set_key_string(CipherContext *, const Cipher *, const char *, int); |
void cipher_set_key_string(CipherContext *, const Cipher *, const char *, int); |
u_int cipher_blocksize(const Cipher *); |
u_int cipher_blocksize(const Cipher *); |