Specifications

Red Hat Enterprise Linux to Oracle Solaris Porting Guide
66
TABLE 7-1. API AND IMPLEMENTATION DIFFERENCES
RHEL ORACLE SOLARIS 11
int MD5_Final(unsigned char *md, MD5_CTX *c); void MD5Final(unsigned char *output, MD5_CTX
*context);
SHA1
unsigned char *SHA1(const unsigned char *d,
unsigned long n, unsigned char *md);
int SHA1_Init(SHA_CTX *c); void SHA1Init(SHA1_CTX *context);
int SHA1_Update(SHA_CTX *c, const void *data,
unsigned long len);
void SHA1Update(SHA1_CTX *context, unsigned
char *input, unsigned int inlen);
int SHA1_Final(unsigned char *md, SHA_CTX *c); void SHA1Final(unsigned char *output, SHA1_CTX
*context);
RSA
int RSA_get_ex_new_index(long argl, char
*argp, int (*new_func)(), int (*dup_func)(),
void (*free_func)());
int RSA_get_ex_new_index(long argl, void
*argp, CRYPTO_EX_new *new_func, CRYPTO_EX_dup
*dup_func, CRYPTO_EX_free *free_func);
int RSA_set_ex_data(RSA *r,int idx,char *arg); int RSA_set_ex_data(RSA *r, int idx, void
*arg);
char *RSA_get_ex_data(RSA *r, int idx); void *RSA_get_ex_data(RSA *r, int idx);
typedef int CRYPTO_EX_new(void *parent, void
*ptr, CRYPTO_EX_DATA *ad, int idx, long argl,
void *argp);
typedef void CRYPTO_EX_free(void *parent, void
*ptr, CRYPTO_EX_DATA *ad, int idx, long argl,
void *argp);
typedef int CRYPTO_EX_dup(CRYPTO_EX_DATA *to,
CRYPTO_EX_DATA *from, void *from_d, int idx,
long argl, void *argp);
RSA *RSA_new_method(ENGINE *engine); RSA *RSA_new_method(RSA_METHOD *method);
const RSA_METHOD
*RSA_get_default_method(void);
RSA_METHOD *RSA_get_default_method(void);
THE FOLLOWING IMPLEMENTATIONS ARE THE SAME ON BOTH THE PLATFORMS:
DES