NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.0: NDN, CCN, CCNx, content centric networks
API Documentation
ndn Namespace Reference

Copyright (c) 2011-2015 Regents of the University of California. More...

Namespaces

 crypto
 
 dns
 
 encoding
 
 io
 
 lp
 
 mgmt
 
 name
 
 nfd
 
 oid
 
 random
 
 security
 
 signed_interest
 
 time
 
 tlv
 Namespace defining NDN-TLV related constants and procedures.
 
 util
 

Classes

class  AesKeyParamsInfo
 AesKeyParamsInfo is used to initialize a SimpleSymmetricKeyParams template for AES key. More...
 
class  Block
 Class representing a wire element of NDN-TLV packet format. More...
 
class  Buffer
 Class representing a general-use automatically managed/resized buffer. More...
 
class  Certificate
 
class  CertificateCache
 Interface for the cache of validated certificates. More...
 
class  CertificateCacheTtl
 Cache of validated certificates with freshness-based eviction policy. More...
 
class  CertificateExtension
 A CertificateExtension represents the Extension entry in a certificate. More...
 
class  CertificateSubjectDescription
 A CertificateSubjectDescription represents the SubjectDescription entry in a Certificate. More...
 
class  CFReleaser
 Helper class to wrap CoreFoundation object pointers. More...
 
class  CommandInterestGenerator
 Helper class to generate CommandInterests. More...
 
class  CommandInterestValidator
 Helper class to validate CommandInterests. More...
 
class  ConfigFile
 
class  ContainerWithOnEmptySignal
 A simple container that will fire up onEmpty signal when there are no entries left. More...
 
class  Data
 represents a Data packet More...
 
class  DigestSha256
 Represent a SHA256 digest. More...
 
class  EcdsaKeyParamsInfo
 EcdsaKeyParamInfo is used to initialize a SimplePublicKeyParams template for ECDSA key. More...
 
class  Exclude
 Class to represent Exclude component in NDN interests. More...
 
class  Face
 Abstraction to communicate with local or remote NDN forwarder. More...
 
class  Hashable
 a concept check for CryptoPP hash algorithm More...
 
class  IdentityCertificate
 
class  Interest
 represents an Interest packet More...
 
class  InterestFilter
 
class  InterestFilterRecord
 
class  KeyLocator
 
class  KeyParams
 Base class of key parameters. More...
 
class  Link
 represents a Link instance More...
 
class  MatchInterestFilterId
 Functor to match InterestFilterId. More...
 
class  MatchPendingInterestId
 Functor to match pending interests against PendingInterestId. More...
 
class  MatchRegisteredPrefixId
 Functor to match RegisteredPrefixId. More...
 
class  MetaInfo
 An MetaInfo holds the meta info which is signed inside the data packet. More...
 
class  Name
 Name abstraction to represent an absolute name. More...
 
class  OBufferStream
 Class implementing interface similar to ostringstream, but to construct ndn::Buffer. More...
 
class  OID
 
class  PendingInterest
 
class  PublicKey
 
class  RegexBackrefManager
 
class  RegexBackrefMatcher
 
class  RegexComponentMatcher
 
class  RegexComponentSetMatcher
 
class  RegexMatcher
 
class  RegexPatternListMatcher
 
class  RegexPseudoMatcher
 
class  RegexRepeatMatcher
 
class  RegexTopMatcher
 
class  RegisteredPrefix
 
class  RsaKeyParamsInfo
 RsaKeyParamInfo is used to initialize a SimplePublicKeyParams template for RSA key. More...
 
class  SecPublicInfo
 SecPublicInfo is a base class for the storage of public information. More...
 
class  SecPublicInfoSqlite3
 
class  SecRule
 
class  SecRuleRelative
 
class  SecRuleSpecific
 
class  SecTpm
 SecTpm is the base class of the TPM classes. More...
 
class  SecTpmFile
 
class  SecTpmOsx
 
class  SecuredBag
 
class  Selectors
 Abstraction implementing Interest selectors. More...
 
class  Signature
 A Signature is storage for the signature-related information (info and value) in a Data packet. More...
 
class  SignatureInfo
 
class  SignatureSha256WithEcdsa
 represents a Sha256WithEcdsa signature. More...
 
class  SignatureSha256WithRsa
 Represent a SHA256-with-RSA signature. More...
 
class  SimplePublicKeyParams
 SimplePublicKeyParams is a template for public keys with only one parameter: size. More...
 
class  SimpleSymmetricKeyParams
 SimpleSymmetricKeyParams is a template for symmetric keys with only one parameter: size. More...
 
class  SimpleTag
 provides a tag type for simple types More...
 
class  StreamTransportImpl
 
class  StreamTransportWithResolverImpl
 
class  StringHelperError
 
class  Tag
 Base class for packet tags that can hold any arbitrary information. More...
 
class  TagHost
 Base class to store tag information (e.g., inside Interest and Data packets) More...
 
class  TcpTransport
 
class  Transport
 
class  UnixTransport
 
class  ValidationRequest
 ValidationRequest contains information related to further validation. More...
 
class  Validator
 Validator is one of the main classes of the security library. More...
 
class  ValidatorConfig
 
class  ValidatorNull
 
class  ValidatorRegex
 
class  WireDecodable
 a concept check for TLV abstraction with .wireDecode method and constructible from Block More...
 
class  WireEncodable
 a concept check for TLV abstraction with .wireEncode method More...
 
class  WireEncodableWithEncodingBuffer
 a concept check for TLV abstraction with .wireEncode method More...
 

Typedefs

typedef shared_ptr< const BufferConstBufferPtr
 
typedef shared_ptr< BufferBufferPtr
 
typedef function< void(const Interest &, const Data &)> DataCallback
 Callback called when expressed Interest gets satisfied with a Data packet. More...
 
typedef function< void(const Interest &, const lp::Nack &)> NackCallback
 Callback called when Nack is sent in response to expressed Interest. More...
 
typedef function< void(const Interest &)> TimeoutCallback
 Callback called when expressed Interest times out. More...
 
typedef function< void(const Interest &, Data &)> OnData
 Callback called when expressed Interest gets satisfied with Data packet. More...
 
typedef function< void(const Interest &)> OnTimeout
 Callback called when expressed Interest times out. More...
 
typedef function< void(const InterestFilter &, const Interest &)> OnInterest
 Callback called when incoming Interest matches the specified InterestFilter. More...
 
typedef function< void(const Name &)> RegisterPrefixSuccessCallback
 Callback called when registerPrefix or setInterestFilter command succeeds. More...
 
typedef function< void(const Name &, const std::string &)> RegisterPrefixFailureCallback
 Callback called when registerPrefix or setInterestFilter command fails. More...
 
typedef function< void()> UnregisterPrefixSuccessCallback
 Callback called when unregisterPrefix or unsetInterestFilter command succeeds. More...
 
typedef function< void(const std::string &)> UnregisterPrefixFailureCallback
 Callback called when unregisterPrefix or unsetInterestFilter command fails. More...
 
typedef Name PartialName
 Partial name abstraction to represent an arbitrary sequence of name components. More...
 
typedef SimplePublicKeyParams< RsaKeyParamsInfoRsaKeyParams
 RsaKeyParams carries parameters for RSA key. More...
 
typedef SimplePublicKeyParams< EcdsaKeyParamsInfoEcdsaKeyParams
 EcdsaKeyParams carries parameters for ECDSA key. More...
 
typedef SimpleSymmetricKeyParams< AesKeyParamsInfoAesKeyParams
 
typedef function< void(const shared_ptr< const Interest > &)> OnInterestValidated
 Callback to report a successful Interest validation. More...
 
typedef function< void(const shared_ptr< const Interest > &, const std::string &)> OnInterestValidationFailed
 Callback to report a failed Interest validation. More...
 
typedef function< void(const shared_ptr< const Data > &)> OnDataValidated
 Callback to report a successful Data validation. More...
 
typedef function< void(const shared_ptr< const Data > &, const std::string &)> OnDataValidationFailed
 Callback to report a failed Data validation. More...
 
typedef boost::asio::basic_deadline_timer< time::steady_clockmonotonic_deadline_timer
 
typedef RegexTopMatcher Regex
 

Enumerations

enum  KeyType { KEY_TYPE_RSA = 0, KEY_TYPE_ECDSA = 1, KEY_TYPE_AES = 128, KEY_TYPE_NULL = 255 }
 
enum  KeyClass { KEY_CLASS_PUBLIC, KEY_CLASS_PRIVATE, KEY_CLASS_SYMMETRIC }
 
enum  DigestAlgorithm { DIGEST_ALGORITHM_SHA256 }
 
enum  EncryptMode { ENCRYPT_MODE_DEFAULT, ENCRYPT_MODE_CFB_AES }
 
enum  AclType { ACL_TYPE_PUBLIC, ACL_TYPE_PRIVATE }
 

Functions

template size_t Data::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder, bool unsignedPortion) const
 
template size_t Data::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder, bool unsignedPortion) const
 
std::ostream & operator<< (std::ostream &os, const Data &data)
 
size_t DEREncodeGeneralTime (CryptoPP::BufferedTransformation &bt, const time::system_clock::TimePoint &time)
 
void BERDecodeTime (CryptoPP::BufferedTransformation &bt, time::system_clock::TimePoint &time)
 
void encodeValue (CryptoPP::BufferedTransformation &bt, CryptoPP::word32 v)
 
size_t decodeValue (CryptoPP::BufferedTransformation &bt, CryptoPP::word32 &v)
 
template size_t Exclude::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t Exclude::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
std::ostream & operator<< (std::ostream &os, const Exclude &exclude)
 
template<typename NETPKT >
static void extractLpLocalFields (NETPKT &netPacket, const lp::Packet &lpPacket)
 extract local fields from NDNLPv2 packet and tag onto a network layer packet More...
 
std::ostream & operator<< (std::ostream &os, const InterestFilter &filter)
 
template size_t Interest::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t Interest::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
std::ostream & operator<< (std::ostream &os, const Interest &interest)
 
template size_t KeyLocator::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t KeyLocator::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
template size_t Link::encodeContent< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t Link::encodeContent< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
template size_t MetaInfo::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t MetaInfo::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
std::ostream & operator<< (std::ostream &os, const MetaInfo &info)
 
template size_t Name::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t Name::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
std::ostream & operator<< (std::ostream &os, const Name &name)
 
std::istream & operator>> (std::istream &is, Name &name)
 
std::ostream & operator<< (std::ostream &os, const Certificate &cert)
 
std::ostream & operator<< (std::ostream &os, const PublicKey &key)
 
static int sqlite3_bind_string (sqlite3_stmt *statement, int index, const string &value, void(*destructor)(void *))
 A utility function to call the normal sqlite3_bind_text where the value and length are value.c_str() and value.size(). More...
 
static string sqlite3_column_string (sqlite3_stmt *statement, int column)
 
template size_t Selectors::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t Selectors::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
template size_t SignatureInfo::wireEncode< encoding::EncoderTag > (EncodingImpl< encoding::EncoderTag > &encoder) const
 
template size_t SignatureInfo::wireEncode< encoding::EstimatorTag > (EncodingImpl< encoding::EstimatorTag > &encoder) const
 
template<typename T , typename... Args>
unique_ptr< T > make_unique (Args &&... args)
 
template<typename V >
std::string to_string (const V &v)
 
void ndn_digestSha256 (const uint8_t *data, size_t dataLength, uint8_t *digest)
 Compute the sha-256 digest of data. More...
 
std::ostream & operator<< (std::ostream &os, const RegexMatcher &regex)
 
void printHex (std::ostream &os, const uint8_t *buffer, size_t length, bool isUpperCase=true)
 Output the hex representation of the bytes in array to the output stream os. More...
 
void printHex (std::ostream &os, const Buffer &buffer, bool isUpperCase=true)
 Output the hex representation of the bytes in the buffer to the output stream os. More...
 
std::string toHex (const uint8_t *buffer, size_t length, bool isUpperCase=true)
 Return the hex representation of the bytes in array. More...
 
std::string toHex (const Buffer &buffer, bool isUpperCase=true)
 Return the hex representation of the bytes in the buffer to the output stream os. More...
 
int fromHexChar (uint8_t c)
 Convert the hex character to an integer from 0 to 15, or -1 if not a hex character. More...
 
shared_ptr< const BufferfromHex (const std::string &hexString)
 Convert the hex string to buffer. More...
 
void trimLeft (std::string &str)
 Modify str in place to erase whitespace on the left. More...
 
void trimRight (std::string &str)
 Modify str in place to erase whitespace on the right. More...
 
void trim (std::string &str)
 Modify str in place to erase whitespace on the left and right. More...
 
std::string unescape (const std::string &str)
 Decode a percent-encoded string. More...
 

Variables

 WireEncodable< Data >
 
 WireEncodableWithEncodingBuffer< Data >
 
 WireDecodable< Data >
 
const size_t MAX_SIZE_OF_BLOCK_FROM_STREAM = MAX_NDN_PACKET_SIZE
 
static const int OID_MAGIC_NUMBER = 40
 
const size_t MAX_NDN_PACKET_SIZE = 8800
 practical limit of network layer packet size More...
 
 WireEncodable< Exclude >
 
 WireEncodableWithEncodingBuffer< Exclude >
 
 WireDecodable< Exclude >
 
 WireEncodable< Interest >
 
 WireEncodableWithEncodingBuffer< Interest >
 
 WireDecodable< Interest >
 
const time::milliseconds DEFAULT_INTEREST_LIFETIME = time::milliseconds(4000)
 default value for InterestLifetime More...
 
 WireEncodable< KeyLocator >
 
 WireEncodableWithEncodingBuffer< KeyLocator >
 
 WireDecodable< KeyLocator >
 
 WireEncodable< Link >
 
 WireEncodableWithEncodingBuffer< Link >
 
 WireDecodable< Link >
 
const size_t INVALID_SELECTED_DELEGATION_INDEX = std::numeric_limits<size_t>::max()
 
 WireEncodable< MetaInfo >
 
 WireEncodableWithEncodingBuffer< MetaInfo >
 
 WireDecodable< MetaInfo >
 
 WireEncodable< Name >
 
 WireEncodableWithEncodingBuffer< Name >
 
 WireDecodable< Name >
 
 WireEncodable< Certificate >
 
 WireDecodable< Certificate >
 
 WireEncodable< IdentityCertificate >
 
 WireDecodable< IdentityCertificate >
 
static const uint32_t RSA_KEY_SIZES [] = {2048, 1024}
 
static const uint32_t ECDSA_KEY_SIZES [] = {256, 384}
 
static const uint32_t AES_KEY_SIZES [] = {64, 128, 256}
 
static const string INIT_TPM_INFO_TABLE
 
static const string INIT_ID_TABLE
 
static const string INIT_KEY_TABLE
 
static const string INIT_CERT_TABLE
 
 WireEncodable< SecuredBag >
 
 WireDecodable< SecuredBag >
 
static OID SECP256R1 ("1.2.840.10045.3.1.7")
 
static OID SECP384R1 ("1.3.132.0.34")
 
 WireEncodable< Selectors >
 
 WireEncodableWithEncodingBuffer< Selectors >
 
 WireDecodable< Selectors >
 
 WireEncodable< SignatureInfo >
 
 WireEncodableWithEncodingBuffer< SignatureInfo >
 
 WireDecodable< SignatureInfo >
 
static const size_t BOOST_REGEXP_MARK_COUNT_CORRECTION
 

Detailed Description

Copyright (c) 2011-2015 Regents of the University of California.

Copyright (c) 2014, Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St.

Copyright (c) 2015, Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St.

Copyright (c) 2013-2014 Regents of the University of California.

Copyright (c) 2013-2016 Regents of the University of California.

Copyright (c) 2013-2015 Regents of the University of California.

Copyright (c) 2014-2015, Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St.

This file is part of ndnSIM. See AUTHORS for complete list of ndnSIM authors and contributors.

ndnSIM is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndnSIM is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with ndnSIM, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

Louis, Beijing Institute of Technology, The University of Memphis.

This file is part of NFD (Named Data Networking Forwarding Daemon). See AUTHORS.md for complete list of NFD authors and contributors.

NFD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with NFD, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Alexander Afanasyev http://lasr.cs.ucla.edu/afanasyev/index.html

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
: Alexander Afanasyev http://lasr.cs.ucla.edu/afanasyev/index.html
: Yingdi Yu http://irl.cs.ucla.edu/~yingdi/

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Eric Newberry enewb.nosp@m.erry.nosp@m.@emai.nosp@m.l.ar.nosp@m.izona.nosp@m..edu

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file.If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors. Original copyright notice from NFD:

Copyright (c) 2014, Regents of the University of California, Arizona Board of Regents, Colorado State University, University Pierre & Marie Curie, Sorbonne University, Washington University in St. Louis, Beijing Institute of Technology, The University of Memphis

This file is part of NFD (Named Data Networking Forwarding Daemon). See AUTHORS.md for complete list of NFD authors and contributors.

NFD is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

NFD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with NFD, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Jeff Thompson jefft.nosp@m.0@re.nosp@m.map.u.nosp@m.cla..nosp@m.edu
Alexander Afanasyev http://lasr.cs.ucla.edu/afanasyev/index.html
Zhenkai Zhu http://irl.cs.ucla.edu/~zhenkai/

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Yingdi Yu http://irl.cs.ucla.edu/~yingdi/

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Yingdi Yu http://irl.cs.ucla.edu/~yingdi/
Alexander Afanasyev http://lasr.cs.ucla.edu/afanasyev/index.html

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Yingdi Yu http://irl.cs.ucla.edu/~yingdi/
Jeff Thompson jefft.nosp@m.0@re.nosp@m.map.u.nosp@m.cla..nosp@m.edu
Alexander Afanasyev http://lasr.cs.ucla.edu/afanasyev/index.html

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Yingdi Yu http://irl.cs.ucla.edu/~yingdi/
Jeff Thompson jefft.nosp@m.0@re.nosp@m.map.u.nosp@m.cla..nosp@m.edu

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Author
Xingyu Ma http://www.linkedin.com/pub/xingyu-ma/1a/384/5a8
Yingdi Yu http://irl.cs.ucla.edu/~yingdi/
Alexander Afanasyev http://lasr.cs.ucla.edu/afanasyev/index.html

Louis, Beijing Institute of Technology, The University of Memphis.

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Louis, Beijing Institute of Technology, The University of Memphis

This file is part of ndn-cxx library (NDN C++ library with eXperimental eXtensions).

ndn-cxx library is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

ndn-cxx library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received copies of the GNU General Public License and GNU Lesser General Public License along with ndn-cxx, e.g., in COPYING.md file. If not, see http://www.gnu.org/licenses/.

See AUTHORS.md for complete list of ndn-cxx authors and contributors.

Typedef Documentation

§ ConstBufferPtr

typedef shared_ptr<const Buffer> ndn::ConstBufferPtr

Definition at line 33 of file buffer.hpp.

§ BufferPtr

typedef shared_ptr<Buffer> ndn::BufferPtr

Definition at line 35 of file buffer.hpp.

§ DataCallback

typedef function<void(const Interest&, const Data&)> ndn::DataCallback

Callback called when expressed Interest gets satisfied with a Data packet.

Definition at line 67 of file face.hpp.

§ NackCallback

typedef function<void(const Interest&, const lp::Nack&)> ndn::NackCallback

Callback called when Nack is sent in response to expressed Interest.

Definition at line 72 of file face.hpp.

§ TimeoutCallback

typedef function<void(const Interest&)> ndn::TimeoutCallback

Callback called when expressed Interest times out.

Definition at line 77 of file face.hpp.

§ OnData

typedef function<void(const Interest&, Data&)> ndn::OnData

Callback called when expressed Interest gets satisfied with Data packet.

Deprecated:
use DataCallback

Definition at line 83 of file face.hpp.

§ OnTimeout

typedef function<void(const Interest&)> ndn::OnTimeout

Callback called when expressed Interest times out.

Deprecated:
use TimeoutCallback

Definition at line 89 of file face.hpp.

§ OnInterest

typedef function<void (const InterestFilter&, const Interest&)> ndn::OnInterest

Callback called when incoming Interest matches the specified InterestFilter.

Definition at line 94 of file face.hpp.

§ RegisterPrefixSuccessCallback

typedef function<void(const Name&)> ndn::RegisterPrefixSuccessCallback

Callback called when registerPrefix or setInterestFilter command succeeds.

Definition at line 99 of file face.hpp.

§ RegisterPrefixFailureCallback

typedef function<void(const Name&, const std::string&)> ndn::RegisterPrefixFailureCallback

Callback called when registerPrefix or setInterestFilter command fails.

Definition at line 104 of file face.hpp.

§ UnregisterPrefixSuccessCallback

typedef function<void()> ndn::UnregisterPrefixSuccessCallback

Callback called when unregisterPrefix or unsetInterestFilter command succeeds.

Definition at line 109 of file face.hpp.

§ UnregisterPrefixFailureCallback

typedef function<void(const std::string&)> ndn::UnregisterPrefixFailureCallback

Callback called when unregisterPrefix or unsetInterestFilter command fails.

Definition at line 114 of file face.hpp.

§ PartialName

Partial name abstraction to represent an arbitrary sequence of name components.

Definition at line 36 of file name.hpp.

§ RsaKeyParams

RsaKeyParams carries parameters for RSA key.

Definition at line 158 of file key-params.hpp.

§ EcdsaKeyParams

EcdsaKeyParams carries parameters for ECDSA key.

Definition at line 161 of file key-params.hpp.

§ AesKeyParams

§ OnInterestValidated

typedef function<void(const shared_ptr<const Interest>&)> ndn::OnInterestValidated

Callback to report a successful Interest validation.

Definition at line 31 of file validation-request.hpp.

§ OnInterestValidationFailed

typedef function<void(const shared_ptr<const Interest>&, const std::string&)> ndn::OnInterestValidationFailed

Callback to report a failed Interest validation.

Definition at line 35 of file validation-request.hpp.

§ OnDataValidated

typedef function<void(const shared_ptr<const Data>&)> ndn::OnDataValidated

Callback to report a successful Data validation.

Definition at line 38 of file validation-request.hpp.

§ OnDataValidationFailed

typedef function<void(const shared_ptr<const Data>&, const std::string&)> ndn::OnDataValidationFailed

Callback to report a failed Data validation.

Definition at line 42 of file validation-request.hpp.

§ monotonic_deadline_timer

typedef boost::asio::basic_deadline_timer<time::steady_clock> ndn::monotonic_deadline_timer

Definition at line 78 of file monotonic_deadline_timer.hpp.

§ Regex

Definition at line 31 of file regex.hpp.

Enumeration Type Documentation

§ KeyType

Enumerator
KEY_TYPE_RSA 
KEY_TYPE_ECDSA 
KEY_TYPE_AES 
KEY_TYPE_NULL 

Definition at line 40 of file security-common.hpp.

§ KeyClass

Enumerator
KEY_CLASS_PUBLIC 
KEY_CLASS_PRIVATE 
KEY_CLASS_SYMMETRIC 

Definition at line 51 of file security-common.hpp.

§ DigestAlgorithm

Enumerator
DIGEST_ALGORITHM_SHA256 

Definition at line 57 of file security-common.hpp.

§ EncryptMode

Enumerator
ENCRYPT_MODE_DEFAULT 
ENCRYPT_MODE_CFB_AES 

Definition at line 61 of file security-common.hpp.

§ AclType

Enumerator
ACL_TYPE_PUBLIC 
ACL_TYPE_PRIVATE 

Definition at line 67 of file security-common.hpp.

Function Documentation

§ Data::wireEncode< encoding::EncoderTag >()

template size_t ndn::Data::wireEncode< encoding::EncoderTag > ( EncodingImpl< encoding::EncoderTag > &  encoder,
bool  unsignedPortion 
) const

§ Data::wireEncode< encoding::EstimatorTag >()

template size_t ndn::Data::wireEncode< encoding::EstimatorTag > ( EncodingImpl< encoding::EstimatorTag > &  encoder,
bool  unsignedPortion 
) const

§ operator<<() [1/9]

§ DEREncodeGeneralTime()

size_t ndn::DEREncodeGeneralTime ( CryptoPP::BufferedTransformation &  bt,
const time::system_clock::TimePoint time 
)

Definition at line 36 of file asn_ext.cpp.

References ndn::time::toIsoString().

Referenced by ndn::Certificate::encode().

§ BERDecodeTime()

void ndn::BERDecodeTime ( CryptoPP::BufferedTransformation &  bt,
time::system_clock::TimePoint time 
)

Definition at line 52 of file asn_ext.cpp.

References ndn::time::fromIsoString().

Referenced by ndn::Certificate::decode().

§ encodeValue()

void ndn::encodeValue ( CryptoPP::BufferedTransformation &  bt,
CryptoPP::word32  v 
)
inline

Definition at line 98 of file oid.cpp.

Referenced by ndn::OID::encode().

§ decodeValue()

size_t ndn::decodeValue ( CryptoPP::BufferedTransformation &  bt,
CryptoPP::word32 &  v 
)
inline

Definition at line 108 of file oid.cpp.

Referenced by ndn::OID::decode().

§ Exclude::wireEncode< encoding::EncoderTag >()

§ Exclude::wireEncode< encoding::EstimatorTag >()

§ operator<<() [2/9]

std::ostream & ndn::operator<< ( std::ostream &  os,
const Exclude exclude 
)

Definition at line 268 of file exclude.cpp.

§ extractLpLocalFields()

template<typename NETPKT >
static void ndn::extractLpLocalFields ( NETPKT &  netPacket,
const lp::Packet lpPacket 
)
static

extract local fields from NDNLPv2 packet and tag onto a network layer packet

Definition at line 421 of file face.cpp.

References ndn::tlv::Data, ndn::lp::Packet::get(), ndn::lp::Packet::has(), and ndn::tlv::Interest.

§ operator<<() [3/9]

std::ostream & ndn::operator<< ( std::ostream &  os,
const InterestFilter filter 
)

§ Interest::wireEncode< encoding::EncoderTag >()

§ Interest::wireEncode< encoding::EstimatorTag >()

§ operator<<() [4/9]

§ KeyLocator::wireEncode< encoding::EncoderTag >()

§ KeyLocator::wireEncode< encoding::EstimatorTag >()

§ Link::encodeContent< encoding::EncoderTag >()

§ Link::encodeContent< encoding::EstimatorTag >()

§ MetaInfo::wireEncode< encoding::EncoderTag >()

§ MetaInfo::wireEncode< encoding::EstimatorTag >()

§ operator<<() [5/9]

§ Name::wireEncode< encoding::EncoderTag >()

§ Name::wireEncode< encoding::EstimatorTag >()

§ operator<<() [6/9]

std::ostream & ndn::operator<< ( std::ostream &  os,
const Name name 
)

Definition at line 353 of file name.cpp.

References ndn::Name::begin(), ndn::Name::empty(), and ndn::Name::end().

§ operator>>()

std::istream & ndn::operator>> ( std::istream &  is,
Name name 
)

Definition at line 370 of file name.cpp.

References ndn::Name::Name().

§ operator<<() [7/9]

std::ostream & ndn::operator<< ( std::ostream &  os,
const Certificate cert 
)

Definition at line 351 of file certificate.cpp.

References ndn::Certificate::printCertificate().

§ operator<<() [8/9]

std::ostream & ndn::operator<< ( std::ostream &  os,
const PublicKey key 
)

Definition at line 143 of file public-key.cpp.

References ndn::Buffer::buf(), and ndn::PublicKey::get().

§ sqlite3_bind_string()

§ sqlite3_column_string()

static string ndn::sqlite3_column_string ( sqlite3_stmt *  statement,
int  column 
)
static

§ Selectors::wireEncode< encoding::EncoderTag >()

§ Selectors::wireEncode< encoding::EstimatorTag >()

§ SignatureInfo::wireEncode< encoding::EncoderTag >()

§ SignatureInfo::wireEncode< encoding::EstimatorTag >()

§ make_unique()

template<typename T , typename... Args>
unique_ptr<T> ndn::make_unique ( Args &&...  args)
inline

Definition at line 44 of file backports.hpp.

References to_string().

§ to_string()

§ ndn_digestSha256()

void ndn::ndn_digestSha256 ( const uint8_t *  data,
size_t  dataLength,
uint8_t *  digest 
)

Compute the sha-256 digest of data.

Parameters
dataPointer to the input byte array.
dataLengthThe length of data.
digestA pointer to a buffer of size crypto::SHA256_DIGEST_SIZE to receive the data.

Definition at line 30 of file crypto.cpp.

References ndn::crypto::SHA256_DIGEST_SIZE.

§ operator<<() [9/9]

std::ostream& ndn::operator<< ( std::ostream &  os,
const RegexMatcher regex 
)
inline

Definition at line 104 of file regex-matcher.hpp.

References ndn::RegexMatcher::getExpr().

§ printHex() [1/2]

void ndn::printHex ( std::ostream &  os,
const uint8_t *  buffer,
size_t  length,
bool  isUpperCase = true 
)

Output the hex representation of the bytes in array to the output stream os.

Parameters
osOutput stream
bufferThe array of bytes
lengthSize of the array
isUpperCaseif true (default) output use uppercase for hex values

Examples:

printHex(std::cout, "Hello, World!") outputs "48656C6C6F2C20776F726C6421"
printHex(std::cout, "Hello, World!", false) outputs "48656c6c6f2c20776f726c6421"

Each octet is always represented as two hex characters ("00" for octet==0).

The output string is a continuous sequence of hex characters without any whitespace separators.

Definition at line 34 of file string-helper.cpp.

Referenced by ndn::util::operator<<(), printHex(), ndn::StringHelperError::StringHelperError(), toHex(), and ndn::name::Component::toUri().

§ printHex() [2/2]

void ndn::printHex ( std::ostream &  os,
const Buffer buffer,
bool  isUpperCase = true 
)

Output the hex representation of the bytes in the buffer to the output stream os.

Parameters
osOutput stream
bufferThe array of bytes
isUpperCaseif true (default) output use uppercase for hex values

Definition at line 53 of file string-helper.cpp.

References ndn::Buffer::buf(), and printHex().

§ toHex() [1/2]

std::string ndn::toHex ( const uint8_t *  buffer,
size_t  length,
bool  isUpperCase = true 
)

Return the hex representation of the bytes in array.

Parameters
bufferThe array of bytes
lengthSize of the array
isUpperCaseif true (default) output use uppercase for hex values

Examples:

toHex("Hello, World!") == "48656C6C6F2C20776F726C6421"
toHex("Hello, World!", false) == "48656c6c6f2c20776f726c6421"

Each octet is always represented as two hex characters ("00" for octet==0).

The output string is a continuous sequence of hex characters without any whitespace separators.

Definition at line 59 of file string-helper.cpp.

References printHex().

Referenced by ndn::StringHelperError::StringHelperError(), and toHex().

§ toHex() [2/2]

std::string ndn::toHex ( const Buffer buffer,
bool  isUpperCase = true 
)

Return the hex representation of the bytes in the buffer to the output stream os.

Parameters
bufferThe array of bytes
isUpperCaseif true (default) output use uppercase for hex values

Definition at line 70 of file string-helper.cpp.

References ndn::Buffer::buf(), and toHex().

§ fromHexChar()

int ndn::fromHexChar ( uint8_t  c)

Convert the hex character to an integer from 0 to 15, or -1 if not a hex character.

Definition at line 76 of file string-helper.cpp.

Referenced by ndn::StringHelperError::StringHelperError(), and unescape().

§ fromHex()

shared_ptr< const Buffer > ndn::fromHex ( const std::string &  hexString)

Convert the hex string to buffer.

Parameters
hexStringsequence of pairs of hex numbers (lower and upper case can be mixed) without any whitespace separators (e.g., "48656C6C6F2C20776F726C6421")
Exceptions
StringHelperErrorif input is invalid

Definition at line 89 of file string-helper.cpp.

References ndn::OBufferStream::buf().

Referenced by ndn::name::Component::fromEscapedString(), and ndn::StringHelperError::StringHelperError().

§ trimLeft()

void ndn::trimLeft ( std::string &  str)

Modify str in place to erase whitespace on the left.

Definition at line 110 of file string-helper.cpp.

Referenced by ndn::StringHelperError::StringHelperError().

§ trimRight()

void ndn::trimRight ( std::string &  str)

Modify str in place to erase whitespace on the right.

Definition at line 116 of file string-helper.cpp.

Referenced by ndn::StringHelperError::StringHelperError().

§ trim()

void ndn::trim ( std::string &  str)

Modify str in place to erase whitespace on the left and right.

Definition at line 122 of file string-helper.cpp.

Referenced by ndn::name::Component::fromEscapedString(), ndn::StringHelperError::StringHelperError(), ndn::SecTpmFile::Impl::transformName(), and ndn::Name::wireDecode().

§ unescape()

std::string ndn::unescape ( const std::string &  str)

Decode a percent-encoded string.

See also
RFC 3986 section 2

When % is not followed by two hex characters, the output is not transformed.

Examples:

unescape("hello%20world") == "hello world"
unescape("hello%20world%FooBar") == "hello world%FooBar"

Definition at line 128 of file string-helper.cpp.

References fromHexChar().

Referenced by ndn::name::Component::fromEscapedString(), and ndn::StringHelperError::StringHelperError().

Variable Documentation

§ WireEncodable< Data >

Definition at line 29 of file data.cpp.

§ WireEncodableWithEncodingBuffer< Data >

Definition at line 30 of file data.cpp.

§ WireDecodable< Data >

Definition at line 31 of file data.cpp.

§ MAX_SIZE_OF_BLOCK_FROM_STREAM

const size_t ndn::MAX_SIZE_OF_BLOCK_FROM_STREAM = MAX_NDN_PACKET_SIZE

Definition at line 46 of file block.cpp.

Referenced by ndn::Block::fromStream().

§ OID_MAGIC_NUMBER

const int ndn::OID_MAGIC_NUMBER = 40
static

Definition at line 36 of file oid.cpp.

Referenced by ndn::OID::decode().

§ MAX_NDN_PACKET_SIZE

§ WireEncodable< Exclude >

Definition at line 32 of file exclude.cpp.

§ WireEncodableWithEncodingBuffer< Exclude >

§ WireDecodable< Exclude >

Definition at line 34 of file exclude.cpp.

§ WireEncodable< Interest >

Definition at line 30 of file interest.cpp.

§ WireEncodableWithEncodingBuffer< Interest >

§ WireDecodable< Interest >

Definition at line 32 of file interest.cpp.

§ DEFAULT_INTEREST_LIFETIME

const unspecified_duration_type ndn::DEFAULT_INTEREST_LIFETIME = time::milliseconds(4000)

§ WireEncodable< KeyLocator >

Definition at line 28 of file key-locator.cpp.

§ WireEncodableWithEncodingBuffer< KeyLocator >

§ WireDecodable< KeyLocator >

Definition at line 30 of file key-locator.cpp.

§ WireEncodable< Link >

Definition at line 35 of file link.cpp.

§ WireEncodableWithEncodingBuffer< Link >

Definition at line 36 of file link.cpp.

§ WireDecodable< Link >

Definition at line 37 of file link.cpp.

§ INVALID_SELECTED_DELEGATION_INDEX

const size_t ndn::INVALID_SELECTED_DELEGATION_INDEX = std::numeric_limits<size_t>::max()

§ WireEncodable< MetaInfo >

Definition at line 29 of file meta-info.cpp.

§ WireEncodableWithEncodingBuffer< MetaInfo >

§ WireDecodable< MetaInfo >

Definition at line 31 of file meta-info.cpp.

§ WireEncodable< Name >

Definition at line 38 of file name.cpp.

§ WireEncodableWithEncodingBuffer< Name >

Definition at line 39 of file name.cpp.

§ WireDecodable< Name >

Definition at line 40 of file name.cpp.

§ WireEncodable< Certificate >

Definition at line 40 of file certificate.cpp.

§ WireDecodable< Certificate >

Definition at line 41 of file certificate.cpp.

§ WireEncodable< IdentityCertificate >

§ WireDecodable< IdentityCertificate >

§ RSA_KEY_SIZES

const uint32_t ndn::RSA_KEY_SIZES[] = {2048, 1024}
static

Definition at line 26 of file key-params.cpp.

Referenced by ndn::RsaKeyParamsInfo::checkKeySize().

§ ECDSA_KEY_SIZES

const uint32_t ndn::ECDSA_KEY_SIZES[] = {256, 384}
static

Definition at line 27 of file key-params.cpp.

Referenced by ndn::EcdsaKeyParamsInfo::checkKeySize().

§ AES_KEY_SIZES

const uint32_t ndn::AES_KEY_SIZES[] = {64, 128, 256}
static

Definition at line 28 of file key-params.cpp.

Referenced by ndn::AesKeyParamsInfo::checkKeySize().

§ INIT_TPM_INFO_TABLE

const string ndn::INIT_TPM_INFO_TABLE
static
Initial value:
=
"CREATE TABLE IF NOT EXISTS "
" TpmInfo( "
" tpm_locator BLOB NOT NULL,"
" PRIMARY KEY (tpm_locator) "
" ); "

Definition at line 45 of file sec-public-info-sqlite3.cpp.

§ INIT_ID_TABLE

const string ndn::INIT_ID_TABLE
static
Initial value:
=
"CREATE TABLE IF NOT EXISTS "
" Identity( "
" identity_name BLOB NOT NULL, "
" default_identity INTEGER DEFAULT 0, "
" PRIMARY KEY (identity_name) "
" ); "
"CREATE INDEX identity_index ON Identity(identity_name);"

Definition at line 52 of file sec-public-info-sqlite3.cpp.

§ INIT_KEY_TABLE

const string ndn::INIT_KEY_TABLE
static
Initial value:
=
"CREATE TABLE IF NOT EXISTS "
" Key( "
" identity_name BLOB NOT NULL, "
" key_identifier BLOB NOT NULL, "
" key_type INTEGER, "
" public_key BLOB, "
" default_key INTEGER DEFAULT 0, "
" active INTEGER DEFAULT 0, "
" PRIMARY KEY (identity_name, key_identifier)"
" ); "
"CREATE INDEX key_index ON Key(identity_name); "

Definition at line 61 of file sec-public-info-sqlite3.cpp.

§ INIT_CERT_TABLE

const string ndn::INIT_CERT_TABLE
static
Initial value:
=
"CREATE TABLE IF NOT EXISTS "
" Certificate( "
" cert_name BLOB NOT NULL, "
" cert_issuer BLOB NOT NULL, "
" identity_name BLOB NOT NULL, "
" key_identifier BLOB NOT NULL, "
" not_before TIMESTAMP, "
" not_after TIMESTAMP, "
" certificate_data BLOB NOT NULL, "
" valid_flag INTEGER DEFAULT 1, "
" default_cert INTEGER DEFAULT 0, "
" PRIMARY KEY (cert_name) "
" ); "
"CREATE INDEX cert_index ON Certificate(cert_name); "
"CREATE INDEX subject ON Certificate(identity_name);"

Definition at line 75 of file sec-public-info-sqlite3.cpp.

§ WireEncodable< SecuredBag >

Definition at line 29 of file secured-bag.cpp.

§ WireDecodable< SecuredBag >

Definition at line 30 of file secured-bag.cpp.

§ SECP256R1

OID ndn::SECP256R1("1.2.840.10045.3.1.7")
static

§ SECP384R1

OID ndn::SECP384R1("1.3.132.0.34")
static

§ WireEncodable< Selectors >

Definition at line 29 of file selectors.cpp.

§ WireEncodableWithEncodingBuffer< Selectors >

§ WireDecodable< Selectors >

Definition at line 31 of file selectors.cpp.

§ WireEncodable< SignatureInfo >

Definition at line 31 of file signature-info.cpp.

§ WireEncodableWithEncodingBuffer< SignatureInfo >

§ WireDecodable< SignatureInfo >

Definition at line 33 of file signature-info.cpp.

§ BOOST_REGEXP_MARK_COUNT_CORRECTION

const size_t ndn::BOOST_REGEXP_MARK_COUNT_CORRECTION
static
Initial value:
=
1

Definition at line 85 of file regex-component-matcher.hpp.

Referenced by ndn::RegexComponentMatcher::compile(), and ndn::RegexComponentMatcher::match().