summaryrefslogtreecommitdiff
path: root/xs_openssl.h
diff options
context:
space:
mode:
authorGravatar default2023-01-28 17:49:02 +0100
committerGravatar default2023-01-28 17:49:02 +0100
commit876bebd9ac904ca930117237edaf8c3dcae7a922 (patch)
tree7e91e26c49e18fd80c7de93ff275ffce83fb14df /xs_openssl.h
parentBumped version. (diff)
downloadpenes-snac2-876bebd9ac904ca930117237edaf8c3dcae7a922.tar.gz
penes-snac2-876bebd9ac904ca930117237edaf8c3dcae7a922.tar.xz
penes-snac2-876bebd9ac904ca930117237edaf8c3dcae7a922.zip
Backport from xs.
Diffstat (limited to '')
-rw-r--r--xs_openssl.h34
1 files changed, 17 insertions, 17 deletions
diff --git a/xs_openssl.h b/xs_openssl.h
index 33de853..f9cc452 100644
--- a/xs_openssl.h
+++ b/xs_openssl.h
@@ -4,14 +4,14 @@
4 4
5#define _XS_OPENSSL_H 5#define _XS_OPENSSL_H
6 6
7d_char *xs_md5_hex(const void *input, int size); 7xs_str *xs_md5_hex(const xs_val *input, int size);
8d_char *xs_sha1_hex(const void *input, int size); 8xs_str *xs_sha1_hex(const xs_val *input, int size);
9d_char *xs_sha256_hex(const void *input, int size); 9xs_str *xs_sha256_hex(const xs_val *input, int size);
10d_char *xs_sha256_base64(const void *input, int size); 10xs_str *xs_sha256_base64(const xs_val *input, int size);
11d_char *xs_rsa_genkey(int bits); 11xs_dict *xs_rsa_genkey(int bits);
12d_char *xs_rsa_sign(const char *secret, const char *mem, int size); 12xs_str *xs_rsa_sign(const char *secret, const char *mem, int size);
13int xs_rsa_verify(const char *pubkey, const char *mem, int size, const char *b64sig); 13int xs_rsa_verify(const char *pubkey, const char *mem, int size, const char *b64sig);
14d_char *xs_evp_sign(const char *secret, const char *mem, int size); 14xs_str *xs_evp_sign(const char *secret, const char *mem, int size);
15int xs_evp_verify(const char *pubkey, const char *mem, int size, const char *b64sig); 15int xs_evp_verify(const char *pubkey, const char *mem, int size, const char *b64sig);
16 16
17 17
@@ -23,7 +23,7 @@ int xs_evp_verify(const char *pubkey, const char *mem, int size, const char *b64
23#include "openssl/pem.h" 23#include "openssl/pem.h"
24#include "openssl/evp.h" 24#include "openssl/evp.h"
25 25
26d_char *xs_md5_hex(const void *input, int size) 26xs_str *xs_md5_hex(const xs_val *input, int size)
27{ 27{
28 unsigned char md5[16]; 28 unsigned char md5[16];
29 MD5_CTX ctx; 29 MD5_CTX ctx;
@@ -36,7 +36,7 @@ d_char *xs_md5_hex(const void *input, int size)
36} 36}
37 37
38 38
39d_char *xs_sha1_hex(const void *input, int size) 39xs_str *xs_sha1_hex(const xs_val *input, int size)
40{ 40{
41 unsigned char sha1[20]; 41 unsigned char sha1[20];
42 SHA_CTX ctx; 42 SHA_CTX ctx;
@@ -61,7 +61,7 @@ unsigned char *_xs_sha256(const void *input, int size, unsigned char *sha256)
61} 61}
62 62
63 63
64d_char *xs_sha256_hex(const void *input, int size) 64xs_str *xs_sha256_hex(const xs_val *input, int size)
65{ 65{
66 unsigned char sha256[32]; 66 unsigned char sha256[32];
67 67
@@ -71,7 +71,7 @@ d_char *xs_sha256_hex(const void *input, int size)
71} 71}
72 72
73 73
74d_char *xs_sha256_base64(const void *input, int size) 74xs_str *xs_sha256_base64(const xs_val *input, int size)
75{ 75{
76 unsigned char sha256[32]; 76 unsigned char sha256[32];
77 77
@@ -81,12 +81,12 @@ d_char *xs_sha256_base64(const void *input, int size)
81} 81}
82 82
83 83
84d_char *xs_rsa_genkey(int bits) 84xs_dict *xs_rsa_genkey(int bits)
85/* generates an RSA keypair */ 85/* generates an RSA keypair */
86{ 86{
87 BIGNUM *bne; 87 BIGNUM *bne;
88 RSA *rsa; 88 RSA *rsa;
89 d_char *keypair = NULL; 89 xs_dict *keypair = NULL;
90 90
91 if ((bne = BN_new()) != NULL) { 91 if ((bne = BN_new()) != NULL) {
92 if (BN_set_word(bne, RSA_F4) == 1) { 92 if (BN_set_word(bne, RSA_F4) == 1) {
@@ -119,10 +119,10 @@ d_char *xs_rsa_genkey(int bits)
119} 119}
120 120
121 121
122d_char *xs_rsa_sign(const char *secret, const char *mem, int size) 122xs_str *xs_rsa_sign(const char *secret, const char *mem, int size)
123/* signs a memory block (secret is in PEM format) */ 123/* signs a memory block (secret is in PEM format) */
124{ 124{
125 d_char *signature = NULL; 125 xs_str *signature = NULL;
126 BIO *b; 126 BIO *b;
127 RSA *rsa; 127 RSA *rsa;
128 unsigned char *sig; 128 unsigned char *sig;
@@ -176,10 +176,10 @@ int xs_rsa_verify(const char *pubkey, const char *mem, int size, const char *b64
176} 176}
177 177
178 178
179d_char *xs_evp_sign(const char *secret, const char *mem, int size) 179xs_str *xs_evp_sign(const char *secret, const char *mem, int size)
180/* signs a memory block (secret is in PEM format) */ 180/* signs a memory block (secret is in PEM format) */
181{ 181{
182 d_char *signature = NULL; 182 xs_str *signature = NULL;
183 BIO *b; 183 BIO *b;
184 unsigned char *sig; 184 unsigned char *sig;
185 unsigned int sig_len; 185 unsigned int sig_len;