8 #ifndef BOTAN_NAME_CONSTRAINT_H_
9 #define BOTAN_NAME_CONSTRAINT_H_
11 #include <botan/asn1_obj.h>
19 class X509_Certificate;
58 const std::string&
type()
const {
return m_type; }
76 bool matches_dns(
const std::string&)
const;
77 bool matches_dn(
const std::string&)
const;
78 bool matches_ip(
const std::string&)
const;
81 std::ostream&
operator<<(std::ostream& os,
const GeneralName& gn);
106 : m_base(base), m_minimum(min), m_maximum(max)
140 std::ostream&
operator<<(std::ostream& os,
const GeneralSubtree& gs);
161 std::vector<GeneralSubtree>&& excluded_subtrees)
162 : m_permitted_subtrees(permitted_subtrees), m_excluded_subtrees(excluded_subtrees)
168 const std::vector<GeneralSubtree>&
permitted()
const {
return m_permitted_subtrees; }
173 const std::vector<GeneralSubtree>&
excluded()
const {
return m_excluded_subtrees; }
176 std::vector<GeneralSubtree> m_permitted_subtrees;
177 std::vector<GeneralSubtree> m_excluded_subtrees;
int operator<<(int fd, Pipe &pipe)
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
const std::vector< GeneralSubtree > & permitted() const
const std::vector< GeneralSubtree > & excluded() const
NameConstraints(std::vector< GeneralSubtree > &&permitted_subtrees, std::vector< GeneralSubtree > &&excluded_subtrees)
bool matches(DataSource &source, const std::string &extra, size_t search_range)
A single Name Constraint.
const std::string & name() const
const GeneralName & base() const
const std::string & type() const
GeneralSubtree(const GeneralName &base, size_t min, size_t max)