14 #ifndef HTTPAUTHORIZATION_H 15 #define HTTPAUTHORIZATION_H 36 class EXPCL_PANDA_DOWNLOADER HTTPAuthorization :
public ReferenceCount {
42 HTTPAuthorization(
const Tokens &tokens,
const URLSpec &url,
45 virtual ~HTTPAuthorization();
47 virtual const std::string &get_mechanism()
const=0;
48 virtual bool is_valid();
50 INLINE
const std::string &get_realm()
const;
51 INLINE
const vector_string &get_domain()
const;
53 virtual std::string generate(HTTPEnum::Method method,
const std::string &request_path,
54 const std::string &username,
const std::string &body)=0;
56 static void parse_authentication_schemes(AuthenticationSchemes &schemes,
57 const std::string &field_value);
59 static std::string base64_encode(
const std::string &s);
60 static std::string base64_decode(
const std::string &s);
63 static size_t scan_quoted_or_unquoted_string(std::string &result,
64 const std::string &source,
69 vector_string _domain;
74 #endif // HAVE_OPENSSL PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A container for a URL, e.g.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
A base class for all things that want to be reference-counted.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.