Panda3D
Loading...
Searching...
No Matches
httpBasicAuthorization.h
Go to the documentation of this file.
1/**
2 * PANDA 3D SOFTWARE
3 * Copyright (c) Carnegie Mellon University. All rights reserved.
4 *
5 * All use of this software is subject to the terms of the revised BSD
6 * license. You should have received a copy of this license along
7 * with this source code in a file named "LICENSE."
8 *
9 * @file httpBasicAuthorization.h
10 * @author drose
11 * @date 2002-10-22
12 */
13
14#ifndef HTTPBASICAUTHORIZATION_H
15#define HTTPBASICAUTHORIZATION_H
16
17#include "pandabase.h"
18
19// This module requires OpenSSL to compile, even though it doesn't actually
20// use any OpenSSL code, because it is a support module for HTTPChannel, which
21// *does* use OpenSSL code.
22
23#ifdef HAVE_OPENSSL
24
25#include "httpAuthorization.h"
26
27/**
28 * Implements the "Basic" type of HTTP authorization. This authorization
29 * sends usernames and passwords over the net in cleartext, so it's not much
30 * in the way of security, but it's easy to implement and therefore widely
31 * supported.
32 */
33class HTTPBasicAuthorization : public HTTPAuthorization {
34public:
35 HTTPBasicAuthorization(const Tokens &tokens, const URLSpec &url,
36 bool is_proxy);
37 virtual ~HTTPBasicAuthorization();
38
39 virtual const std::string &get_mechanism() const;
40 virtual std::string generate(HTTPEnum::Method method, const std::string &request_path,
41 const std::string &username, const std::string &body);
42
43private:
44 static const std::string _mechanism;
45};
46
48
49#endif // HAVE_OPENSSL
50
51#endif
A container for a URL, e.g.
Definition urlSpec.h:28
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.