@@ -41,32 +41,6 @@ static int s_decrypt_pem(unsigned char *asn1_cert, unsigned long *asn1_len, cons
4141 return err ;
4242}
4343
44- static int s_get_pka (ltc_asn1_list * pub , enum ltc_pka_id * pka )
45- {
46- der_flexi_check flexi_should [4 ];
47- ltc_asn1_list * seqid , * id ;
48- enum ltc_oid_id oid_id ;
49- int err ;
50- unsigned long n = 0 ;
51- LTC_SET_DER_FLEXI_CHECK (flexi_should , n ++ , LTC_ASN1_SEQUENCE , & seqid );
52- LTC_SET_DER_FLEXI_CHECK (flexi_should , n ++ , LTC_ASN1_BIT_STRING , NULL );
53- LTC_SET_DER_FLEXI_CHECK (flexi_should , n , LTC_ASN1_EOL , NULL );
54- if ((err = der_flexi_sequence_cmp (pub , flexi_should )) != CRYPT_OK ) {
55- return err ;
56- }
57- n = 0 ;
58- LTC_SET_DER_FLEXI_CHECK (flexi_should , n ++ , LTC_ASN1_OBJECT_IDENTIFIER , & id );
59- LTC_SET_DER_FLEXI_CHECK (flexi_should , n , LTC_ASN1_EOL , NULL );
60- err = der_flexi_sequence_cmp (seqid , flexi_should );
61- if (err != CRYPT_OK && err != CRYPT_INPUT_TOO_LONG ) {
62- return err ;
63- }
64- if ((err = pk_get_oid_from_asn1 (id , & oid_id )) != CRYPT_OK ) {
65- return err ;
66- }
67- return pk_get_pka_id (oid_id , pka );
68- }
69-
7044typedef int (* import_fn )(const unsigned char * , unsigned long , void * );
7145
7246static const import_fn s_import_x509_fns [LTC_PKA_NUM ] = {
@@ -90,7 +64,7 @@ static int s_import_x509(unsigned char *asn1_cert, unsigned long asn1_len, ltc_p
9064 if ((err = x509_decode_spki (asn1_cert , asn1_len , & d , & spki )) != CRYPT_OK ) {
9165 return err ;
9266 }
93- err = s_get_pka (spki , & pka );
67+ err = x509_get_pka (spki , & pka );
9468 der_free_sequence_flexi (d );
9569 if (err != CRYPT_OK ) {
9670 return err ;
@@ -171,7 +145,7 @@ static int s_extract_pka(unsigned char *asn1_cert, unsigned long asn1_len, enum
171145 if ((err = der_decode_sequence_flexi (asn1_cert , & asn1_len , & pub )) != CRYPT_OK ) {
172146 return err ;
173147 }
174- err = s_get_pka (pub , pka );
148+ err = x509_get_pka (pub , pka );
175149 der_sequence_free (pub );
176150 return err ;
177151}
0 commit comments