Commit graph

188 commits

Author SHA1 Message Date
eidheim
6185e89e25 Fixes #270 : compilation error when using gcc4.8 2019-07-10 18:02:40 +02:00
eidheim
fc43fc362d Cleanup of include guards 2019-06-25 11:56:21 +02:00
eidheim
a743915d72 Made use of clang's Thread Safety Analysis 2019-06-25 11:29:36 +02:00
eidheim
e75f162d8b Server: improved chunked transfer code 2019-06-23 20:28:46 +02:00
eidheim
31e6819b42 Added SimpleWeb::error, and simplified request size checks on server 2019-06-23 20:27:54 +02:00
eidheim
b1d9476ff1 Client: added support for server-sent events, and improved the chunked transfer code. Also some cleanup of especially the client code, and added a few additional tests. 2019-06-23 12:41:32 +02:00
eidheim
3fcf628657 Minor cleanup in send_from_queue 2019-06-03 12:12:33 +02:00
eidheim
9ca86827d9 Unlocks send_queue_lock before calling callbacks in case send_from_queue is invoked in callbacks 2019-05-28 13:07:20 +02:00
eidheim
514a135e0c Improved set_timeout(): no longer keeps connection alive longer than necessary. 2019-05-27 21:13:28 +02:00
eidheim
1b5f062678 New asio: removed use of strand, and fixed steady_timer constructor call 2019-05-22 14:00:06 +02:00
eidheim
44c2f733dc New asio api: removed unnecessary SimpleWeb::timer_expires_after 2019-05-20 18:39:54 +02:00
eidheim
5087f5d3df Added support for new asio api 2019-04-10 11:07:33 +02:00
eidheim
c14705c62b Replaced unique_lock with lock_guard where possible 2019-03-08 12:54:56 +01:00
eidheim
e9877639b2 Fixes #255: Made regex_orderable::str public 2019-03-05 10:00:38 +01:00
Frachop
e70a3c40a3 make SimpleWeb::Server::Request methods const 2019-02-12 23:54:36 +01:00
eidheim
5e8b99c02a Server now accepts IPv6 connections when Config::address is empty 2019-01-10 13:12:26 +01:00
eidheim
b7e5a37da4 Removed possibly unnecessary is_tcp_fast_open_supported-function 2019-01-10 12:57:38 +01:00
gavin.smith@coralbay.tv
0eb6269c70 Linux server-side TFO: Clean-up upon code review 2019-01-03 22:06:59 +00:00
gavin.smith@coralbay.tv
4d7f3729c3 Fixed compiler error. 2018-12-30 00:40:42 +00:00
gavin.smith@coralbay.tv
4328286e32 Fixed compiler error. 2018-12-30 00:33:32 +00:00
gavin.smith@coralbay.tv
7d43617993 Added support for TCP Fast Open in server when using Linux. 2018-12-30 00:25:11 +00:00
eidheim
cfe98038ba Removed use of asio::socket::close due to segmentation fault when Config::thread_pool_size was larger than 1. See #239. 2018-09-21 09:24:19 +02:00
eidheim
56b1df1ee5 Moved SimpleWeb::string_view to utility.hpp, and made use of string_view in Server::Response::write 2018-07-12 08:43:07 +02:00
eidheim
0ae69bffb1 All handlers in send queue is now called on error 2018-07-11 08:41:33 +02:00
eidheim
c5cfa5b86c Added underscore on constructor parameters that are moved 2018-07-10 17:29:27 +02:00
eidheim
cc234506b1 Completed support for multiple sequential Server::Response::send operations 2018-07-10 12:39:15 +02:00
Alex Fraser
6b91839cb6 Allow calling Response::send multiple times: copy the buffer before async_write 2018-06-03 12:10:18 +02:00
eidheim
d59b7c234c Optimized string() functions 2018-06-02 20:21:52 +02:00
eidheim
f52c8a020b Cleanup of start and its related functions. Also removed unused lambda captures. 2018-05-05 10:05:11 +02:00
Thomas Karlsson
3ba786f585 Splitted the start function into a two in order to access the bound port
This is relevant if binding on a random free port (0) and since start never
returns... we need a split function to safely get it
2018-04-19 15:36:38 +02:00
Addy
aa030950bb removed unused variable; 2017-12-21 14:49:57 -05:00
eidheim
b6261bfc31 Fixes #169: time point when a request header is read is now stored in Server::Request::header_read_time 2017-11-25 20:40:40 +01:00
eidheim
0c8da107a6 Rename ServerBase::read_request_and_content to ServerBase::read, and ServerBase::write_response to ServerBase::write 2017-11-19 18:03:28 +01:00
eidheim
101a471ca9 Fixes #173: added server support for chunked transfer encoded requests 2017-11-19 18:03:28 +01:00
eidheim
61847f3443 Made Request::remote_endpoint public 2017-11-07 22:17:15 +01:00
eidheim
6e0a1ec9e8 Fixes issue mentioned in #164: remote endpoint address and port was not correctly set. Request::remote_endpoint_address and Request::remote_endpoint_port are now functions instead of variables in order to reduce unnecessary instructions. 2017-11-05 18:48:21 +01:00
eidheim
bc4c49134d Removed unnecessary cstddef includes 2017-09-30 12:08:53 +02:00
knowledge4igor
2cfaa0e2a0 Mini refactoring: using std::size_t and std::numeric_limits 2017-09-25 23:33:31 +03:00
eidheim
0db33e72e5 Merge branch 'master' of https://github.com/tylawin/Simple-Web-Server 2017-09-25 10:31:23 +02:00
eidheim
69f945f686 Fixes #155: added max streambuf config items to limit large requests/responses if needed 2017-09-25 09:58:50 +02:00
tylawin
cf08fb4cee fix unused variable warning 2017-09-24 21:51:19 -06:00
knowledge4igor
3ab6cd8a39 Change 'typedef' constructions to type aliases 2017-09-05 01:32:21 +03:00
eidheim
f7ddeeda82 Completed PR #153: using steady timer instead of deadline timer to remove boost dependency when using standalone asio 2017-08-29 09:29:23 +02:00
Breeze Chen
28803d81be Removed dependency of boost::deadline_timer if USE_STANDALONE_ASIO is defined. 2017-08-29 11:19:52 +08:00
eidheim
ea2b0f4a80 Minor comment change to string() functions 2017-08-01 07:58:19 +02:00
eidheim
7c2f714949 noexcept cleanup 2017-07-22 13:33:32 +02:00
eidheim
7dd2d2108a Added noexcept 2017-07-22 12:50:40 +02:00
eidheim
474fab90f3 Renamed ScopesContinue to ScopeRunner, and some related cleanup 2017-07-20 17:21:19 +02:00
eidheim
70e8c3104c Renamed ContinueScopes to ScopesContinue 2017-07-20 11:31:58 +02:00
eidheim
35f835a67b Cancel handlers feature: replaced readers-writer lock with a spinlock implementation 2017-07-20 10:04:05 +02:00