blob: b49e121b31a185350eb9d1fec35e594769bba378 [file] [log] [blame]
Yingdi Yu7640cb32014-01-29 20:00:50 -08001/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil -*- */
2/**
3 * Copyright (C) 2013 Regents of the University of California.
4 * @author: Yingdi Yu <yingdi@cs.ucla.edu>
5 * See COPYING for copyright and distribution information.
6 */
7
Yingdi Yufc40d872014-02-18 12:56:04 -08008#ifndef NDN_SECURITY_CERTIFICATE_CACHE_HPP
9#define NDN_SECURITY_CERTIFICATE_CACHE_HPP
Yingdi Yu7640cb32014-01-29 20:00:50 -080010
11#include "../name.hpp"
12#include "identity-certificate.hpp"
13
Yingdi Yufc40d872014-02-18 12:56:04 -080014namespace ndn {
Yingdi Yu7640cb32014-01-29 20:00:50 -080015
16class CertificateCache
17{
18public:
19 virtual
Yingdi Yu4b8c6a22014-04-15 23:00:54 -070020 ~CertificateCache()
21 {
22 }
Yingdi Yu7640cb32014-01-29 20:00:50 -080023
Yingdi Yu4b8c6a22014-04-15 23:00:54 -070024 virtual void
25 insertCertificate(shared_ptr<const IdentityCertificate> certificate) = 0;
26
27 virtual shared_ptr<const IdentityCertificate>
Yingdi Yu7640cb32014-01-29 20:00:50 -080028 getCertificate(const Name& certificateNameWithoutVersion) = 0;
29};
30
Yingdi Yufc40d872014-02-18 12:56:04 -080031} // namespace ndn
Yingdi Yu7640cb32014-01-29 20:00:50 -080032
Yingdi Yufc40d872014-02-18 12:56:04 -080033#endif //NDN_SECURITY_CERTIFICATE_CACHE_HPP