diff --git a/src/ssl.c b/src/ssl.c index 00604c48e..511b73c6f 100644 --- a/src/ssl.c +++ b/src/ssl.c @@ -28418,7 +28418,7 @@ int wolfSSL_X509_VERIFY_PARAM_set1_ip_asc(WOLFSSL_X509_VERIFY_PARAM *param, param->ipasc[0] = '\0'; } else { - XSTRNCPY(param->ipasc, ipasc, WOLFSSL_MAX_IPSTR - 1); + XSTRNCPY(param->ipasc, ipasc, WOLFSSL_MAX_IPSTR); param->ipasc[WOLFSSL_MAX_IPSTR-1] = '\0'; } ret = WOLFSSL_SUCCESS; diff --git a/wolfcrypt/src/asn.c b/wolfcrypt/src/asn.c index 0a353f489..86f723b05 100644 --- a/wolfcrypt/src/asn.c +++ b/wolfcrypt/src/asn.c @@ -22994,7 +22994,7 @@ static int SetNameRdnItems(ASNSetData* dataASN, ASNItem* namesASN, break; } /* Copy data into dynamic vars. */ - SetRdnItems(namesASN + idx, dataASN + idx, nameOid[type], + SetRdnItems(namesASN + idx, dataASN + idx, nameOid[i], NAME_OID_SZ, name->name[j].type, (byte*)name->name[j].value, name->name[j].sz); } diff --git a/wolfssl/openssl/asn1.h b/wolfssl/openssl/asn1.h index ab894f184..07da63319 100644 --- a/wolfssl/openssl/asn1.h +++ b/wolfssl/openssl/asn1.h @@ -146,7 +146,8 @@ typedef enum { static const WOLFSSL_ASN1_TEMPLATE type##_member_data[] #define ASN1_SIMPLE(type, member, member_type) \ - { (char*)&__##type##_dummy_struct.member - (char*)&__##type##_dummy_struct, \ + { ((size_t)&__##type##_dummy_struct.member - \ + (size_t)&__##type##_dummy_struct), \ WOLFSSL_##member_type##_ASN1 } #define ASN1_SEQUENCE_END(type) \