@@ -575,9 +575,6 @@ int _goboringcrypto_ECDSA_verify(EVP_MD *md, const uint8_t *arg1, size_t arg2, c
575575
576576#include <openssl/rsa.h>
577577
578- // Note: order of struct fields here is unchecked.
579- typedef BN_GENCB GO_BN_GENCB ;
580-
581578int _goboringcrypto_RSA_sign (EVP_MD * md , const uint8_t * msg , unsigned int msgLen , uint8_t * sig , size_t * slen , RSA * rsa );
582579int _goboringcrypto_RSA_verify (EVP_MD * md , const uint8_t * msg , unsigned int msgLen , const uint8_t * sig , unsigned int slen , GO_RSA * rsa );
583580
@@ -590,9 +587,6 @@ int _goboringcrypto_RSA_verify_raw(EVP_MD *md, const uint8_t *msg, size_t msgLen
590587
591588DEFINEFUNC (GO_RSA * , RSA_new , (void ), ())
592589DEFINEFUNC (void , RSA_free , (GO_RSA * arg0 ), (arg0 ))
593- DEFINEFUNC (int , RSA_generate_key_ex ,
594- (GO_RSA * arg0 , int arg1 , GO_BIGNUM * arg2 , GO_BN_GENCB * arg3 ),
595- (arg0 , arg1 , arg2 , arg3 ))
596590
597591DEFINEFUNCINTERNAL (int , RSA_set0_factors ,
598592 (GO_RSA * rsa , GO_BIGNUM * p , GO_BIGNUM * q ),
@@ -740,7 +734,8 @@ _goboringcrypto_RSA_get0_key(const GO_RSA *rsa, const GO_BIGNUM **n, const GO_BI
740734#endif
741735}
742736
743- int _goboringcrypto_RSA_generate_key_fips (GO_RSA * , int , GO_BN_GENCB * );
737+ GO_RSA * _goboringcrypto_RSA_generate_key_fips (int bits );
738+
744739enum
745740{
746741 GO_RSA_PKCS1_PADDING = 1 ,
@@ -814,6 +809,7 @@ typedef EVP_PKEY GO_EVP_PKEY;
814809
815810DEFINEFUNC (GO_EVP_PKEY * , EVP_PKEY_new , (void ), ())
816811DEFINEFUNC (void , EVP_PKEY_free , (GO_EVP_PKEY * arg0 ), (arg0 ))
812+ DEFINEFUNC (GO_RSA * , EVP_PKEY_get1_RSA , (GO_EVP_PKEY * arg0 ), (arg0 ))
817813DEFINEFUNC (int , EVP_PKEY_set1_RSA , (GO_EVP_PKEY * arg0 , GO_RSA * arg1 ), (arg0 , arg1 ))
818814DEFINEFUNC (int , EVP_PKEY_set1_EC_KEY , (GO_EVP_PKEY * arg0 , GO_EC_KEY * arg1 ), (arg0 , arg1 ))
819815DEFINEFUNC (int , EVP_PKEY_verify ,
@@ -879,6 +875,22 @@ _goboringcrypto_EVP_PKEY_CTX_set_rsa_mgf1_md(GO_EVP_PKEY_CTX * ctx, const GO_EVP
879875 EVP_PKEY_CTRL_RSA_MGF1_MD , 0 , (void * )md );
880876}
881877
878+ static inline int
879+ _goboringcrypto_EVP_PKEY_CTX_set_rsa_keygen_bits (GO_EVP_PKEY_CTX * ctx , int mbits ) {
880+ return _goboringcrypto_EVP_PKEY_CTX_ctrl (ctx , -1 ,
881+ EVP_PKEY_OP_KEYGEN ,
882+ EVP_PKEY_CTRL_RSA_KEYGEN_BITS ,
883+ mbits , NULL );
884+ }
885+
886+ static inline int
887+ _goboringcrypto_EVP_PKEY_CTX_set_rsa_keygen_pubexp (GO_EVP_PKEY_CTX * ctx , GO_BIGNUM * pubexp ) {
888+ return _goboringcrypto_EVP_PKEY_CTX_ctrl (ctx , -1 ,
889+ EVP_PKEY_OP_KEYGEN ,
890+ EVP_PKEY_CTRL_RSA_KEYGEN_PUBEXP ,
891+ 0 , pubexp );
892+ }
893+
882894DEFINEFUNC (int , EVP_PKEY_decrypt ,
883895 (GO_EVP_PKEY_CTX * arg0 , uint8_t * arg1 , size_t * arg2 , const uint8_t * arg3 , size_t arg4 ),
884896 (arg0 , arg1 , arg2 , arg3 , arg4 ))
0 commit comments