wolfSSL_ASN1_TIME_get_data()

This commit is contained in:
Go Hosohara
2018-06-04 12:26:49 +09:00
parent a002a6715f
commit aaa26f3f41
3 changed files with 21 additions and 0 deletions

View File

@@ -34065,6 +34065,20 @@ int wolfSSL_ASN1_TIME_get_length(WOLFSSL_ASN1_TIME *t)
return (int)t->data[1];
}
int wolfSSL_ASN1_TIME_get_data(WOLFSSL_ASN1_TIME *t, unsigned char* data)
{
char *dptr = NULL;
WOLFSSL_ENTER("wolfSSL_ASN1_TIME_get_data");
if (t == NULL || data == NULL)
return WOLFSSL_FAILURE;
dptr = (char*)t->data + 2;
XSTRNCPY((char*)data, dptr, t->data[1]);
return WOLFSSL_SUCCESS;
}
WOLFSSL_ASN1_TIME *wolfSSL_ASN1_TIME_to_generalizedtime(WOLFSSL_ASN1_TIME *t,
WOLFSSL_ASN1_TIME **out)
{

View File

@@ -19686,6 +19686,7 @@ static void test_wolfSSL_ASN1_TIME_to_generalizedtime(void){
WOLFSSL_ASN1_TIME *out;
WOLFSSL_ASN1_TIME *gtime;
int tlen = 0;
unsigned char data[ASN_GENERALIZED_TIME_SIZE];
printf(testingFmt, "wolfSSL_ASN1_TIME_to_generalizedtime()");
@@ -19704,6 +19705,8 @@ static void test_wolfSSL_ASN1_TIME_to_generalizedtime(void){
=======
tlen = wolfSSL_ASN1_TIME_get_length(t);
AssertIntEQ(tlen, ASN_UTC_TIME_SIZE);
wolfSSL_ASN1_TIME_get_data(t,data);
AssertStrEQ((char*)data, "050727123456Z");
gtime = wolfSSL_ASN1_TIME_to_generalizedtime(t, &out);
>>>>>>> wolfSSL_ASN1_TIME_get_length()
AssertIntEQ(gtime->data[0], ASN_GENERALIZED_TIME);
@@ -19713,6 +19716,7 @@ static void test_wolfSSL_ASN1_TIME_to_generalizedtime(void){
/* Generalized Time test */
XMEMSET(t, 0, ASN_GENERALIZED_TIME_SIZE);
XMEMSET(out, 0, ASN_GENERALIZED_TIME_SIZE);
XMEMSET(data, 0, ASN_GENERALIZED_TIME_SIZE);
gtime = NULL;
t->data[0] = ASN_GENERALIZED_TIME;
t->data[1] = ASN_GENERALIZED_TIME_SIZE;
@@ -19723,6 +19727,8 @@ static void test_wolfSSL_ASN1_TIME_to_generalizedtime(void){
tlen = wolfSSL_ASN1_TIME_get_length(t);
AssertIntEQ(tlen, ASN_GENERALIZED_TIME_SIZE);
wolfSSL_ASN1_TIME_get_data(t,data);
AssertStrEQ((char*)data, "20050727123456Z");
gtime = wolfSSL_ASN1_TIME_to_generalizedtime(t, &out);
>>>>>>> wolfSSL_ASN1_TIME_get_length()
AssertIntEQ(gtime->data[0], ASN_GENERALIZED_TIME);

View File

@@ -2991,6 +2991,7 @@ WOLFSSL_API void wolfSSL_EC_POINT_dump(const char *msg, const WOLFSSL_EC_POINT *
WOLFSSL_API const char *wolfSSL_ASN1_tag2str(int tag);
WOLFSSL_API int wolfSSL_ASN1_STRING_print_ex(WOLFSSL_BIO *out, WOLFSSL_ASN1_STRING *str, unsigned long flags);
WOLFSSL_API int wolfSSL_ASN1_TIME_get_length(WOLFSSL_ASN1_TIME *t);
WOLFSSL_API int wolfSSL_ASN1_TIME_get_data(WOLFSSL_ASN1_TIME *t, unsigned char *data);
WOLFSSL_API WOLFSSL_ASN1_TIME *wolfSSL_ASN1_TIME_to_generalizedtime(WOLFSSL_ASN1_TIME *t,
WOLFSSL_ASN1_TIME **out);
WOLFSSL_API int wolfSSL_i2c_ASN1_INTEGER(WOLFSSL_ASN1_INTEGER *a, unsigned char **pp);