Lines Matching defs:gctx

84 static void *s390x_ecx_keygen25519(struct ecx_gen_ctx *gctx);
85 static void *s390x_ecx_keygen448(struct ecx_gen_ctx *gctx);
86 static void *s390x_ecd_keygen25519(struct ecx_gen_ctx *gctx);
87 static void *s390x_ecd_keygen448(struct ecx_gen_ctx *gctx);
476 struct ecx_gen_ctx *gctx = NULL;
481 if ((gctx = OPENSSL_zalloc(sizeof(*gctx))) != NULL) {
482 gctx->libctx = libctx;
483 gctx->type = type;
484 gctx->selection = selection;
486 if (!ecx_gen_set_params(gctx, params)) {
487 OPENSSL_free(gctx);
488 gctx = NULL;
490 return gctx;
519 struct ecx_gen_ctx *gctx = genctx;
522 if (gctx == NULL)
534 switch (gctx->type) {
556 OPENSSL_free(gctx->propq);
557 gctx->propq = OPENSSL_strdup(p->data);
558 if (gctx->propq == NULL)
576 static void *ecx_gen(struct ecx_gen_ctx *gctx)
581 if (gctx == NULL)
583 if ((key = ossl_ecx_key_new(gctx->libctx, gctx->type, 0,
584 gctx->propq)) == NULL) {
590 if ((gctx->selection & OSSL_KEYMGMT_SELECT_KEYPAIR) == 0)
597 if (RAND_priv_bytes_ex(gctx->libctx, privkey, key->keylen, 0) <= 0)
599 switch (gctx->type) {
612 if (!ossl_ed25519_public_from_private(gctx->libctx, key->pubkey, privkey,
613 gctx->propq))
617 if (!ossl_ed448_public_from_private(gctx->libctx, key->pubkey, privkey,
618 gctx->propq))
631 struct ecx_gen_ctx *gctx = genctx;
638 return s390x_ecx_keygen25519(gctx);
640 return ecx_gen(gctx);
645 struct ecx_gen_ctx *gctx = genctx;
652 return s390x_ecx_keygen448(gctx);
654 return ecx_gen(gctx);
659 struct ecx_gen_ctx *gctx = genctx;
669 return s390x_ecd_keygen25519(gctx);
671 return ecx_gen(gctx);
676 struct ecx_gen_ctx *gctx = genctx;
685 return s390x_ecd_keygen448(gctx);
687 return ecx_gen(gctx);
692 struct ecx_gen_ctx *gctx = genctx;
694 OPENSSL_free(gctx->propq);
695 OPENSSL_free(gctx);
828 static void *s390x_ecx_keygen25519(struct ecx_gen_ctx *gctx)
835 ECX_KEY *key = ossl_ecx_key_new(gctx->libctx, ECX_KEY_TYPE_X25519, 1,
836 gctx->propq);
845 if ((gctx->selection & OSSL_KEYMGMT_SELECT_KEYPAIR) == 0)
856 if (RAND_priv_bytes_ex(gctx->libctx, privkey, X25519_KEYLEN, 0) <= 0)
872 static void *s390x_ecx_keygen448(struct ecx_gen_ctx *gctx)
881 ECX_KEY *key = ossl_ecx_key_new(gctx->libctx, ECX_KEY_TYPE_X448, 1,
882 gctx->propq);
891 if ((gctx->selection & OSSL_KEYMGMT_SELECT_KEYPAIR) == 0)
902 if (RAND_priv_bytes_ex(gctx->libctx, privkey, X448_KEYLEN, 0) <= 0)
917 static void *s390x_ecd_keygen25519(struct ecx_gen_ctx *gctx)
930 ECX_KEY *key = ossl_ecx_key_new(gctx->libctx, ECX_KEY_TYPE_ED25519, 1,
931 gctx->propq);
943 if ((gctx->selection & OSSL_KEYMGMT_SELECT_KEYPAIR) == 0)
954 if (RAND_priv_bytes_ex(gctx->libctx, privkey, ED25519_KEYLEN, 0) <= 0)
957 sha = EVP_MD_fetch(gctx->libctx, "SHA512", gctx->propq);
981 static void *s390x_ecd_keygen448(struct ecx_gen_ctx *gctx)
998 ECX_KEY *key = ossl_ecx_key_new(gctx->libctx, ECX_KEY_TYPE_ED448, 1,
999 gctx->propq);
1010 if ((gctx->selection & OSSL_KEYMGMT_SELECT_KEYPAIR) == 0)
1021 shake = EVP_MD_fetch(gctx->libctx, "SHAKE256", gctx->propq);
1024 if (RAND_priv_bytes_ex(gctx->libctx, privkey, ED448_KEYLEN, 0) <= 0)