23 #ifndef _ASTERISK_CRYPTO_H
24 #define _ASTERISK_CRYPTO_H
26 #if defined(__cplusplus) || defined(c_plusplus)
36 #define AST_CRYPTO_RSA_KEY_BITS 1024
37 #define AST_CRYPTO_AES_BLOCKSIZE 128
40 unsigned char raw[AST_CRYPTO_AES_BLOCKSIZE / 8];
46 #define AST_KEY_PUBLIC (1 << 0)
47 #define AST_KEY_PRIVATE (1 << 1)
149 { ast_log(LOG_WARNING,
"AES encryption disabled. Install OpenSSL.\n");
return -1; });
161 { ast_log(LOG_WARNING,
"AES encryption disabled. Install OpenSSL.\n");
return -1; });
173 { ast_log(LOG_WARNING,
"AES encryption disabled. Install OpenSSL.\n");
return -1; });
185 { ast_log(LOG_WARNING,
"AES encryption disabled. Install OpenSSL.\n");
return -1; });
191 #if defined(__cplusplus) || defined(c_plusplus)
Optional API function macros.
#define AST_OPTIONAL_API(result, name, proto, stub)
Declare an optional API function.
int AST_OPTIONAL_API_NAME() ast_check_signature(struct ast_key *key, const char *msg, const char *sig)
base64 decode then sent to __ast_check_signature_bin
int AST_OPTIONAL_API_NAME() ast_sign(struct ast_key *key, char *msg, char *sig)
wrapper for __ast_sign_bin then base64 encode it
int AST_OPTIONAL_API_NAME() ast_encrypt_bin(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key)
encrypt a message
int AST_OPTIONAL_API_NAME() ast_sign_bin(struct ast_key *key, const char *msg, int msglen, unsigned char *dsig)
signs outgoing message with public key
int AST_OPTIONAL_API_NAME() ast_check_signature_bin(struct ast_key *key, const char *msg, int msglen, const unsigned char *dsig)
check signature of a message
Support for logging to various files, console and syslog Configuration in file logger.conf.
struct ast_key *AST_OPTIONAL_API_NAME() ast_key_get(const char *kname, int ktype)
return the ast_key structure for name
int AST_OPTIONAL_API_NAME() ast_decrypt_bin(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key)
decrypt a message