forked from wolfSSL/wolfssl
Merge pull request #8703 from lealem47/zd19592
Attempt wolfssl_read_bio_file in read_bio even when XFSEEK is available
This commit is contained in:
@ -744,7 +744,6 @@ WOLFSSL_NO_DH_GEN_PUB
|
||||
WOLFSSL_NO_DTLS_SIZE_CHECK
|
||||
WOLFSSL_NO_ETM_ALERT
|
||||
WOLFSSL_NO_FENCE
|
||||
WOLFSSL_NO_FSEEK
|
||||
WOLFSSL_NO_INIT_CTX_KEY
|
||||
WOLFSSL_NO_ISSUERHASH_TDPEER
|
||||
WOLFSSL_NO_KCAPI_AES_CBC
|
||||
|
@ -30,7 +30,6 @@
|
||||
#if defined(OPENSSL_EXTRA) && !defined(WOLFCRYPT_ONLY)
|
||||
#ifndef NO_BIO
|
||||
|
||||
#ifdef WOLFSSL_NO_FSEEK
|
||||
/* Amount of memory to allocate/add. */
|
||||
#define READ_BIO_FILE_CHUNK 128
|
||||
|
||||
@ -109,7 +108,6 @@ static int wolfssl_read_bio_file(WOLFSSL_BIO* bio, char** data)
|
||||
*data = mem;
|
||||
return ret;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* Read exactly the required amount into a newly allocated buffer.
|
||||
*
|
||||
@ -171,15 +169,7 @@ static int wolfssl_read_bio(WOLFSSL_BIO* bio, char** data, int* dataSz,
|
||||
}
|
||||
*memAlloced = 0;
|
||||
}
|
||||
#ifndef WOLFSSL_NO_FSEEK
|
||||
/* Get pending or, when a file BIO, get length of file. */
|
||||
else if ((sz = wolfSSL_BIO_get_len(bio)) > 0) {
|
||||
ret = wolfssl_read_bio_len(bio, sz, data);
|
||||
if (ret > 0) {
|
||||
*memAlloced = 1;
|
||||
}
|
||||
}
|
||||
#else
|
||||
else if ((sz = wolfSSL_BIO_pending(bio)) > 0) {
|
||||
ret = wolfssl_read_bio_len(bio, sz, data);
|
||||
if (ret > 0) {
|
||||
@ -192,7 +182,6 @@ static int wolfssl_read_bio(WOLFSSL_BIO* bio, char** data, int* dataSz,
|
||||
*memAlloced = 1;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
else {
|
||||
WOLFSSL_ERROR_MSG("No data read from bio");
|
||||
*memAlloced = 0;
|
||||
|
@ -8310,11 +8310,16 @@ int wc_CreatePKCS8Key(byte* out, word32* outSz, byte* key, word32 keySz,
|
||||
ret = BAD_FUNC_ARG;
|
||||
}
|
||||
|
||||
#ifndef WOLFSSL_NO_ASN_STRICT
|
||||
/* Sanity check: make sure key doesn't have PKCS #8 header. */
|
||||
if (ToTraditionalInline_ex(key, &keyIdx, keySz, &tmpAlgId) >= 0) {
|
||||
(void)tmpAlgId;
|
||||
ret = ASN_PARSE_E;
|
||||
}
|
||||
#else
|
||||
(void)keyIdx;
|
||||
(void)tmpAlgId;
|
||||
#endif
|
||||
|
||||
CALLOC_ASNSETDATA(dataASN, pkcs8KeyASN_Length-1, ret, NULL);
|
||||
|
||||
|
Reference in New Issue
Block a user