mirror of https://github.com/wolfSSL/wolfssl.git
Fix for ARM platforms
parent
6bc16a4acb
commit
16899b55b2
|
@ -43954,8 +43954,9 @@ int wolfSSL_X509_set_pubkey(WOLFSSL_X509 *cert, WOLFSSL_EVP_PKEY *pkey)
|
||||||
int wolfSSL_X509_set_version(WOLFSSL_X509* x509, long v)
|
int wolfSSL_X509_set_version(WOLFSSL_X509* x509, long v)
|
||||||
{
|
{
|
||||||
WOLFSSL_ENTER("wolfSSL_X509_set_version");
|
WOLFSSL_ENTER("wolfSSL_X509_set_version");
|
||||||
if (!x509 || v > INT_MAX)
|
if ((x509 == NULL) || (v < 0) || (v > INT_MAX)) {
|
||||||
return WOLFSSL_FAILURE;
|
return WOLFSSL_FAILURE;
|
||||||
|
}
|
||||||
x509->version = (int) v + 1;
|
x509->version = (int) v + 1;
|
||||||
|
|
||||||
return WOLFSSL_SUCCESS;
|
return WOLFSSL_SUCCESS;
|
||||||
|
|
11
tests/api.c
11
tests/api.c
|
@ -22716,7 +22716,9 @@ static void test_wolfSSL_X509_set_notAfter(void)
|
||||||
#if (defined(OPENSSL_ALL) || defined(WOLFSSL_APACHE_HTTPD)) \
|
#if (defined(OPENSSL_ALL) || defined(WOLFSSL_APACHE_HTTPD)) \
|
||||||
&& !defined(NO_ASN1_TIME) && !defined(USER_TIME) && \
|
&& !defined(NO_ASN1_TIME) && !defined(USER_TIME) && \
|
||||||
!defined(TIME_OVERRIDES) && !defined(NO_CERTS) && \
|
!defined(TIME_OVERRIDES) && !defined(NO_CERTS) && \
|
||||||
defined(WOLFSSL_CERT_GEN) && defined(WOLFSSL_CERT_REQ)
|
defined(WOLFSSL_CERT_GEN) && defined(WOLFSSL_CERT_REQ) &&\
|
||||||
|
!defined(TIME_T_NOT_64BIT) && !defined(NO_64BIT)
|
||||||
|
/* Generalized time will overflow time_t if not long */
|
||||||
|
|
||||||
X509* x;
|
X509* x;
|
||||||
BIO* bio;
|
BIO* bio;
|
||||||
|
@ -22748,10 +22750,10 @@ static void test_wolfSSL_X509_set_notAfter(void)
|
||||||
AssertTrue(wolfSSL_X509_set_notAfter(x, asn_time));
|
AssertTrue(wolfSSL_X509_set_notAfter(x, asn_time));
|
||||||
/* time_check is simply (ANS1_TIME*)x->notAfter */
|
/* time_check is simply (ANS1_TIME*)x->notAfter */
|
||||||
AssertNotNull(time_check = X509_get_notAfter(x));
|
AssertNotNull(time_check = X509_get_notAfter(x));
|
||||||
/* ANS1_TIME_check validates by checking if arguement can be parsed */
|
/* ANS1_TIME_check validates by checking if argument can be parsed */
|
||||||
AssertIntEQ(ASN1_TIME_check(time_check), WOLFSSL_SUCCESS);
|
AssertIntEQ(ASN1_TIME_check(time_check), WOLFSSL_SUCCESS);
|
||||||
/* Convert to human readable format and compare to intended date */
|
/* Convert to human readable format and compare to intended date */
|
||||||
AssertIntEQ(ASN1_TIME_print(bio,time_check), 1);
|
AssertIntEQ(ASN1_TIME_print(bio, time_check), 1);
|
||||||
AssertIntEQ(BIO_read(bio, buf, sizeof(buf)), 24);
|
AssertIntEQ(BIO_read(bio, buf, sizeof(buf)), 24);
|
||||||
AssertIntEQ(XMEMCMP(buf, "Jan 20 10:30:00 2077 GMT", sizeof(buf) - 1), 0);
|
AssertIntEQ(XMEMCMP(buf, "Jan 20 10:30:00 2077 GMT", sizeof(buf) - 1), 0);
|
||||||
/*
|
/*
|
||||||
|
@ -22826,13 +22828,14 @@ static void test_wolfSSL_X509_set_version(void)
|
||||||
!defined(NO_CERTS) && defined(WOLFSSL_CERT_GEN) && defined(WOLFSSL_CERT_REQ)
|
!defined(NO_CERTS) && defined(WOLFSSL_CERT_GEN) && defined(WOLFSSL_CERT_REQ)
|
||||||
X509* x509;
|
X509* x509;
|
||||||
long v = 2L;
|
long v = 2L;
|
||||||
|
long max = INT_MAX;
|
||||||
|
|
||||||
AssertNotNull(x509 = X509_new());
|
AssertNotNull(x509 = X509_new());
|
||||||
/* These should pass. */
|
/* These should pass. */
|
||||||
AssertTrue(wolfSSL_X509_set_version(x509, v));
|
AssertTrue(wolfSSL_X509_set_version(x509, v));
|
||||||
AssertIntEQ(v, wolfSSL_X509_get_version(x509));
|
AssertIntEQ(v, wolfSSL_X509_get_version(x509));
|
||||||
/* Fail Case: When v(long) is greater than x509->version(int). */
|
/* Fail Case: When v(long) is greater than x509->version(int). */
|
||||||
v = (long) INT_MAX+1;
|
v = max+1;
|
||||||
AssertFalse(wolfSSL_X509_set_version(x509, v));
|
AssertFalse(wolfSSL_X509_set_version(x509, v));
|
||||||
/* Cleanup */
|
/* Cleanup */
|
||||||
X509_free(x509);
|
X509_free(x509);
|
||||||
|
|
Loading…
Reference in New Issue