Skip to content

Commit 05a3557

Browse files
authored
Merge pull request #8703 from lealem47/zd19592
Attempt wolfssl_read_bio_file in read_bio even when XFSEEK is available
2 parents 602f4a7 + 579e22f commit 05a3557

File tree

3 files changed

+5
-12
lines changed

3 files changed

+5
-12
lines changed

.wolfssl_known_macro_extras

-1
Original file line numberDiff line numberDiff line change
@@ -744,7 +744,6 @@ WOLFSSL_NO_DH_GEN_PUB
744744
WOLFSSL_NO_DTLS_SIZE_CHECK
745745
WOLFSSL_NO_ETM_ALERT
746746
WOLFSSL_NO_FENCE
747-
WOLFSSL_NO_FSEEK
748747
WOLFSSL_NO_INIT_CTX_KEY
749748
WOLFSSL_NO_ISSUERHASH_TDPEER
750749
WOLFSSL_NO_KCAPI_AES_CBC

src/ssl_misc.c

-11
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
#if defined(OPENSSL_EXTRA) && !defined(WOLFCRYPT_ONLY)
3131
#ifndef NO_BIO
3232

33-
#ifdef WOLFSSL_NO_FSEEK
3433
/* Amount of memory to allocate/add. */
3534
#define READ_BIO_FILE_CHUNK 128
3635

@@ -109,7 +108,6 @@ static int wolfssl_read_bio_file(WOLFSSL_BIO* bio, char** data)
109108
*data = mem;
110109
return ret;
111110
}
112-
#endif
113111

114112
/* Read exactly the required amount into a newly allocated buffer.
115113
*
@@ -171,15 +169,7 @@ static int wolfssl_read_bio(WOLFSSL_BIO* bio, char** data, int* dataSz,
171169
}
172170
*memAlloced = 0;
173171
}
174-
#ifndef WOLFSSL_NO_FSEEK
175172
/* Get pending or, when a file BIO, get length of file. */
176-
else if ((sz = wolfSSL_BIO_get_len(bio)) > 0) {
177-
ret = wolfssl_read_bio_len(bio, sz, data);
178-
if (ret > 0) {
179-
*memAlloced = 1;
180-
}
181-
}
182-
#else
183173
else if ((sz = wolfSSL_BIO_pending(bio)) > 0) {
184174
ret = wolfssl_read_bio_len(bio, sz, data);
185175
if (ret > 0) {
@@ -192,7 +182,6 @@ static int wolfssl_read_bio(WOLFSSL_BIO* bio, char** data, int* dataSz,
192182
*memAlloced = 1;
193183
}
194184
}
195-
#endif
196185
else {
197186
WOLFSSL_ERROR_MSG("No data read from bio");
198187
*memAlloced = 0;

wolfcrypt/src/asn.c

+5
Original file line numberDiff line numberDiff line change
@@ -8310,11 +8310,16 @@ int wc_CreatePKCS8Key(byte* out, word32* outSz, byte* key, word32 keySz,
83108310
ret = BAD_FUNC_ARG;
83118311
}
83128312

8313+
#ifndef WOLFSSL_NO_ASN_STRICT
83138314
/* Sanity check: make sure key doesn't have PKCS #8 header. */
83148315
if (ToTraditionalInline_ex(key, &keyIdx, keySz, &tmpAlgId) >= 0) {
83158316
(void)tmpAlgId;
83168317
ret = ASN_PARSE_E;
83178318
}
8319+
#else
8320+
(void)keyIdx;
8321+
(void)tmpAlgId;
8322+
#endif
83188323

83198324
CALLOC_ASNSETDATA(dataASN, pkcs8KeyASN_Length-1, ret, NULL);
83208325

0 commit comments

Comments
 (0)