📄 crypto.h
字号:
/* This is the default callbacks, but we can have others as well: * this is needed in Win32 where the application malloc and the * library malloc may not be the same. */#define CRYPTO_malloc_init() CRYPTO_set_mem_functions(\ malloc, realloc, free)#if defined CRYPTO_MDEBUG_ALL || defined CRYPTO_MDEBUG_TIME || defined CRYPTO_MDEBUG_THREAD# ifndef CRYPTO_MDEBUG /* avoid duplicate #define */# define CRYPTO_MDEBUG# endif#endif/* Set standard debugging functions (not done by default * unless CRYPTO_MDEBUG is defined) */#define CRYPTO_malloc_debug_init() do {\ CRYPTO_set_mem_debug_functions(\ CRYPTO_dbg_malloc,\ CRYPTO_dbg_realloc,\ CRYPTO_dbg_free,\ CRYPTO_dbg_set_options,\ CRYPTO_dbg_get_options);\ } while(0) int CRYPTO_mem_ctrl(int mode); int CRYPTO_is_mem_check_on(void);/* for applications */#define MemCheck_start() CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ON)#define MemCheck_stop() CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_OFF)/* for library-internal use */#define MemCheck_on() CRYPTO_mem_ctrl(CRYPTO_MEM_CHECK_ENABLE)#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((int)num,__FILE__,__LINE__)#define OPENSSL_realloc(addr,num) \ CRYPTO_realloc((char *)addr,(int)num,__FILE__,__LINE__)#define OPENSSL_remalloc(addr,num) \ CRYPTO_remalloc((char **)addr,(int)num,__FILE__,__LINE__)#define OPENSSL_freeFunc CRYPTO_free#define OPENSSL_free(addr) CRYPTO_free(addr)#define OPENSSL_malloc_locked(num) \ CRYPTO_malloc_locked((int)num,__FILE__,__LINE__)#define OPENSSL_free_locked(addr) CRYPTO_free_locked(addr) const char *SSLeay_version(int type); unsigned long SSLeay(void); int OPENSSL_issetugid(void); int CRYPTO_get_ex_new_index(int idx, STACK_OF(CRYPTO_EX_DATA_FUNCS) ** skp, long argl, void *argp, CRYPTO_EX_new * new_func, CRYPTO_EX_dup * dup_func, CRYPTO_EX_free * free_func); int CRYPTO_set_ex_data(CRYPTO_EX_DATA * ad, int idx, void *val); void *CRYPTO_get_ex_data(CRYPTO_EX_DATA * ad, int idx); int CRYPTO_dup_ex_data(STACK_OF(CRYPTO_EX_DATA_FUNCS) * meth, CRYPTO_EX_DATA * to, CRYPTO_EX_DATA * from); void CRYPTO_free_ex_data(STACK_OF(CRYPTO_EX_DATA_FUNCS) * meth, void *obj, CRYPTO_EX_DATA * ad); void CRYPTO_new_ex_data(STACK_OF(CRYPTO_EX_DATA_FUNCS) * meth, void *obj, CRYPTO_EX_DATA * ad); int CRYPTO_get_new_lockid(char *name); int CRYPTO_num_locks(void); /* return CRYPTO_NUM_LOCKS (shared libs!) */ void CRYPTO_lock(int mode, int type, const char *file, int line); void CRYPTO_set_locking_callback(void (*func) (int mode, int type, const char *file, int line)); void (*CRYPTO_get_locking_callback(void)) (int mode, int type, const char *file, int line); void CRYPTO_set_add_lock_callback(int (*func) (int *num, int mount, int type, const char *file, int line)); int (*CRYPTO_get_add_lock_callback(void)) (int *num, int mount, int type, const char *file, int line); void CRYPTO_set_id_callback(unsigned long (*func) (void)); unsigned long (*CRYPTO_get_id_callback(void)) (void); unsigned long CRYPTO_thread_id(void); const char *CRYPTO_get_lock_name(int type); int CRYPTO_add_lock(int *pointer, int amount, int type, const char *file, int line); int CRYPTO_get_new_dynlockid(void); void CRYPTO_destroy_dynlockid(int i); struct CRYPTO_dynlock_value *CRYPTO_get_dynlock_value(int i); void CRYPTO_set_dynlock_create_callback(struct CRYPTO_dynlock_value *(*dyn_create_function) (const char *file, int line)); void CRYPTO_set_dynlock_lock_callback(void (*dyn_lock_function) (int mode, struct CRYPTO_dynlock_value * l, const char *file, int line)); void CRYPTO_set_dynlock_destroy_callback(void (*dyn_destroy_function) (struct CRYPTO_dynlock_value * l, const char *file, int line)); struct CRYPTO_dynlock_value *(*CRYPTO_get_dynlock_create_callback(void)) (const char *file, int line); void (*CRYPTO_get_dynlock_lock_callback(void)) (int mode, struct CRYPTO_dynlock_value * l, const char *file, int line); void (*CRYPTO_get_dynlock_destroy_callback(void)) (struct CRYPTO_dynlock_value * l, const char *file, int line);/* CRYPTO_set_mem_functions includes CRYPTO_set_locked_mem_functions -- * call the latter last if you need different functions */ int CRYPTO_set_mem_functions(void *(*m) (size_t), void *(*r) (void *, size_t), void (*f) (void *)); int CRYPTO_set_locked_mem_functions(void *(*m) (size_t), void (*free_func) (void *)); 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)); void CRYPTO_get_mem_functions(void *(**m) (size_t), void *(**r) (void *, size_t), void (**f) (void *)); void CRYPTO_get_locked_mem_functions(void *(**m) (size_t), void (**f) (void *)); 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(int num, const char *file, int line); void CRYPTO_free_locked(void *); void *CRYPTO_malloc(int num, const char *file, int line); void CRYPTO_free(void *); void *CRYPTO_realloc(void *addr, int num, const char *file, int line); void *CRYPTO_remalloc(void *addr, int num, const char *file, int line); void CRYPTO_set_mem_debug_options(long bits); long CRYPTO_get_mem_debug_options(void);#define CRYPTO_push_info(info) \ CRYPTO_push_info_(info, __FILE__, __LINE__); int CRYPTO_push_info_(const char *info, const char *file, int line); int CRYPTO_pop_info(void); int CRYPTO_remove_all_info(void);/* Default debugging functions (enabled by CRYPTO_malloc_debug_init() macro; * used as default in CRYPTO_MDEBUG compilations): *//* The last argument has the following significance: * * 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, 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: * * 0: Clear all options. * V_CRYPTO_MDEBUG_TIME (1): Set the "Show Time" option. * V_CRYPTO_MDEBUG_THREAD (2): Set the "Show Thread Number" option. * V_CRYPTO_MDEBUG_ALL (3): 1 + 2 */ void CRYPTO_dbg_set_options(long bits); long CRYPTO_dbg_get_options(void);#ifndef NO_FP_API void CRYPTO_mem_leaks_fp(FILE *);#endif void CRYPTO_mem_leaks(struct bio_st *bio);/* unsigned long order, char *file, int line, int num_bytes, char *addr */ void CRYPTO_mem_leaks_cb(void (*cb) (unsigned long, const char *, int, int, void *));/* BEGIN ERROR CODES *//* The following lines are auto generated by the script mkerr.pl. Any changes * made after this point may be overwritten when the script is next run. */ void ERR_load_CRYPTO_strings(void);/* Error codes for the CRYPTO functions. *//* Function codes. */#define CRYPTO_F_CRYPTO_GET_EX_NEW_INDEX 100#define CRYPTO_F_CRYPTO_GET_NEW_DYNLOCKID 103#define CRYPTO_F_CRYPTO_GET_NEW_LOCKID 101#define CRYPTO_F_CRYPTO_SET_EX_DATA 102/* Reason codes. */#define CRYPTO_R_NO_DYNLOCK_CREATE_CALLBACK 100#ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -