summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKevin Jacobs <kjacobs@mozilla.com>2020-03-09 22:18:59 +0000
committerKevin Jacobs <kjacobs@mozilla.com>2020-03-09 22:18:59 +0000
commitebe57c1d7c1885a0b1ce151a43d8bf561f5c59c2 (patch)
tree9c3e6f1a7e73ee44e7170bf01b992e87dae8b28e
parent607960e9ae187d4bd45b70e6059d54af08719cc4 (diff)
downloadnss-hg-ebe57c1d7c1885a0b1ce151a43d8bf561f5c59c2.tar.gz
Bug 1618739 - Don't assert fuzzer behavior in SSL_ParseSessionTicket r=jcj
Differential Revision: https://phabricator.services.mozilla.com/D66122
-rw-r--r--lib/ssl/ssl3exthandle.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/ssl/ssl3exthandle.c b/lib/ssl/ssl3exthandle.c
index 206cb00e4..a74006f70 100644
--- a/lib/ssl/ssl3exthandle.c
+++ b/lib/ssl/ssl3exthandle.c
@@ -1056,8 +1056,11 @@ ssl_ParseSessionTicket(sslSocket *ss, const SECItem *decryptedTicket,
PORT_SetError(SEC_ERROR_LIBRARY_FAILURE);
return SECFailure;
}
+#ifndef UNSAFE_FUZZER_MODE
+ /* A well-behaving server should only write 0 or 1. */
PORT_Assert(temp == PR_TRUE || temp == PR_FALSE);
- parsedTicket->extendedMasterSecretUsed = (PRBool)temp;
+#endif
+ parsedTicket->extendedMasterSecretUsed = temp ? PR_TRUE : PR_FALSE;
rv = ssl3_ExtConsumeHandshake(ss, &temp, 4, &buffer, &len);
if (rv != SECSuccess) {