0
0
mirror of https://github.com/OpenVPN/openvpn3.git synced 2024-09-20 20:13:05 +02:00
Commit Graph

30 Commits

Author SHA1 Message Date
James Yonan
ab72082bd4
Made protocol type a template parameter to TCPTransport::Link, so we can work with protocols other than TCP such as unix domain sockets. 2020-01-09 12:23:39 +02:00
James Yonan
12e4cfb4a4
Method signature changes for DCO (Data Channel Offload). 2020-01-09 12:23:39 +02:00
James Yonan
038b02fb2a
Boost dependency elimination -- final removal of Boost dependency. Asio is now included as a standalone, header-only dependency. 2020-01-09 12:23:39 +02:00
James Yonan
3ab7739fed
HTTP server:
* Fixed issue where HTTP server did not detect
  mid-session client disconnect.

* Implement parent_handoff (for proxies).

* Improved handling of residual content, allowing
  HTTP 1.1 pipelining to be supported.
2020-01-09 12:23:38 +02:00
James Yonan
8cabba1665
OPENVPN_HTTP_SERV_RC may be defined to override WS::Server::Listener::Client RC root class. 2020-01-09 12:23:38 +02:00
James Yonan
e608ee6db4
Renamed boost::intrusive_ptr<T> usage to RCPtr<T>. 2020-01-09 12:23:38 +02:00
James Yonan
686968992d
Moved array_size() function to its own header file. 2020-01-09 12:23:38 +02:00
James Yonan
47ffbe7401
C++11 : rename NULL to nullptr 2020-01-09 12:23:37 +02:00
James Yonan
8dbf685a25
Extended WS::Client to allow the use of any OpenVPN client transport driver for the HTTP/S transport layer. This enables use of HTTP CONNECT and OBFS proxy drivers. To enable, set the WS::Client::Config::transcli member to any TransportClientFactory instance. 2020-01-09 12:23:37 +02:00
James Yonan
c5d3fdad87
Added pgproxy, an HTTP proxy supporting both CONNECT and OBFS. 2020-01-09 12:23:37 +02:00
James Yonan
84b234b68b
Refactored web services classes (openvpn/ws) to support HTTP/S servers. 2020-01-09 12:23:37 +02:00
James Yonan
16a69d0325
In HTTPCore (httpcli.hpp), factor out code into httpcommon.hpp that is common to both HTTP clients and servers, so upcoming HTTP server implementation can leverage on the same code currently used by the client. 2020-01-09 12:23:36 +02:00
James Yonan
80c63cd93e
Refactored WS::Client status codes from WS::Client::E_x to WS::Client::Status::E_x. 2020-01-09 12:23:36 +02:00
James Yonan
1aebd88dc7
Factored out web services get_content_length() method into openvpn/ws/httpcommon.hpp which is intended for code that is common between HTTP clients and servers. 2020-01-09 12:23:36 +02:00
James Yonan
45b5d3bf69
Refactored WS::HTTPCore::ChunkedHelper into its own source file in preparation for HTTP server implementation. 2020-01-09 12:23:36 +02:00
James Yonan
937082b80d
Added minimal Content-Encoding support to HTTP client. 2020-01-09 12:23:35 +02:00
James Yonan
5d2a05cf8e
In HTTP client, added the ability to separately specify:
* hostname for TCP transport
* hostname for CN verification
* hostname sent as HTTP Host header
2020-01-09 12:23:35 +02:00
James Yonan
3175a9c9dd
Extended WS::Client:
* Added WS::Client:error_str() for formatting
  error codes.

* Added reset() method.

* When calling start_request(), set ready=false immediately
  to avoid race.

* Added http_headers_sent() and http_keepalive_close()
  callbacks.

* Added HTTPDelegate class.
2020-01-09 12:23:35 +02:00
James Yonan
93f10d74e2
Updated web services client classes to use SSLConfigAPI, and to support PolarSSL or OpenSSL. 2020-01-09 12:23:35 +02:00
James Yonan
51fbf93a93
Updated copyright to 2015. 2020-01-09 12:23:34 +02:00
James Yonan
9b0dbba02c
Remove AGPL licensing for openvpn/ws, as these sources will be left proprietary for now. 2020-01-09 12:23:34 +02:00
James Yonan
82012b7e66
Added some comments (overview) to openvpn/ws/httpcli.hpp. 2020-01-09 12:23:34 +02:00
James Yonan
9df14bb61f
Added web services client. 2020-01-09 12:23:34 +02:00
James Yonan
075143f23f
copyright: updated to 2017
Signed-off-by: James Yonan <james@openvpn.net>
2020-01-09 12:23:33 +02:00
James Yonan
5ab2e44e25
license : this branch (common) is proprietary, so remove all GPL headers.
Signed-off-by: James Yonan <james@openvpn.net>
2020-01-09 12:23:33 +02:00
James Yonan
0c46a7a7ec
copyright : updated to 2016 2020-01-09 12:23:33 +02:00
James Yonan
f6f40e24cd
Added AGPL license header to HTTP, Java, and common code. 2020-01-09 12:23:33 +02:00
James Yonan
1c8052be45
Renamed types.hpp to size.hpp since it now only defines size_t and ssize_t. 2020-01-09 12:23:33 +02:00
James Yonan
7194db16c2
In HTTPCore (httpcli.hpp), factor out code into httpcommon.hpp that is common to both HTTP clients and servers, so upcoming HTTP server implementation can leverage on the same code currently used by the client. 2020-01-09 12:23:32 +02:00
James Yonan
06fa9d2f21
Refactored WS::HTTPCore::ChunkedHelper into its own source file in preparation for HTTP server implementation. 2020-01-09 12:23:32 +02:00