Kea 2.7.6
|
Classes | |
struct | BasicAuthHttpHeaderContext |
Represents basic HTTP authentication header. More... | |
class | BasicHttpAuth |
Represents a basic HTTP authentication. More... | |
class | BasicHttpAuthClient |
Basic HTTP authentication client configuration. More... | |
class | BasicHttpAuthConfig |
Basic HTTP authentication configuration. More... | |
struct | CallSetGenericBody |
Encapsulates the boolean value indicating if the HttpResponse constructor should call its setGenericBody method during construction. More... | |
class | CfgHttpHeader |
Config HTTP header. More... | |
class | HostHttpHeader |
Represents HTTP Host header. More... | |
class | HttpAuthConfig |
Base type of HTTP authentication configuration. More... | |
class | HttpClient |
HTTP client class. More... | |
class | HttpClientError |
A generic error raised by the HttpClient class. More... | |
class | HttpClientImpl |
HttpClient implementation. More... | |
class | HttpConnection |
Accepts and handles a single HTTP connection. More... | |
class | HttpConnectionError |
Generic error reported within HttpConnection class. More... | |
class | HttpConnectionPool |
Pool of active HTTP connections. More... | |
class | HttpDateTime |
This class parses and generates time values used in HTTP. More... | |
class | HttpHeader |
Represents HTTP header including a header name and value. More... | |
struct | HttpHeaderContext |
HTTP header context. More... | |
class | HttpListener |
HTTP listener. More... | |
class | HttpListenerError |
A generic error raised by the HttpListener class. More... | |
class | HttpListenerImpl |
Implementation of the HttpListener. More... | |
class | HttpMessage |
Base class for HttpRequest and HttpResponse. More... | |
class | HttpMessageError |
Generic exception thrown by HttpMessage class. More... | |
class | HttpMessageNonExistingHeader |
Exception thrown when attempt is made to retrieve a non-existing header. More... | |
class | HttpMessageParserBase |
Base class for the HTTP message parsers. More... | |
class | HttpParseError |
Exception thrown when an error during parsing HTTP message has occurred. More... | |
class | HttpRequest |
Represents HTTP request message. More... | |
struct | HttpRequestContext |
HTTP request context. More... | |
class | HttpRequestError |
Generic exception thrown by HttpRequest class. More... | |
class | HttpRequestJsonError |
Exception thrown when body of the HTTP message is not JSON. More... | |
class | HttpRequestParser |
A generic parser for HTTP requests. More... | |
class | HttpResponse |
Represents HTTP response message. More... | |
struct | HttpResponseContext |
HTTP response context. More... | |
class | HttpResponseCreator |
Specifies an interface for classes creating HTTP responses from HTTP requests. More... | |
class | HttpResponseCreatorFactory |
Specifies the interface for implementing custom factory classes used to create instances of HttpResponseCreator. More... | |
class | HttpResponseError |
Generic exception thrown by HttpResponse class. More... | |
class | HttpResponseJson |
Represents HTTP response with JSON content. More... | |
class | HttpResponseJsonError |
Exception thrown when body of the HTTP message is not JSON. More... | |
class | HttpResponseParser |
A generic parser for HTTP responses. More... | |
class | HttpTimeConversionError |
Exception thrown when there is an error during time conversion. More... | |
struct | HttpVersion |
HTTP protocol version. More... | |
class | PostHttpRequest |
Represents HTTP POST request. More... | |
class | PostHttpRequestJson |
Represents HTTP POST request with JSON body. More... | |
class | Url |
Represents an URL. More... | |
Typedefs | |
typedef std::list< BasicHttpAuthClient > | BasicHttpAuthClientList |
Type of basic HTTP authentication client configuration list. | |
typedef boost::shared_ptr< BasicHttpAuthConfig > | BasicHttpAuthConfigPtr |
Type of shared pointers to basic HTTP authentication configuration. | |
typedef std::unordered_map< std::string, std::string > | BasicHttpAuthMap |
Type of basic HTTP authentication credential and user id map, e.g. | |
typedef boost::shared_ptr< BasicHttpAuth > | BasicHttpAuthPtr |
Type of pointers to basic HTTP authentication objects. | |
typedef std::vector< CfgHttpHeader > | CfgHttpHeaders |
Collection of config HTTP headers. | |
typedef boost::shared_ptr< const HttpListener > | ConstHttpListenerPtr |
Pointer to the const HttpListener. | |
typedef boost::shared_ptr< const HttpResponse > | ConstHttpResponsePtr |
Pointer to the const HttpResponse object. | |
typedef boost::shared_ptr< const PostHttpRequest > | ConstPostHttpRequestPtr |
Pointer to const PostHttpRequest. | |
typedef boost::shared_ptr< HostHttpHeader > | HostHttpHeaderPtr |
Pointer to the HTTP host header. | |
typedef asiolink::TCPAcceptor< HttpAcceptorCallback > | HttpAcceptor |
Type of the TCP acceptor used in this library. | |
typedef std::function< void(const boost::system::error_code &)> | HttpAcceptorCallback |
Type of the callback for the TCP acceptor used in this library. | |
typedef boost::shared_ptr< HttpAcceptor > | HttpAcceptorPtr |
Type of shared pointer to TCP acceptors. | |
typedef boost::shared_ptr< HttpAuthConfig > | HttpAuthConfigPtr |
Type of shared pointers to HTTP authentication configuration. | |
typedef boost::shared_ptr< HttpClient > | HttpClientPtr |
Defines a pointer to an HttpClient instance. | |
typedef std::shared_ptr< HttpConnectionPool > | HttpConnectionPoolPtr |
Pointer to the HttpConnectionPool. | |
typedef boost::shared_ptr< HttpConnection > | HttpConnectionPtr |
Pointer to the HttpConnection. | |
typedef std::vector< HttpHeaderContext > | HttpHeaderContexts |
Collection of HTTP header contexts. | |
typedef boost::shared_ptr< HttpHeader > | HttpHeaderPtr |
Pointer to the HttpHeader class. | |
typedef boost::shared_ptr< HttpListener > | HttpListenerPtr |
Pointer to the HttpListener. | |
typedef boost::shared_ptr< HttpRequestContext > | HttpRequestContextPtr |
Pointer to the HttpRequestContext. | |
typedef boost::shared_ptr< HttpRequestParser > | HttpRequestParserPtr |
Pointer to the HttpRequestParser. | |
typedef boost::shared_ptr< HttpRequest > | HttpRequestPtr |
Pointer to the HttpRequest object. | |
typedef boost::shared_ptr< HttpResponseContext > | HttpResponseContextPtr |
Pointer to the HttpResponseContext. | |
typedef boost::shared_ptr< HttpResponseCreatorFactory > | HttpResponseCreatorFactoryPtr |
Pointer to the HttpResponseCreatorFactory. | |
typedef boost::shared_ptr< HttpResponseCreator > | HttpResponseCreatorPtr |
Pointer to the HttpResponseCreator object. | |
typedef boost::shared_ptr< HttpResponseJson > | HttpResponseJsonPtr |
Pointer to the HttpResponseJson object. | |
typedef boost::shared_ptr< HttpResponseParser > | HttpResponseParserPtr |
Pointer to the HttpResponseParser. | |
typedef boost::shared_ptr< HttpResponse > | HttpResponsePtr |
Pointer to the HttpResponse object. | |
typedef asiolink::TLSAcceptor< HttpAcceptorCallback > | HttpsAcceptor |
Type of the TLS acceptor used in this library. | |
typedef boost::shared_ptr< HttpsAcceptor > | HttpsAcceptorPtr |
Type of shared pointer to TLS acceptors. | |
typedef boost::shared_ptr< PostHttpRequestJson > | PostHttpRequestJsonPtr |
Pointer to PostHttpRequestJson. | |
typedef boost::shared_ptr< PostHttpRequest > | PostHttpRequestPtr |
Pointer to PostHttpRequest. | |
Enumerations | |
enum class | HttpStatusCode : std::uint16_t { OK = 200 , CREATED = 201 , ACCEPTED = 202 , NO_CONTENT = 204 , MULTIPLE_CHOICES = 300 , MOVED_PERMANENTLY = 301 , MOVED_TEMPORARILY = 302 , NOT_MODIFIED = 304 , BAD_REQUEST = 400 , UNAUTHORIZED = 401 , FORBIDDEN = 403 , NOT_FOUND = 404 , REQUEST_TIMEOUT = 408 , INTERNAL_SERVER_ERROR = 500 , NOT_IMPLEMENTED = 501 , BAD_GATEWAY = 502 , SERVICE_UNAVAILABLE = 503 } |
HTTP status codes (cf RFC 2068) More... | |
Functions | |
ElementPtr | CfgHttpHeaderstoElement (const CfgHttpHeaders &headers) |
Unparse config HTTP headers. | |
template<typename HTTP_MSG > | |
void | copyHttpHeaders (const CfgHttpHeaders &headers, const HTTP_MSG &message) |
Copy config HTTP headers to message. | |
CfgHttpHeaders | parseCfgHttpHeaders (const isc::data::ConstElementPtr &config) |
Parse config HTTP headers. | |
typedef std::list<BasicHttpAuthClient> isc::http::BasicHttpAuthClientList |
Type of basic HTTP authentication client configuration list.
Definition at line 114 of file basic_auth_config.h.
typedef boost::shared_ptr<BasicHttpAuthConfig> isc::http::BasicHttpAuthConfigPtr |
Type of shared pointers to basic HTTP authentication configuration.
Definition at line 199 of file basic_auth_config.h.
typedef std::unordered_map<std::string, std::string> isc::http::BasicHttpAuthMap |
Type of basic HTTP authentication credential and user id map, e.g.
map["am9obmRvZTpzZWNyZXQx"] = "johndoe".
The map is used to verify a received credential: if it is not in it the authentication fails, if it is in it the user id is logged.
Definition at line 23 of file basic_auth_config.h.
typedef boost::shared_ptr<BasicHttpAuth> isc::http::BasicHttpAuthPtr |
Type of pointers to basic HTTP authentication objects.
Definition at line 70 of file basic_auth.h.
typedef std::vector<CfgHttpHeader> isc::http::CfgHttpHeaders |
Collection of config HTTP headers.
Definition at line 47 of file cfg_http_header.h.
typedef boost::shared_ptr<const HttpListener> isc::http::ConstHttpListenerPtr |
Pointer to the const HttpListener.
Definition at line 156 of file listener.h.
typedef boost::shared_ptr<const HttpResponse> isc::http::ConstHttpResponsePtr |
Pointer to the const HttpResponse object.
Definition at line 84 of file response.h.
typedef boost::shared_ptr<const PostHttpRequest> isc::http::ConstPostHttpRequestPtr |
Pointer to const PostHttpRequest.
Definition at line 21 of file post_request.h.
typedef boost::shared_ptr<HostHttpHeader> isc::http::HostHttpHeaderPtr |
Pointer to the HTTP host header.
Definition at line 81 of file http_header.h.
Type of the TCP acceptor used in this library.
Definition at line 23 of file http_acceptor.h.
typedef std::function<void(const boost::system::error_code&)> isc::http::HttpAcceptorCallback |
Type of the callback for the TCP acceptor used in this library.
Definition at line 20 of file http_acceptor.h.
typedef boost::shared_ptr<HttpAcceptor> isc::http::HttpAcceptorPtr |
Type of shared pointer to TCP acceptors.
Definition at line 31 of file http_acceptor.h.
typedef boost::shared_ptr<HttpAuthConfig> isc::http::HttpAuthConfigPtr |
Type of shared pointers to HTTP authentication configuration.
Definition at line 97 of file auth_config.h.
typedef boost::shared_ptr<HttpClient> isc::http::HttpClientPtr |
Defines a pointer to an HttpClient instance.
typedef std::shared_ptr<HttpConnectionPool> isc::http::HttpConnectionPoolPtr |
Pointer to the HttpConnectionPool.
Definition at line 75 of file connection_pool.h.
typedef boost::shared_ptr<HttpConnection> isc::http::HttpConnectionPtr |
Pointer to the HttpConnection.
Definition at line 41 of file connection.h.
typedef std::vector<HttpHeaderContext> isc::http::HttpHeaderContexts |
Collection of HTTP header contexts.
Definition at line 51 of file header_context.h.
typedef boost::shared_ptr<HttpHeader> isc::http::HttpHeaderPtr |
Pointer to the HttpHeader
class.
Definition at line 65 of file http_header.h.
typedef boost::shared_ptr<HttpListener> isc::http::HttpListenerPtr |
Pointer to the HttpListener.
Definition at line 153 of file listener.h.
typedef boost::shared_ptr<HttpRequestContext> isc::http::HttpRequestContextPtr |
Pointer to the HttpRequestContext.
Definition at line 38 of file request_context.h.
typedef boost::shared_ptr<HttpRequestParser> isc::http::HttpRequestParserPtr |
Pointer to the HttpRequestParser.
Definition at line 20 of file request_parser.h.
typedef boost::shared_ptr<HttpRequest> isc::http::HttpRequestPtr |
Pointer to the HttpRequest object.
typedef boost::shared_ptr<HttpResponseContext> isc::http::HttpResponseContextPtr |
Pointer to the HttpResponseContext.
Definition at line 38 of file response_context.h.
typedef boost::shared_ptr<HttpResponseCreatorFactory> isc::http::HttpResponseCreatorFactoryPtr |
Pointer to the HttpResponseCreatorFactory.
Definition at line 54 of file response_creator_factory.h.
typedef boost::shared_ptr<HttpResponseCreator> isc::http::HttpResponseCreatorPtr |
Pointer to the HttpResponseCreator object.
Definition at line 20 of file response_creator.h.
typedef boost::shared_ptr<HttpResponseJson> isc::http::HttpResponseJsonPtr |
Pointer to the HttpResponseJson object.
Definition at line 27 of file response_json.h.
typedef boost::shared_ptr<HttpResponseParser> isc::http::HttpResponseParserPtr |
Pointer to the HttpResponseParser.
Definition at line 20 of file response_parser.h.
typedef boost::shared_ptr<HttpResponse> isc::http::HttpResponsePtr |
Pointer to the HttpResponse object.
Definition at line 81 of file response.h.
Type of the TLS acceptor used in this library.
Definition at line 28 of file http_acceptor.h.
typedef boost::shared_ptr<HttpsAcceptor> isc::http::HttpsAcceptorPtr |
Type of shared pointer to TLS acceptors.
Definition at line 34 of file http_acceptor.h.
typedef boost::shared_ptr<PostHttpRequestJson> isc::http::PostHttpRequestJsonPtr |
Pointer to PostHttpRequestJson.
Definition at line 29 of file post_request_json.h.
typedef boost::shared_ptr<PostHttpRequest> isc::http::PostHttpRequestPtr |
Pointer to PostHttpRequest.
Definition at line 19 of file post_request.h.
|
strong |
HTTP status codes (cf RFC 2068)
Definition at line 30 of file response.h.
isc::data::ElementPtr isc::http::CfgHttpHeaderstoElement | ( | const CfgHttpHeaders & | headers | ) |
Unparse config HTTP headers.
headers | Config HTTP headers. |
Definition at line 30 of file cfg_http_header.cc.
References isc::data::Element::createList().
Referenced by isc::config::HttpCommandConfig::toElement().
void isc::http::copyHttpHeaders | ( | const CfgHttpHeaders & | headers, |
const HTTP_MSG & | message ) |
Copy config HTTP headers to message.
HTTP_MSG | Either HttpRequest or HttpResponse. |
headers | Config HTTP headers. |
message | HTTP_MSG target object. |
Definition at line 55 of file cfg_http_header.h.
CfgHttpHeaders isc::http::parseCfgHttpHeaders | ( | const isc::data::ConstElementPtr & | config | ) |
Parse config HTTP headers.
config | Element holding the HTTP headers configuration. |
DhcpConfigError | when the configuration is invalid. |
Definition at line 81 of file cfg_http_header.cc.
References isc_throw, and isc::data::Element::list.
Referenced by isc::config::HttpCommandConfig::HttpCommandConfig().
isc::log::Logger isc::http::auth_logger | ( | "auth" | ) |
Defines the logger used by the HTTP authentication.
Define the HTTP authentication logger.
Definition at line 18 of file auth_log.h.
Referenced by isc::http::BasicHttpAuthConfig::checkAuth().
|
extern |
Definition at line 12 of file http_messages.h.
Referenced by isc::http::HttpConnection::socketReadCallback().
|
extern |
Definition at line 13 of file http_messages.h.
Referenced by isc::http::HttpConnection::socketReadCallback().
|
extern |
Definition at line 14 of file http_messages.h.
|
extern |
Definition at line 15 of file http_messages.h.
|
extern |
Definition at line 16 of file http_messages.h.
Referenced by isc::http::HttpClientImpl::HttpClientImpl().
|
extern |
Definition at line 17 of file http_messages.h.
|
extern |
Definition at line 11 of file auth_messages.h.
Referenced by isc::http::BasicHttpAuthConfig::checkAuth().
|
extern |
Definition at line 12 of file auth_messages.h.
Referenced by isc::http::BasicHttpAuthConfig::checkAuth().
|
extern |
Definition at line 14 of file auth_messages.h.
Referenced by isc::http::BasicHttpAuthConfig::checkAuth().
|
extern |
Definition at line 13 of file auth_messages.h.
Referenced by isc::http::BasicHttpAuthConfig::checkAuth().
|
extern |
Definition at line 18 of file http_messages.h.
Referenced by isc::http::HttpConnection::socketReadCallback().
|
extern |
Definition at line 19 of file http_messages.h.
Referenced by isc::http::HttpConnection::socketReadCallback().
|
extern |
Definition at line 20 of file http_messages.h.
|
extern |
Definition at line 21 of file http_messages.h.
|
extern |
Definition at line 22 of file http_messages.h.
Referenced by isc::http::HttpConnection::requestTimeoutCallback().
|
extern |
Definition at line 23 of file http_messages.h.
|
extern |
Definition at line 24 of file http_messages.h.
Referenced by isc::http::HttpConnection::handshakeCallback().
|
extern |
Definition at line 25 of file http_messages.h.
Referenced by isc::http::HttpConnection::acceptorCallback().
|
extern |
Definition at line 26 of file http_messages.h.
Referenced by isc::http::HttpConnection::shutdownConnection().
|
extern |
Definition at line 27 of file http_messages.h.
Referenced by isc::http::HttpConnection::shutdownConnection().
|
extern |
Definition at line 28 of file http_messages.h.
Referenced by isc::http::HttpConnection::stopThisConnection().
|
extern |
Definition at line 29 of file http_messages.h.
Referenced by isc::http::HttpConnection::stopThisConnection().
|
extern |
Definition at line 30 of file http_messages.h.
Referenced by isc::http::HttpConnection::clearWatchSocket().
|
extern |
Definition at line 31 of file http_messages.h.
Referenced by isc::http::HttpConnection::closeWatchSocket().
|
extern |
Definition at line 32 of file http_messages.h.
Referenced by isc::http::HttpConnection::markWatchSocketReady().
|
extern |
Definition at line 33 of file http_messages.h.
Referenced by isc::http::HttpConnection::socketReadCallback().
|
extern |
Definition at line 34 of file http_messages.h.
Referenced by isc::http::HttpConnection::idleTimeoutCallback().
isc::log::Logger isc::http::http_logger | ( | "http" | ) |
Defines the logger used within libkea-http library.
Define the logger used within libkea-http library.
Definition at line 18 of file http_log.h.
Referenced by isc::http::HttpClientImpl::HttpClientImpl(), isc::http::HttpConnection::acceptorCallback(), isc::http::HttpConnection::clearWatchSocket(), isc::http::HttpConnection::closeWatchSocket(), isc::http::HttpConnection::handshakeCallback(), isc::http::HttpConnection::idleTimeoutCallback(), isc::http::HttpConnection::markWatchSocketReady(), isc::http::HttpConnection::requestTimeoutCallback(), isc::http::HttpConnection::shutdownConnection(), isc::http::HttpConnection::socketReadCallback(), and isc::http::HttpConnection::stopThisConnection().
|
extern |
Definition at line 35 of file http_messages.h.
|
extern |
Definition at line 36 of file http_messages.h.
Referenced by isc::http::HttpConnection::acceptorCallback().
|
extern |
Definition at line 37 of file http_messages.h.
|
extern |
Definition at line 38 of file http_messages.h.
|
extern |
Definition at line 39 of file http_messages.h.
Referenced by isc::http::HttpConnection::socketReadCallback().
|
extern |
Definition at line 40 of file http_messages.h.
Referenced by isc::http::HttpConnection::socketReadCallback().
|
extern |
Definition at line 11 of file http_messages.h.
Referenced by isc::http::HttpConnection::handshakeCallback().