From 018025f0f36a4847df265c9948dbaf7073ed3245 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Fri, 25 Nov 2016 18:16:05 +0000 Subject: Alpha version of the SSL work. Doesn't build yet, but I'm scared of losing it, so using git as storage. Will fix the stupid bugs now, the tricky bugs later. --- src/sbearssl/sbearssl_pkey_from.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 src/sbearssl/sbearssl_pkey_from.c (limited to 'src/sbearssl/sbearssl_pkey_from.c') diff --git a/src/sbearssl/sbearssl_pkey_from.c b/src/sbearssl/sbearssl_pkey_from.c new file mode 100644 index 0000000..e9745e8 --- /dev/null +++ b/src/sbearssl/sbearssl_pkey_from.c @@ -0,0 +1,23 @@ +/* ISC license. */ + +#include +#include +#include +#include + +int sbearssl_pkey_from (sbearssl_pkey *l, br_x509_key const *k, stralloc *sa) +{ + switch (k->key_type) + { + case BR_KEYTYPE_RSA : + if (!sbearssl_rsa_pkey_from(&l->data.rsa, &k->key.rsa, sa) return 0 ; + break ; + case BR_KEYTYPE_EC : + if (!sbearssl_ec_pkey_from(&l->data.ec, &k->key.ec, sa) return 0 ; + break ; + default : + return (errno = EINVAL, 0) ; + } + l->type = k->key_type ; + return 1 ; +} -- cgit v1.3.1