// Copyright (c) 2013 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. #ifndef CHROME_BROWSER_NET_NSS_CONTEXT_H_ #define CHROME_BROWSER_NET_NSS_CONTEXT_H_ #include <string> #include "base/callback.h" #include "base/compiler_specific.h" #include "crypto/scoped_nss_types.h" namespace content { class ResourceContext; } // namespace content // Returns a reference to the public slot for the user associated with // |context|. Should be called only on the IO thread. crypto::ScopedPK11Slot GetPublicNSSKeySlotForResourceContext( content::ResourceContext* context); // Returns a reference to the private slot for the user associated with // |context|, if it is loaded. If it is not loaded and |callback| is non-null, // the |callback| will be run once the slot is loaded. // Should be called only on the IO thread. crypto::ScopedPK11Slot GetPrivateNSSKeySlotForResourceContext( content::ResourceContext* context, const base::Callback<void(crypto::ScopedPK11Slot)>& callback) WARN_UNUSED_RESULT; #endif // CHROME_BROWSER_NET_NSS_CONTEXT_H_