F-1295 F-1697 F-3684 F-6287: fix duplicate wolfSSL_write call, wc_FreeDhKey double-free/key2 leak, fileSize dead-code checks, and unsigned keySz < 0 check
parent
73d813efe4
commit
99cdfa1e3a
|
|
@ -152,9 +152,8 @@ static int loadKey(byte** keyDer, word32* keySz, RsaKey* key, const char* f)
|
|||
printf("return from loading in private key = %d\n", ret);
|
||||
}
|
||||
|
||||
if (*keySz < 0) {
|
||||
if (ret < 0) {
|
||||
printf("unable to decode private key\n");
|
||||
ret = *keySz;
|
||||
}
|
||||
|
||||
return ret;
|
||||
|
|
|
|||
|
|
@ -141,7 +141,7 @@ int main(int argc, char** argv)
|
|||
|
||||
/* First call to get required buffer size */
|
||||
ret = wolfSSL_dtls_export(ssl, NULL, &sessionSz);
|
||||
if (ret < 0 || sessionSz == 0) {
|
||||
if (ret != 0 && sessionSz == 0) {
|
||||
fprintf(stderr, "Error: wolfSSL_dtls_export (get size) failed: %d\n",
|
||||
ret);
|
||||
ret = 1;
|
||||
|
|
|
|||
|
|
@ -210,7 +210,7 @@ int main(int argc, char** argv)
|
|||
|
||||
/* First call to get required buffer size */
|
||||
ret = wolfSSL_dtls_export(ssl, NULL, &sessionSz);
|
||||
if (ret < 0 || sessionSz == 0) {
|
||||
if (ret != 0 && sessionSz == 0) {
|
||||
fprintf(stderr, "Error: wolfSSL_dtls_export (get size) failed: %d\n",
|
||||
ret);
|
||||
ret = 1;
|
||||
|
|
|
|||
|
|
@ -433,7 +433,7 @@ int main(int argc, char *argv[])
|
|||
|
||||
/* Free allocated items */
|
||||
wc_FreeDhKey(&key1);
|
||||
wc_FreeDhKey(&key1);
|
||||
wc_FreeDhKey(&key2);
|
||||
wc_FreeRng(&rng);
|
||||
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -237,7 +237,6 @@ int main(void)
|
|||
|
||||
/* Write the message that will ask the server for information on the
|
||||
* connection */
|
||||
wolfSSL_write(ssl, message, strlen(message));
|
||||
if ((ret = wolfSSL_write(ssl, message, strlen(message))) !=
|
||||
strlen(message)) {
|
||||
fprintf(stderr, "ERROR: failed to write entire message\n");
|
||||
|
|
|
|||
|
|
@ -730,7 +730,7 @@ long ftell(FILE* stream)
|
|||
fPtr = (EFI_FILE_HANDLE*)stream;
|
||||
|
||||
fSize = fileSize(*(fPtr));
|
||||
if (fileSize == 0) {
|
||||
if (fSize == 0) {
|
||||
uefi_printf_wolfssl("File is of size 0\n");
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -756,7 +756,7 @@ size_t fread(void* ptr, size_t size, size_t count, FILE* stream)
|
|||
fPtr = (EFI_FILE_HANDLE*)stream;
|
||||
|
||||
fSize = fileSize(*(fPtr));
|
||||
if (fileSize == 0) {
|
||||
if (fSize == 0) {
|
||||
uefi_printf_wolfssl("File is of size 0\n");
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1103,8 +1103,9 @@ struct dirent* readdir(DIR* stream)
|
|||
}
|
||||
|
||||
fSize = fileSize(*(fPtr));
|
||||
if (fileSize == 0) {
|
||||
if (fSize == 0) {
|
||||
uefi_printf_wolfssl("File is of size 0\n");
|
||||
XFREE(dirPtr, NULL, DYNAMIC_TYPE_TMP_BUFFER);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue