X-Git-Url: http://git.silcnet.org/gitweb/?a=blobdiff_plain;f=lib%2Fsilccrypt%2Fsilcpkcs.h;h=baaff0c68decd32b878637111e63cd3aa7a756f7;hb=72cfa31520ebc0058763a30e21c13f6e9a964aa0;hp=9614bb8d4927bd994ef73ccce324700603baf2bf;hpb=2be0be2432fff760084c4093291e79f1fa6262d8;p=silc.git diff --git a/lib/silccrypt/silcpkcs.h b/lib/silccrypt/silcpkcs.h index 9614bb8d..baaff0c6 100644 --- a/lib/silccrypt/silcpkcs.h +++ b/lib/silccrypt/silcpkcs.h @@ -27,23 +27,23 @@ typedef struct SilcPKCSObjectStruct { char *name; void *data_context; - int (*init)(void *, unsigned int, SilcRng); + int (*init)(void *, uint32, SilcRng); void (*clear_keys)(void *); - unsigned char *(*get_public_key)(void *, unsigned int *); - unsigned char *(*get_private_key)(void *, unsigned int *); - int (*set_public_key)(void *, unsigned char *, unsigned int); - int (*set_private_key)(void *, unsigned char *, unsigned int); - unsigned int (*context_len)(); - unsigned int (*data_context_len)(); + unsigned char *(*get_public_key)(void *, uint32 *); + unsigned char *(*get_private_key)(void *, uint32 *); + int (*set_public_key)(void *, unsigned char *, uint32); + int (*set_private_key)(void *, unsigned char *, uint32); + uint32 (*context_len)(); + uint32 (*data_context_len)(); int (*set_arg)(void *, void *, int, SilcInt); - int (*encrypt)(void *, unsigned char *, unsigned int, - unsigned char *, unsigned int *); - int (*decrypt)(void *, unsigned char *, unsigned int, - unsigned char *, unsigned int *); - int (*sign)(void *, unsigned char *, unsigned int, - unsigned char *, unsigned int *); - int (*verify)(void *, unsigned char *, unsigned int, - unsigned char *, unsigned int); + int (*encrypt)(void *, unsigned char *, uint32, + unsigned char *, uint32 *); + int (*decrypt)(void *, unsigned char *, uint32, + unsigned char *, uint32 *); + int (*sign)(void *, unsigned char *, uint32, + unsigned char *, uint32 *); + int (*verify)(void *, unsigned char *, uint32, + unsigned char *, uint32); } SilcPKCSObject; /* The main SILC PKCS structure. Use SilcPKCS instead of SilcPKCSStruct. @@ -51,9 +51,9 @@ typedef struct SilcPKCSObjectStruct { typedef struct SilcPKCSStruct { void *context; SilcPKCSObject *pkcs; - unsigned int key_len; + uint32 key_len; - unsigned int (*get_key_len)(struct SilcPKCSStruct *); + uint32 (*get_key_len)(struct SilcPKCSStruct *); } *SilcPKCS; /* List of all PKCS in SILC. */ @@ -63,11 +63,11 @@ extern SilcPKCSObject silc_pkcs_list[]; object. Public keys received from network must be in this format as well. */ typedef struct { - unsigned int len; + uint32 len; char *name; char *identifier; unsigned char *pk; - unsigned int pk_len; + uint32 pk_len; } *SilcPublicKey; /* SILC style private key object. Private key is read from file to this @@ -75,7 +75,7 @@ typedef struct { typedef struct { char *name; unsigned char *prv; - unsigned int prv_len; + uint32 prv_len; } *SilcPrivateKey; /* Public and private key file headers */ @@ -102,7 +102,7 @@ typedef struct { would look something like this: #define SILC_PKCS_API_INIT(pkcs) \ - inline int silc_##pkcs##_init(void *context, unsigned int keylen, \ + inline int silc_##pkcs##_init(void *context, uint32 keylen, \ void *p1, void *p2) Now we wouldn't have to send the SilcRng object since the primes are @@ -114,26 +114,26 @@ typedef struct { */ #define SILC_PKCS_API_INIT(pkcs) \ -int silc_##pkcs##_init(void *context, unsigned int keylen, \ +int silc_##pkcs##_init(void *context, uint32 keylen, \ SilcRng rng) #define SILC_PKCS_API_CLEAR_KEYS(pkcs) \ void silc_##pkcs##_clear_keys(void *context) #define SILC_PKCS_API_GET_PUBLIC_KEY(pkcs) \ unsigned char *silc_##pkcs##_get_public_key(void *context, \ - unsigned int *ret_len) + uint32 *ret_len) #define SILC_PKCS_API_GET_PRIVATE_KEY(pkcs) \ unsigned char *silc_##pkcs##_get_private_key(void *context, \ - unsigned int *ret_len) + uint32 *ret_len) #define SILC_PKCS_API_SET_PUBLIC_KEY(pkcs) \ int silc_##pkcs##_set_public_key(void *context, unsigned char *key_data, \ - unsigned int key_len) + uint32 key_len) #define SILC_PKCS_API_SET_PRIVATE_KEY(pkcs) \ int silc_##pkcs##_set_private_key(void *context, unsigned char *key_data, \ - unsigned int key_len) + uint32 key_len) #define SILC_PKCS_API_CONTEXT_LEN(pkcs) \ -unsigned int silc_##pkcs##_context_len() +uint32 silc_##pkcs##_context_len() #define SILC_PKCS_API_DATA_CONTEXT_LEN(pkcs) \ -unsigned int silc_##pkcs##_data_context_len() +uint32 silc_##pkcs##_data_context_len() #define SILC_PKCS_API_SET_ARG(pkcs) \ int silc_##pkcs##_set_arg(void *context, \ void *data_context, \ @@ -142,98 +142,98 @@ int silc_##pkcs##_set_arg(void *context, \ #define SILC_PKCS_API_ENCRYPT(pkcs) \ int silc_##pkcs##_encrypt(void *context, \ unsigned char *src, \ - unsigned int src_len, \ + uint32 src_len, \ unsigned char *dst, \ - unsigned int *dst_len) + uint32 *dst_len) #define SILC_PKCS_API_DECRYPT(pkcs) \ int silc_##pkcs##_decrypt(void *context, \ unsigned char *src, \ - unsigned int src_len, \ + uint32 src_len, \ unsigned char *dst, \ - unsigned int *dst_len) + uint32 *dst_len) #define SILC_PKCS_API_SIGN(pkcs) \ int silc_##pkcs##_sign(void *context, \ unsigned char *src, \ - unsigned int src_len, \ + uint32 src_len, \ unsigned char *dst, \ - unsigned int *dst_len) + uint32 *dst_len) #define SILC_PKCS_API_VERIFY(pkcs) \ int silc_##pkcs##_verify(void *context, \ unsigned char *signature, \ - unsigned int signature_len, \ + uint32 signature_len, \ unsigned char *data, \ - unsigned int data_len) + uint32 data_len) /* Prototypes */ int silc_pkcs_alloc(const unsigned char *name, SilcPKCS *new_pkcs); void silc_pkcs_free(SilcPKCS pkcs); int silc_pkcs_is_supported(const unsigned char *name); char *silc_pkcs_get_supported(); -unsigned int silc_pkcs_get_key_len(SilcPKCS self); -unsigned char *silc_pkcs_get_public_key(SilcPKCS pkcs, unsigned int *len); -unsigned char *silc_pkcs_get_private_key(SilcPKCS pkcs, unsigned int *len); +uint32 silc_pkcs_get_key_len(SilcPKCS self); +unsigned char *silc_pkcs_get_public_key(SilcPKCS pkcs, uint32 *len); +unsigned char *silc_pkcs_get_private_key(SilcPKCS pkcs, uint32 *len); int silc_pkcs_public_key_set(SilcPKCS pkcs, SilcPublicKey public_key); int silc_pkcs_public_key_data_set(SilcPKCS pkcs, unsigned char *pk, - unsigned int pk_len); + uint32 pk_len); int silc_pkcs_private_key_set(SilcPKCS pkcs, SilcPrivateKey private_key); int silc_pkcs_private_key_data_set(SilcPKCS pkcs, unsigned char *prv, - unsigned int prv_len); -int silc_pkcs_encrypt(SilcPKCS pkcs, unsigned char *src, unsigned int src_len, - unsigned char *dst, unsigned int *dst_len); -int silc_pkcs_decrypt(SilcPKCS pkcs, unsigned char *src, unsigned int src_len, - unsigned char *dst, unsigned int *dst_len); -int silc_pkcs_sign(SilcPKCS pkcs, unsigned char *src, unsigned int src_len, - unsigned char *dst, unsigned int *dst_len); + uint32 prv_len); +int silc_pkcs_encrypt(SilcPKCS pkcs, unsigned char *src, uint32 src_len, + unsigned char *dst, uint32 *dst_len); +int silc_pkcs_decrypt(SilcPKCS pkcs, unsigned char *src, uint32 src_len, + unsigned char *dst, uint32 *dst_len); +int silc_pkcs_sign(SilcPKCS pkcs, unsigned char *src, uint32 src_len, + unsigned char *dst, uint32 *dst_len); int silc_pkcs_verify(SilcPKCS pkcs, unsigned char *signature, - unsigned int signature_len, unsigned char *data, - unsigned int data_len); + uint32 signature_len, unsigned char *data, + uint32 data_len); int silc_pkcs_sign_with_hash(SilcPKCS pkcs, SilcHash hash, - unsigned char *src, unsigned int src_len, - unsigned char *dst, unsigned int *dst_len); + unsigned char *src, uint32 src_len, + unsigned char *dst, uint32 *dst_len); int silc_pkcs_verify_with_hash(SilcPKCS pkcs, SilcHash hash, unsigned char *signature, - unsigned int signature_len, + uint32 signature_len, unsigned char *data, - unsigned int data_len); + uint32 data_len); char *silc_pkcs_encode_identifier(char *username, char *host, char *realname, char *email, char *org, char *country); SilcPublicKey silc_pkcs_public_key_alloc(char *name, char *identifier, unsigned char *pk, - unsigned int pk_len); + uint32 pk_len); void silc_pkcs_public_key_free(SilcPublicKey public_key); SilcPrivateKey silc_pkcs_private_key_alloc(char *name, unsigned char *prv, - unsigned int prv_len); + uint32 prv_len); void silc_pkcs_private_key_free(SilcPrivateKey private_key); unsigned char * -silc_pkcs_public_key_encode(SilcPublicKey public_key, unsigned int *len); +silc_pkcs_public_key_encode(SilcPublicKey public_key, uint32 *len); unsigned char * -silc_pkcs_public_key_data_encode(unsigned char *pk, unsigned int pk_len, +silc_pkcs_public_key_data_encode(unsigned char *pk, uint32 pk_len, char *pkcs, char *identifier, - unsigned int *len); -int silc_pkcs_public_key_decode(unsigned char *data, unsigned int data_len, + uint32 *len); +int silc_pkcs_public_key_decode(unsigned char *data, uint32 data_len, SilcPublicKey *public_key); unsigned char * -silc_pkcs_private_key_encode(SilcPrivateKey private_key, unsigned int *len); +silc_pkcs_private_key_encode(SilcPrivateKey private_key, uint32 *len); unsigned char * -silc_pkcs_private_key_data_encode(unsigned char *prv, unsigned int prv_len, - char *pkcs, unsigned int *len); -int silc_pkcs_private_key_decode(unsigned char *data, unsigned int data_len, +silc_pkcs_private_key_data_encode(unsigned char *prv, uint32 prv_len, + char *pkcs, uint32 *len); +int silc_pkcs_private_key_decode(unsigned char *data, uint32 data_len, SilcPrivateKey *private_key); int silc_pkcs_save_public_key(char *filename, SilcPublicKey public_key, - unsigned int encoding); + uint32 encoding); int silc_pkcs_save_public_key_data(char *filename, unsigned char *data, - unsigned int data_len, - unsigned int encoding); + uint32 data_len, + uint32 encoding); int silc_pkcs_save_private_key(char *filename, SilcPrivateKey private_key, unsigned char *passphrase, - unsigned int encoding); + uint32 encoding); int silc_pkcs_save_private_key_data(char *filename, unsigned char *data, - unsigned int data_len, + uint32 data_len, unsigned char *passphrase, - unsigned int encoding); + uint32 encoding); int silc_pkcs_load_public_key(char *filename, SilcPublicKey *public_key, - unsigned int encoding); + uint32 encoding); int silc_pkcs_load_private_key(char *filename, SilcPrivateKey *private_key, - unsigned int encoding); + uint32 encoding); #endif