Add tests for x509parse_key_ec()
Test files were generated as follows:
openssl ecparam -name prime192v1 -genkey > key.pem
openssl ec -in key.pem -pubout -outform PEM > pub.pem
openssl ec -in key.pem -pubout -outform DER > pub.der
openssl ec -in key.pem -outform pem > prv.sec1.pem
openssl ec -in key.pem -outform der > prv.sec1.der
openssl ec -in key.pem -des -passout pass:polar -outform pem > prv.sec1.pw.pem
openssl pkcs8 -topk8 -in key.pem -nocrypt -outform pem > prv.pk8.pem
openssl pkcs8 -topk8 -in key.pem -nocrypt -outform der > prv.pk8.der
openssl pkcs8 -topk8 -in key.pem -passout pass:polar -outform der \
> prv.pk8.pw.der
openssl pkcs8 -topk8 -in key.pem -passout pass:polar -outform pem \
> prv.pk8.pw.pem
diff --git a/tests/suites/test_suite_x509parse.function b/tests/suites/test_suite_x509parse.function
index ebb534a..57653f7 100644
--- a/tests/suites/test_suite_x509parse.function
+++ b/tests/suites/test_suite_x509parse.function
@@ -201,6 +201,27 @@
END_CASE
BEGIN_CASE
+x509parse_keyfile_ec:key_file:password:result
+{
+ ecp_keypair eckey;
+ int res;
+
+ ecp_keypair_init( &eckey );
+
+ res = x509parse_keyfile_ec( &eckey, {key_file}, {password} );
+
+ TEST_ASSERT( res == {result} );
+
+ if( res == 0 )
+ {
+ TEST_ASSERT( ecp_check_prvkey( &eckey.grp, &eckey.d ) == 0 );
+ }
+
+ ecp_keypair_free( &eckey );
+}
+END_CASE
+
+BEGIN_CASE
x509parse_crt:crt_data:result_str:result
{
x509_cert crt;