X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=crypto%2Fcrypto.h;h=61605769bb2b3d2016d156ee5f39f27aed832d24;hb=0e05b51fe5eecb9cf6801636b3eca48d2cfef80f;hp=1df5926efd3d87105ebd3c09bc23e477821fec59;hpb=4d6e1e4f29de455b5e644ea9cae5d5f5a2dbef33;p=oweals%2Fopenssl.git diff --git a/crypto/crypto.h b/crypto/crypto.h index 1df5926efd..61605769bb 100644 --- a/crypto/crypto.h +++ b/crypto/crypto.h @@ -365,7 +365,7 @@ int CRYPTO_is_mem_check_on(void); #define MemCheck_off() CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_DISABLE) #define is_MemCheck_on() CRYPTO_is_mem_check_on() -#define OPENSSL_malloc(num) CRYPTO_malloc(num,__FILE__,__LINE__) +#define OPENSSL_malloc(num) CRYPTO_malloc((int)num,__FILE__,__LINE__) #define OPENSSL_strdup(str) CRYPTO_strdup((str),__FILE__,__LINE__) #define OPENSSL_realloc(addr,num) \ CRYPTO_realloc((char *)addr,(int)num,__FILE__,__LINE__) @@ -469,10 +469,8 @@ int CRYPTO_set_mem_ex_functions(void *(*m)(size_t,const char *,int), void (*f)(void *)); int CRYPTO_set_locked_mem_ex_functions(void *(*m)(size_t,const char *,int), void (*free_func)(void *)); -int CRYPTO_set_mem_debug_functions(void (*m)(void *,size_t,const char *,int, - int), - void (*r)(void *,void *,size_t,const char *, - int,int), +int CRYPTO_set_mem_debug_functions(void (*m)(void *,int,const char *,int,int), + void (*r)(void *,void *,int,const char *,int,int), void (*f)(void *,int), void (*so)(long), long (*go)(void)); @@ -483,23 +481,21 @@ void CRYPTO_get_mem_ex_functions(void *(**m)(size_t,const char *,int), void (**f)(void *)); void CRYPTO_get_locked_mem_ex_functions(void *(**m)(size_t,const char *,int), void (**f)(void *)); -void CRYPTO_get_mem_debug_functions(void (**m)(void *,size_t,const char *,int, - int), - void (**r)(void *,void *,size_t, - const char *,int,int), +void CRYPTO_get_mem_debug_functions(void (**m)(void *,int,const char *,int,int), + void (**r)(void *,void *,int,const char *,int,int), void (**f)(void *,int), void (**so)(long), long (**go)(void)); -void *CRYPTO_malloc_locked(size_t num, const char *file, int line); -void CRYPTO_free_locked(void *); -void *CRYPTO_malloc(size_t num, const char *file, int line); +void *CRYPTO_malloc_locked(int num, const char *file, int line); +void CRYPTO_free_locked(void *ptr); +void *CRYPTO_malloc(int num, const char *file, int line); char *CRYPTO_strdup(const char *str, const char *file, int line); -void CRYPTO_free(void *); -void *CRYPTO_realloc(void *addr, size_t num, const char *file, int line); -void *CRYPTO_realloc_clean(void *addr, size_t old_num, size_t num, - const char *file, int line); -void *CRYPTO_remalloc(void *addr, size_t num, const char *file, int line); +void CRYPTO_free(void *ptr); +void *CRYPTO_realloc(void *addr,int num, const char *file, int line); +void *CRYPTO_realloc_clean(void *addr,int old_num,int num,const char *file, + int line); +void *CRYPTO_remalloc(void *addr,int num, const char *file, int line); void OPENSSL_cleanse(void *ptr, size_t len); @@ -520,10 +516,8 @@ int CRYPTO_remove_all_info(void); * 0: called before the actual memory allocation has taken place * 1: called after the actual memory allocation has taken place */ -void CRYPTO_dbg_malloc(void *addr,size_t num,const char *file,int line, - int before_p); -void CRYPTO_dbg_realloc(void *addr1,void *addr2,size_t num,const char *file, - int line,int before_p); +void CRYPTO_dbg_malloc(void *addr,int num,const char *file,int line,int before_p); +void CRYPTO_dbg_realloc(void *addr1,void *addr2,int num,const char *file,int line,int before_p); void CRYPTO_dbg_free(void *addr,int before_p); /* Tell the debugging code about options. By default, the following values * apply: @@ -551,6 +545,34 @@ void OpenSSLDie(const char *file,int line,const char *assertion); unsigned long *OPENSSL_ia32cap_loc(void); #define OPENSSL_ia32cap (*(OPENSSL_ia32cap_loc())) +int OPENSSL_isservice(void); + +int FIPS_mode(void); +int FIPS_mode_set(int r); + +void OPENSSL_init(void); + +#define fips_md_init(alg) fips_md_init_ctx(alg, alg) + +#ifdef OPENSSL_FIPS +#define fips_md_init_ctx(alg, cx) \ + int alg##_Init(cx##_CTX *c) \ + { \ + if (FIPS_mode()) OpenSSLDie(__FILE__, __LINE__, \ + "Low level API call to digest " #alg " forbidden in FIPS mode!"); \ + return private_##alg##_Init(c); \ + } \ + int private_##alg##_Init(cx##_CTX *c) + +#define fips_cipher_abort(alg) \ + if (FIPS_mode()) OpenSSLDie(__FILE__, __LINE__, \ + "Low level API call to cipher " #alg " forbidden in FIPS mode!") + +#else +#define fips_md_init_ctx(alg, cx) \ + int alg##_Init(cx##_CTX *c) +#define fips_cipher_abort(alg) while(0) +#endif /* BEGIN ERROR CODES */ /* The following lines are auto generated by the script mkerr.pl. Any changes @@ -567,11 +589,13 @@ void ERR_load_CRYPTO_strings(void); #define CRYPTO_F_CRYPTO_SET_EX_DATA 102 #define CRYPTO_F_DEF_ADD_INDEX 104 #define CRYPTO_F_DEF_GET_CLASS 105 +#define CRYPTO_F_FIPS_MODE_SET 109 #define CRYPTO_F_INT_DUP_EX_DATA 106 #define CRYPTO_F_INT_FREE_EX_DATA 107 #define CRYPTO_F_INT_NEW_EX_DATA 108 /* Reason codes. */ +#define CRYPTO_R_FIPS_MODE_NOT_SUPPORTED 101 #define CRYPTO_R_NO_DYNLOCK_CREATE_CALLBACK 100 #ifdef __cplusplus