Clean up adsistub file a bit (just spacing) and change over the crypto sub to use this build_stub macro strategy.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@65248 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp 2007-05-20 17:52:00 +00:00
parent 42c63dd2ed
commit 3821954757
2 changed files with 58 additions and 82 deletions

View File

@ -33,63 +33,39 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/crypto.h"
#include "asterisk/logger.h"
/* Hrm, I wonder if the compiler is smart enough to only create two functions
for all these... I could force it to only make two, but those would be some
really nasty looking casts. */
static struct ast_key *stub_ast_key_get(const char *kname, int ktype)
{
ast_log(LOG_NOTICE, "Crypto support not loaded!\n");
return NULL;
}
static int stub_ast_check_signature(struct ast_key *key, const char *msg, const char *sig)
{
ast_log(LOG_NOTICE, "Crypto support not loaded!\n");
return -1;
}
static int stub_ast_check_signature_bin(struct ast_key *key, const char *msg, int msglen, const unsigned char *sig)
{
ast_log(LOG_NOTICE, "Crypto support not loaded!\n");
return -1;
}
static int stub_ast_sign(struct ast_key *key, char *msg, char *sig)
{
ast_log(LOG_NOTICE, "Crypto support not loaded!\n");
return -1;
}
static int stub_ast_sign_bin(struct ast_key *key, const char *msg, int msglen, unsigned char *sig)
{
ast_log(LOG_NOTICE, "Crypto support not loaded!\n");
return -1;
}
static int stub_ast_encdec_bin(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key)
{
ast_log(LOG_NOTICE, "Crypto support not loaded!\n");
return -1;
}
#ifdef SKREP
#define build_stub(func_name,...) \
static int stub_ ## func_name(__VA_ARGS__) \
{ \
ast_log(LOG_NOTICE, "Crypto support not loaded!\n"); \
return -1; \
} \
\
int (*func_name)(__VA_ARGS__) = \
stub_ ## func_name;
#endif
#define build_stub(func_name,...) \
static int stub_##func_name(__VA_ARGS__) \
{ \
ast_log(LOG_NOTICE, "Crypto support not loaded!\n"); \
return -1; \
} \
\
int (*func_name)(__VA_ARGS__) = \
stub_##func_name;
struct ast_key *(*ast_key_get)(const char *key, int type) =
stub_ast_key_get;
int (*ast_check_signature)(struct ast_key *key, const char *msg, const char *sig) =
stub_ast_check_signature;
int (*ast_check_signature_bin)(struct ast_key *key, const char *msg, int msglen, const unsigned char *sig) =
stub_ast_check_signature_bin;
int (*ast_sign)(struct ast_key *key, char *msg, char *sig) =
stub_ast_sign;
int (*ast_sign_bin)(struct ast_key *key, const char *msg, int msglen, unsigned char *sig) =
stub_ast_sign_bin;
int (*ast_encrypt_bin)(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key) =
stub_ast_encdec_bin;
int (*ast_decrypt_bin)(unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key) =
stub_ast_encdec_bin;
build_stub(ast_check_signature, struct ast_key *key, const char *msg, const char *sig);
build_stub(ast_check_signature_bin, struct ast_key *key, const char *msg, int msglen, const unsigned char *sig);
build_stub(ast_sign, struct ast_key *key, char *msg, char *sig);
build_stub(ast_sign_bin, struct ast_key *key, const char *msg, int msglen, unsigned char *sig);
build_stub(ast_encrypt_bin, unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key);
build_stub(ast_decrypt_bin, unsigned char *dst, const unsigned char *src, int srclen, struct ast_key *key);