mirror of https://github.com/wolfSSL/wolfssl.git
Various portability improvements:
* Change DTLS epoch size word16. * Allow override of the `RECORD_SIZE` and `STATIC_BUFFER_LEN`. * Remove endianness force from game build. * Add `gmtime_s` option. * Fix for macro conflict with `MAX_KEY_SIZE`. * Expose functions `wolfSSL_X509_notBefore`, `wolfSSL_X509_notAfter`, `wolfSSL_X509_version` without `OPENSSL_EXTRA`.pull/4961/head
parent
aa8e5a29d4
commit
3fba5d17c3
|
@ -86,15 +86,15 @@ else
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
AC_CHECK_HEADERS([arpa/inet.h fcntl.h limits.h netdb.h netinet/in.h stddef.h time.h sys/ioctl.h sys/socket.h sys/time.h errno.h])
|
AC_CHECK_HEADERS([arpa/inet.h fcntl.h limits.h netdb.h netinet/in.h stddef.h time.h sys/ioctl.h sys/socket.h sys/time.h errno.h sys/un.h])
|
||||||
AC_CHECK_LIB([network],[socket])
|
AC_CHECK_LIB([network],[socket])
|
||||||
AC_C_BIGENDIAN
|
AC_C_BIGENDIAN
|
||||||
|
|
||||||
# check if functions of interest are linkable, but also check if
|
# check if functions of interest are linkable, but also check if
|
||||||
# they're declared by the expected headers, and if not, supersede the
|
# they're declared by the expected headers, and if not, supersede the
|
||||||
# unusable positive from AC_CHECK_FUNCS().
|
# unusable positive from AC_CHECK_FUNCS().
|
||||||
AC_CHECK_FUNCS([gethostbyname getaddrinfo gettimeofday gmtime_r inet_ntoa memset socket strftime atexit])
|
AC_CHECK_FUNCS([gethostbyname getaddrinfo gettimeofday gmtime_r gmtime_s inet_ntoa memset socket strftime atexit])
|
||||||
AC_CHECK_DECLS([gethostbyname, getaddrinfo, gettimeofday, gmtime_r, inet_ntoa, memset, socket, strftime], [], [
|
AC_CHECK_DECLS([gethostbyname, getaddrinfo, gettimeofday, gmtime_r, gmtime_s, inet_ntoa, memset, socket, strftime], [], [
|
||||||
if test "$(eval echo \$"$(eval 'echo ac_cv_func_${as_decl_name}')")" = "yes"
|
if test "$(eval echo \$"$(eval 'echo ac_cv_func_${as_decl_name}')")" = "yes"
|
||||||
then
|
then
|
||||||
AC_MSG_NOTICE([ note: earlier check for $(eval 'echo ${as_decl_name}') superseded.])
|
AC_MSG_NOTICE([ note: earlier check for $(eval 'echo ${as_decl_name}') superseded.])
|
||||||
|
|
|
@ -350,9 +350,6 @@
|
||||||
|
|
||||||
#ifdef CYASSL_GAME_BUILD
|
#ifdef CYASSL_GAME_BUILD
|
||||||
#define SIZEOF_LONG_LONG 8
|
#define SIZEOF_LONG_LONG 8
|
||||||
#if defined(__PPU) || defined(__XENON)
|
|
||||||
#define BIG_ENDIAN_ORDER
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef CYASSL_LSR
|
#ifdef CYASSL_LSR
|
||||||
|
|
|
@ -7878,7 +7878,7 @@ int DtlsMsgSet(DtlsMsg* msg, word32 seq, word16 epoch, const byte* data, byte ty
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DtlsMsg* DtlsMsgFind(DtlsMsg* head, word32 epoch, word32 seq)
|
DtlsMsg* DtlsMsgFind(DtlsMsg* head, word16 epoch, word32 seq)
|
||||||
{
|
{
|
||||||
WOLFSSL_ENTER("DtlsMsgFind()");
|
WOLFSSL_ENTER("DtlsMsgFind()");
|
||||||
while (head != NULL && !(head->epoch == epoch && head->seq == seq)) {
|
while (head != NULL && !(head->epoch == epoch && head->seq == seq)) {
|
||||||
|
@ -7888,7 +7888,7 @@ DtlsMsg* DtlsMsgFind(DtlsMsg* head, word32 epoch, word32 seq)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DtlsMsgStore(WOLFSSL* ssl, word32 epoch, word32 seq, const byte* data,
|
void DtlsMsgStore(WOLFSSL* ssl, word16 epoch, word32 seq, const byte* data,
|
||||||
word32 dataSz, byte type, word32 fragOffset, word32 fragSz, void* heap)
|
word32 dataSz, byte type, word32 fragOffset, word32 fragSz, void* heap)
|
||||||
{
|
{
|
||||||
/* See if seq exists in the list. If it isn't in the list, make
|
/* See if seq exists in the list. If it isn't in the list, make
|
||||||
|
|
41
src/ssl.c
41
src/ssl.c
|
@ -2411,7 +2411,7 @@ static int wolfSSL_read_internal(WOLFSSL* ssl, void* data, int sz, int peek)
|
||||||
/* Add some bytes so that we can operate with slight difference
|
/* Add some bytes so that we can operate with slight difference
|
||||||
* in set MTU size on each peer */
|
* in set MTU size on each peer */
|
||||||
ssl->dtls_expected_rx = max(ssl->dtls_expected_rx,
|
ssl->dtls_expected_rx = max(ssl->dtls_expected_rx,
|
||||||
ssl->dtlsMtuSz + DTLS_MTU_ADDITIONAL_READ_BUFFER);
|
ssl->dtlsMtuSz + (word32)DTLS_MTU_ADDITIONAL_READ_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -5396,7 +5396,7 @@ int wolfSSL_Init(void)
|
||||||
|
|
||||||
WOLFSSL_ENTER("wolfSSL_Init");
|
WOLFSSL_ENTER("wolfSSL_Init");
|
||||||
|
|
||||||
#if defined(HAVE_FIPS_VERSION) && ((HAVE_FIPS_VERSION > 5) || ((HAVE_FIPS_VERSION == 5) && (HAVE_FIPS_VERSION_MINOR >= 1)))
|
#if FIPS_VERSION_GE(5,1)
|
||||||
ret = wolfCrypt_SetPrivateKeyReadEnable_fips(1, WC_KEYTYPE_ALL);
|
ret = wolfCrypt_SetPrivateKeyReadEnable_fips(1, WC_KEYTYPE_ALL);
|
||||||
if (ret != 0)
|
if (ret != 0)
|
||||||
return ret;
|
return ret;
|
||||||
|
@ -15275,7 +15275,7 @@ int wolfSSL_Cleanup(void)
|
||||||
ret = WC_CLEANUP_E;
|
ret = WC_CLEANUP_E;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(HAVE_FIPS_VERSION) && ((HAVE_FIPS_VERSION > 5) || ((HAVE_FIPS_VERSION == 5) && (HAVE_FIPS_VERSION_MINOR >= 1)))
|
#if FIPS_VERSION_GE(5,1)
|
||||||
if (wolfCrypt_SetPrivateKeyReadEnable_fips(0, WC_KEYTYPE_ALL) < 0) {
|
if (wolfCrypt_SetPrivateKeyReadEnable_fips(0, WC_KEYTYPE_ALL) < 0) {
|
||||||
if (ret == WOLFSSL_SUCCESS)
|
if (ret == WOLFSSL_SUCCESS)
|
||||||
ret = WC_CLEANUP_E;
|
ret = WC_CLEANUP_E;
|
||||||
|
@ -21701,7 +21701,9 @@ const byte* wolfSSL_X509_get_der(WOLFSSL_X509* x509, int* outSz)
|
||||||
|
|
||||||
#endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL || KEEP_OUR_CERT || KEEP_PEER_CERT || SESSION_CERTS */
|
#endif /* OPENSSL_EXTRA || WOLFSSL_WPAS_SMALL || KEEP_OUR_CERT || KEEP_PEER_CERT || SESSION_CERTS */
|
||||||
|
|
||||||
#ifdef OPENSSL_EXTRA
|
#if defined(OPENSSL_EXTRA_X509_SMALL) || defined(OPENSSL_EXTRA) || \
|
||||||
|
defined(OPENSSL_ALL) || defined(KEEP_OUR_CERT) || \
|
||||||
|
defined(KEEP_PEER_CERT) || defined(SESSION_CERTS)
|
||||||
|
|
||||||
/* used by JSSE (not a standard compatibility function) */
|
/* used by JSSE (not a standard compatibility function) */
|
||||||
WOLFSSL_ABI
|
WOLFSSL_ABI
|
||||||
|
@ -21737,6 +21739,19 @@ const byte* wolfSSL_X509_notAfter(WOLFSSL_X509* x509)
|
||||||
return x509->notAfterData;
|
return x509->notAfterData;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int wolfSSL_X509_version(WOLFSSL_X509* x509)
|
||||||
|
{
|
||||||
|
WOLFSSL_ENTER("wolfSSL_X509_version");
|
||||||
|
|
||||||
|
if (x509 == NULL)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
return x509->version;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef OPENSSL_EXTRA
|
||||||
|
|
||||||
/* get the buffer to be signed (tbs) from the WOLFSSL_X509 certificate
|
/* get the buffer to be signed (tbs) from the WOLFSSL_X509 certificate
|
||||||
*
|
*
|
||||||
* outSz : gets set to the size of the buffer
|
* outSz : gets set to the size of the buffer
|
||||||
|
@ -21771,16 +21786,6 @@ const unsigned char* wolfSSL_X509_get_tbs(WOLFSSL_X509* x509, int* outSz)
|
||||||
return tbs;
|
return tbs;
|
||||||
}
|
}
|
||||||
|
|
||||||
int wolfSSL_X509_version(WOLFSSL_X509* x509)
|
|
||||||
{
|
|
||||||
WOLFSSL_ENTER("wolfSSL_X509_version");
|
|
||||||
|
|
||||||
if (x509 == NULL)
|
|
||||||
return 0;
|
|
||||||
|
|
||||||
return x509->version;
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef WOLFSSL_SEP
|
#ifdef WOLFSSL_SEP
|
||||||
|
|
||||||
/* copy oid into in buffer, at most *inOutSz bytes, if buffer is null will
|
/* copy oid into in buffer, at most *inOutSz bytes, if buffer is null will
|
||||||
|
@ -58576,7 +58581,8 @@ int wolfSSL_RAND_write_file(const char* fname)
|
||||||
#ifndef FREERTOS_TCP
|
#ifndef FREERTOS_TCP
|
||||||
|
|
||||||
/* These constant values are protocol values made by egd */
|
/* These constant values are protocol values made by egd */
|
||||||
#if defined(USE_WOLFSSL_IO) && !defined(USE_WINDOWS_API) && !defined(NETOS)
|
#if defined(USE_WOLFSSL_IO) && !defined(USE_WINDOWS_API) && !defined(HAVE_FIPS) && \
|
||||||
|
defined(HAVE_HASHDRBG) && !defined(NETOS) && defined(HAVE_SYS_UN_H)
|
||||||
#define WOLFSSL_EGD_NBLOCK 0x01
|
#define WOLFSSL_EGD_NBLOCK 0x01
|
||||||
#include <sys/un.h>
|
#include <sys/un.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -58589,8 +58595,7 @@ int wolfSSL_RAND_write_file(const char* fname)
|
||||||
*/
|
*/
|
||||||
int wolfSSL_RAND_egd(const char* nm)
|
int wolfSSL_RAND_egd(const char* nm)
|
||||||
{
|
{
|
||||||
#if defined(USE_WOLFSSL_IO) && !defined(USE_WINDOWS_API) && !defined(HAVE_FIPS) && \
|
#ifdef WOLFSSL_EGD_NBLOCK
|
||||||
defined(HAVE_HASHDRBG)
|
|
||||||
struct sockaddr_un rem;
|
struct sockaddr_un rem;
|
||||||
int fd;
|
int fd;
|
||||||
int ret = WOLFSSL_SUCCESS;
|
int ret = WOLFSSL_SUCCESS;
|
||||||
|
@ -58728,7 +58733,7 @@ int wolfSSL_RAND_egd(const char* nm)
|
||||||
(void)nm;
|
(void)nm;
|
||||||
|
|
||||||
return WOLFSSL_FATAL_ERROR;
|
return WOLFSSL_FATAL_ERROR;
|
||||||
#endif /* USE_WOLFSSL_IO && !USE_WINDOWS_API && !HAVE_FIPS && HAVE_HASHDRBG */
|
#endif /* WOLFSSL_EGD_NBLOCK */
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* !FREERTOS_TCP */
|
#endif /* !FREERTOS_TCP */
|
||||||
|
|
|
@ -512,7 +512,7 @@ static int wc_PKCS12_create_mac(WC_PKCS12* pkcs12, byte* data, word32 dataSz,
|
||||||
int id = 3; /* value from RFC 7292 indicating key is used for MAC */
|
int id = 3; /* value from RFC 7292 indicating key is used for MAC */
|
||||||
word32 i;
|
word32 i;
|
||||||
byte unicodePasswd[MAX_UNICODE_SZ];
|
byte unicodePasswd[MAX_UNICODE_SZ];
|
||||||
byte key[MAX_KEY_SIZE];
|
byte key[PKCS_MAX_KEY_SIZE];
|
||||||
|
|
||||||
if (pkcs12 == NULL || pkcs12->signData == NULL || data == NULL ||
|
if (pkcs12 == NULL || pkcs12->signData == NULL || data == NULL ||
|
||||||
out == NULL) {
|
out == NULL) {
|
||||||
|
|
|
@ -381,7 +381,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
byte* key;
|
byte* key;
|
||||||
#else
|
#else
|
||||||
byte key[MAX_KEY_SIZE];
|
byte key[PKCS_MAX_KEY_SIZE];
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
(void)input;
|
(void)input;
|
||||||
|
@ -469,7 +469,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
key = (byte*)XMALLOC(MAX_KEY_SIZE, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
key = (byte*)XMALLOC(PKCS_MAX_KEY_SIZE, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
if (key == NULL)
|
if (key == NULL)
|
||||||
return MEMORY_E;
|
return MEMORY_E;
|
||||||
#endif
|
#endif
|
||||||
|
@ -494,7 +494,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
byte unicodePasswd[MAX_UNICODE_SZ];
|
byte unicodePasswd[MAX_UNICODE_SZ];
|
||||||
|
|
||||||
if ( (passwordSz * 2 + 2) > (int)sizeof(unicodePasswd)) {
|
if ( (passwordSz * 2 + 2) > (int)sizeof(unicodePasswd)) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -519,7 +519,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
}
|
}
|
||||||
#endif /* HAVE_PKCS12 */
|
#endif /* HAVE_PKCS12 */
|
||||||
default:
|
default:
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -528,7 +528,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
} /* switch (version) */
|
} /* switch (version) */
|
||||||
|
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -554,7 +554,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
ret = wc_Des_SetKey(&des, key, desIv, DES_DECRYPTION);
|
ret = wc_Des_SetKey(&des, key, desIv, DES_DECRYPTION);
|
||||||
}
|
}
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -582,7 +582,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
|
|
||||||
ret = wc_Des3Init(&des, NULL, INVALID_DEVID);
|
ret = wc_Des3Init(&des, NULL, INVALID_DEVID);
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -595,7 +595,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
ret = wc_Des3_SetKey(&des, key, desIv, DES_DECRYPTION);
|
ret = wc_Des3_SetKey(&des, key, desIv, DES_DECRYPTION);
|
||||||
}
|
}
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -608,7 +608,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
ret = wc_Des3_CbcDecrypt(&des, input, input, length);
|
ret = wc_Des3_CbcDecrypt(&des, input, input, length);
|
||||||
}
|
}
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -669,7 +669,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
XFREE(aes, NULL, DYNAMIC_TYPE_AES);
|
XFREE(aes, NULL, DYNAMIC_TYPE_AES);
|
||||||
#endif
|
#endif
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -692,7 +692,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
ret = wc_Rc2CbcDecrypt(&rc2, input, input, length);
|
ret = wc_Rc2CbcDecrypt(&rc2, input, input, length);
|
||||||
}
|
}
|
||||||
if (ret != 0) {
|
if (ret != 0) {
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -704,7 +704,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
default:
|
default:
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
@ -712,7 +712,7 @@ int wc_CryptKey(const char* password, int passwordSz, byte* salt,
|
||||||
return ALGO_ID_E;
|
return ALGO_ID_E;
|
||||||
}
|
}
|
||||||
|
|
||||||
ForceZero(key, MAX_KEY_SIZE);
|
ForceZero(key, PKCS_MAX_KEY_SIZE);
|
||||||
#ifdef WOLFSSL_SMALL_STACK
|
#ifdef WOLFSSL_SMALL_STACK
|
||||||
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
XFREE(key, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1805,6 +1805,13 @@ enum {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
/* determine maximum record size */
|
||||||
|
#ifdef RECORD_SIZE
|
||||||
|
/* user supplied value */
|
||||||
|
#if RECORD_SIZE < 128 || RECORD_SIZE > MAX_RECORD_SIZE
|
||||||
|
#error Invalid record size
|
||||||
|
#endif
|
||||||
|
#else
|
||||||
/* give user option to use 16K static buffers */
|
/* give user option to use 16K static buffers */
|
||||||
#if defined(LARGE_STATIC_BUFFERS)
|
#if defined(LARGE_STATIC_BUFFERS)
|
||||||
#define RECORD_SIZE MAX_RECORD_SIZE
|
#define RECORD_SIZE MAX_RECORD_SIZE
|
||||||
|
@ -1815,6 +1822,7 @@ enum {
|
||||||
#define RECORD_SIZE 128
|
#define RECORD_SIZE 128
|
||||||
#endif
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
/* user option to turn off 16K output option */
|
/* user option to turn off 16K output option */
|
||||||
|
@ -1835,7 +1843,13 @@ enum {
|
||||||
The length (in bytes) of the following TLSPlaintext.fragment.
|
The length (in bytes) of the following TLSPlaintext.fragment.
|
||||||
The length should not exceed 2^14.
|
The length should not exceed 2^14.
|
||||||
*/
|
*/
|
||||||
#if defined(LARGE_STATIC_BUFFERS)
|
#ifdef STATIC_BUFFER_LEN
|
||||||
|
/* user supplied option */
|
||||||
|
#if STATIC_BUFFER_LEN < 5 || STATIC_BUFFER_LEN > (RECORD_HEADER_SZ + \
|
||||||
|
RECORD_SIZE + COMP_EXTRA + MTU_EXTRA + MAX_MSG_EXTRA))
|
||||||
|
#error Invalid static buffer length
|
||||||
|
#endif
|
||||||
|
#elif defined(LARGE_STATIC_BUFFERS)
|
||||||
#define STATIC_BUFFER_LEN RECORD_HEADER_SZ + RECORD_SIZE + COMP_EXTRA + \
|
#define STATIC_BUFFER_LEN RECORD_HEADER_SZ + RECORD_SIZE + COMP_EXTRA + \
|
||||||
MTU_EXTRA + MAX_MSG_EXTRA
|
MTU_EXTRA + MAX_MSG_EXTRA
|
||||||
#else
|
#else
|
||||||
|
@ -4047,8 +4061,9 @@ struct WOLFSSL_X509 {
|
||||||
WOLFSSL_X509_ALGOR algor;
|
WOLFSSL_X509_ALGOR algor;
|
||||||
WOLFSSL_X509_PUBKEY key;
|
WOLFSSL_X509_PUBKEY key;
|
||||||
#endif
|
#endif
|
||||||
#if defined(OPENSSL_ALL) || defined(KEEP_OUR_CERT) || defined(KEEP_PEER_CERT) || \
|
#if defined(OPENSSL_EXTRA_X509_SMALL) || defined(OPENSSL_EXTRA) || \
|
||||||
defined(SESSION_CERTS)
|
defined(OPENSSL_ALL) || defined(KEEP_OUR_CERT) || \
|
||||||
|
defined(KEEP_PEER_CERT) || defined(SESSION_CERTS)
|
||||||
byte notBeforeData[CTC_DATE_SIZE];
|
byte notBeforeData[CTC_DATE_SIZE];
|
||||||
byte notAfterData[CTC_DATE_SIZE];
|
byte notAfterData[CTC_DATE_SIZE];
|
||||||
#endif
|
#endif
|
||||||
|
@ -4936,8 +4951,9 @@ WOLFSSL_LOCAL void DoCertFatalAlert(WOLFSSL* ssl, int ret);
|
||||||
WOLFSSL_LOCAL int DtlsMsgSet(DtlsMsg* msg, word32 seq, word16 epoch,
|
WOLFSSL_LOCAL int DtlsMsgSet(DtlsMsg* msg, word32 seq, word16 epoch,
|
||||||
const byte* data, byte type,
|
const byte* data, byte type,
|
||||||
word32 fragOffset, word32 fragSz, void* heap);
|
word32 fragOffset, word32 fragSz, void* heap);
|
||||||
WOLFSSL_LOCAL DtlsMsg* DtlsMsgFind(DtlsMsg* head, word32 epoch, word32 seq);
|
WOLFSSL_LOCAL DtlsMsg* DtlsMsgFind(DtlsMsg* head, word16 epoch, word32 seq);
|
||||||
WOLFSSL_LOCAL void DtlsMsgStore(WOLFSSL* ssl, word32 epoch, word32 seq,
|
|
||||||
|
WOLFSSL_LOCAL void DtlsMsgStore(WOLFSSL* ssl, word16 epoch, word32 seq,
|
||||||
const byte* data, word32 dataSz, byte type,
|
const byte* data, word32 dataSz, byte type,
|
||||||
word32 fragOffset, word32 fragSz,
|
word32 fragOffset, word32 fragSz,
|
||||||
void* heap);
|
void* heap);
|
||||||
|
|
|
@ -2278,8 +2278,12 @@ WOLFSSL_LOCAL void FreeDecodedCRL(DecodedCRL* dcrl);
|
||||||
|
|
||||||
#if !defined(NO_ASN) || !defined(NO_PWDBASED)
|
#if !defined(NO_ASN) || !defined(NO_PWDBASED)
|
||||||
|
|
||||||
#ifndef MAX_KEY_SIZE
|
#ifndef PKCS_MAX_KEY_SIZE
|
||||||
#define MAX_KEY_SIZE 64 /* MAX PKCS Key length */
|
#define PKCS_MAX_KEY_SIZE 64 /* MAX PKCS Key length */
|
||||||
|
#endif
|
||||||
|
#if !defined(WOLFSSL_GAME_BUILD) && !defined(MAX_KEY_SIZE)
|
||||||
|
/* for backwards compatibility */
|
||||||
|
#define MAX_KEY_SIZE PKCS_MAX_KEY_SIZE
|
||||||
#endif
|
#endif
|
||||||
#ifndef MAX_UNICODE_SZ
|
#ifndef MAX_UNICODE_SZ
|
||||||
#define MAX_UNICODE_SZ 256
|
#define MAX_UNICODE_SZ 256
|
||||||
|
|
|
@ -915,9 +915,6 @@ extern void uITRON4_free(void *p) ;
|
||||||
|
|
||||||
#ifdef WOLFSSL_GAME_BUILD
|
#ifdef WOLFSSL_GAME_BUILD
|
||||||
#define SIZEOF_LONG_LONG 8
|
#define SIZEOF_LONG_LONG 8
|
||||||
#if defined(__PPU) || defined(__XENON)
|
|
||||||
#define BIG_ENDIAN_ORDER
|
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef WOLFSSL_LSR
|
#ifdef WOLFSSL_LSR
|
||||||
|
|
|
@ -882,7 +882,11 @@ WOLFSSL_API int wolfCrypt_Cleanup(void);
|
||||||
#endif
|
#endif
|
||||||
#if !defined(XGMTIME) && !defined(TIME_OVERRIDES)
|
#if !defined(XGMTIME) && !defined(TIME_OVERRIDES)
|
||||||
/* Always use gmtime_r if available. */
|
/* Always use gmtime_r if available. */
|
||||||
#if defined(HAVE_GMTIME_R)
|
#if defined(HAVE_GMTIME_S)
|
||||||
|
/* reentrant version */
|
||||||
|
#define XGMTIME(c, t) gmtime_s((c), (t))
|
||||||
|
#define NEED_TMP_TIME
|
||||||
|
#elif defined(HAVE_GMTIME_R)
|
||||||
#define XGMTIME(c, t) gmtime_r((c), (t))
|
#define XGMTIME(c, t) gmtime_r((c), (t))
|
||||||
#define NEED_TMP_TIME
|
#define NEED_TMP_TIME
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Reference in New Issue