Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1095)

Unified Diff: net/ssl/ssl_client_session_cache_openssl.cc

Issue 1921563003: Renaming _openssl files to _impl (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/ssl/ssl_client_session_cache_openssl.cc
diff --git a/net/ssl/ssl_client_session_cache_openssl.cc b/net/ssl/ssl_client_session_cache_openssl.cc
deleted file mode 100644
index d4812694c1b5ca0c5993c1099fc884b1cafb550d..0000000000000000000000000000000000000000
--- a/net/ssl/ssl_client_session_cache_openssl.cc
+++ /dev/null
@@ -1,99 +0,0 @@
-// Copyright 2015 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "net/ssl/ssl_client_session_cache_openssl.h"
-
-#include <utility>
-
-#include "base/time/clock.h"
-#include "base/time/default_clock.h"
-
-namespace net {
-
-SSLClientSessionCacheOpenSSL::SSLClientSessionCacheOpenSSL(const Config& config)
- : clock_(new base::DefaultClock),
- config_(config),
- cache_(config.max_entries),
- lookups_since_flush_(0) {
-}
-
-SSLClientSessionCacheOpenSSL::~SSLClientSessionCacheOpenSSL() {
- Flush();
-}
-
-size_t SSLClientSessionCacheOpenSSL::size() const {
- return cache_.size();
-}
-
-ScopedSSL_SESSION SSLClientSessionCacheOpenSSL::Lookup(
- const std::string& cache_key) {
- base::AutoLock lock(lock_);
-
- // Expire stale sessions.
- lookups_since_flush_++;
- if (lookups_since_flush_ >= config_.expiration_check_count) {
- lookups_since_flush_ = 0;
- FlushExpiredSessions();
- }
-
- CacheEntryMap::iterator iter = cache_.Get(cache_key);
- if (iter == cache_.end())
- return nullptr;
- if (IsExpired(iter->second.get(), clock_->Now())) {
- cache_.Erase(iter);
- return nullptr;
- }
- return ScopedSSL_SESSION(SSL_SESSION_up_ref(iter->second->session.get()));
-}
-
-void SSLClientSessionCacheOpenSSL::Insert(const std::string& cache_key,
- SSL_SESSION* session) {
- base::AutoLock lock(lock_);
-
- // Make a new entry.
- std::unique_ptr<CacheEntry> entry(new CacheEntry);
- entry->session.reset(SSL_SESSION_up_ref(session));
- entry->creation_time = clock_->Now();
-
- // Takes ownership.
- cache_.Put(cache_key, std::move(entry));
-}
-
-void SSLClientSessionCacheOpenSSL::Flush() {
- base::AutoLock lock(lock_);
-
- cache_.Clear();
-}
-
-void SSLClientSessionCacheOpenSSL::SetClockForTesting(
- std::unique_ptr<base::Clock> clock) {
- clock_ = std::move(clock);
-}
-
-SSLClientSessionCacheOpenSSL::CacheEntry::CacheEntry() {
-}
-
-SSLClientSessionCacheOpenSSL::CacheEntry::~CacheEntry() {
-}
-
-bool SSLClientSessionCacheOpenSSL::IsExpired(
- SSLClientSessionCacheOpenSSL::CacheEntry* entry,
- const base::Time& now) {
- return now < entry->creation_time ||
- entry->creation_time + config_.timeout < now;
-}
-
-void SSLClientSessionCacheOpenSSL::FlushExpiredSessions() {
- base::Time now = clock_->Now();
- CacheEntryMap::iterator iter = cache_.begin();
- while (iter != cache_.end()) {
- if (IsExpired(iter->second.get(), now)) {
- iter = cache_.Erase(iter);
- } else {
- ++iter;
- }
- }
-}
-
-} // namespace net

Powered by Google App Engine
This is Rietveld 408576698