summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Taubert <ttaubert@mozilla.com>2018-05-15 16:20:18 +0200
committerTim Taubert <ttaubert@mozilla.com>2018-05-15 16:20:18 +0200
commit1ba33f79421badb70c435159ed808043b780355d (patch)
tree6668654a9851791b6be12dbf8aa28802e2e46eff
parenta4f9ee58458725b5750bc6e8594a948cc782deb9 (diff)
downloadnss-hg-1ba33f79421badb70c435159ed808043b780355d.tar.gz
Bug 1461623 - Clear session cache after every (d)tls-client fuzzer run r=franziskus
Reviewers: franziskus Reviewed By: franziskus Bug #: 1461623 Differential Revision: https://phabricator.services.mozilla.com/D1284
-rw-r--r--fuzz/tls_client_target.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/fuzz/tls_client_target.cc b/fuzz/tls_client_target.cc
index e59550984..a5b2a2c5f 100644
--- a/fuzz/tls_client_target.cc
+++ b/fuzz/tls_client_target.cc
@@ -87,15 +87,12 @@ static void SetupCallbacks(PRFileDesc* fd, ClientConfig* config) {
}
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t len) {
- static std::unique_ptr<NSSDatabase> db(new NSSDatabase());
+ std::unique_ptr<NSSDatabase> db(new NSSDatabase());
assert(db != nullptr);
EnableAllProtocolVersions();
std::unique_ptr<ClientConfig> config(new ClientConfig(data, len));
- // Clear the cache. We never want to resume as we couldn't reproduce that.
- SSL_ClearSessionCache();
-
// Reset the RNG state.
assert(RNG_RandomUpdate(NULL, 0) == SECSuccess);
@@ -114,6 +111,9 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t len) {
SetupCallbacks(ssl_fd, config.get());
DoHandshake(ssl_fd, false);
+ // Release all SIDs.
+ SSL_ClearSessionCache();
+
return 0;
}