Luca Schlecker
5b1c5a9e9e
removing some boost includes, fixing version checks and further phase out boost.
2022-06-18 17:21:37 +03:00
Luca Schlecker
f3d00bbecf
replace boost::asio with standalone asio.
2022-06-18 17:21:37 +03:00
Luca Schlecker
2f87414769
replace usage of boost::iequals with utility::string_equals.
2022-06-18 17:21:37 +03:00
Michael Schreckenbauer
efee71745b
do not try to read from websocket after sending and receiving the close frame
2022-06-04 12:14:46 +02:00
Michael Schreckenbauer
65fcdea968
allow setting userdata in onaccept of websocket-connection
2022-05-27 14:06:12 +02:00
The-EDev
f2b63f23f5
Fix for issue where app.stop() blocks when a websocket is open
2022-05-20 14:14:55 +03:00
Farook Al-Sammarraie
3e6c097733
Merge branch 'master' into #421-Websockets-should-support-a-maximum-payload
2022-05-18 20:04:38 +03:00
The-EDev
4128e5c27d
further formatting
2022-05-18 12:40:11 +03:00
The-EDev
333b49bf04
Replaced do_not_destroy_
with adaptor_.shutdown_readwrite()
+
...
formatting
2022-05-18 12:28:51 +03:00
The-EDev
57c3b43ac0
Fixed small bugs in code
2022-05-16 19:14:51 +03:00
oscar.chen
a0a1925630
Pass the max payload in Connection constructor
2022-05-15 01:01:24 -07:00
oscar.chen
7164517622
use arrow not .
2022-05-14 19:10:05 -07:00
oscar.chen
89d99f6ae9
add missing commas
2022-05-14 18:46:49 -07:00
oscar.chen
a30f0f6e4f
fix wrong intializer syntax
2022-05-14 18:20:46 -07:00
oscar.chen
4daf126df0
Add websocket payload size for both app and WebsocketRule
2022-05-14 17:51:51 -07:00
The-EDev
e5fe4e6e26
Used App reference to get websocket count and signals.
...
Also fixed issue where enabling SSL prevented compilation.
2022-05-15 01:15:39 +03:00
Farook Al-Sammarraie
9f99be55e1
Merge branch 'master' into ws_close
2022-05-14 18:56:39 +03:00
oscar.chen
dc988ce27b
fix clang format
2022-05-14 14:07:51 +03:00
oscar.chen
182b1ba915
#421 add rudimentary support for websocket max payload
2022-05-14 14:07:51 +03:00
The-EDev
78c7186897
Allowed Crow class to be passed to Websocket connection object
2022-05-14 12:05:06 +03:00
The-EDev
4cdde73388
Optimized HTTP parser
...
Also (likely) fixed problem with streaming without keeping connection
alive
Also fixed problem with multipart hanging on request
Also updated TODO entries to indicate Writer
2022-02-05 18:15:19 +03:00
The-EDev
869bc53150
format
2021-12-03 07:05:10 +03:00
The-EDev
94a2f942bc
changed comment style back to the original (doxygen did not work with the new style)
2021-12-03 06:39:23 +03:00
Luca Schlecker
7e4f1494d2
improved lambda bracing by inlining only empty lambdas.
...
Signed-off-by: Luca Schlecker <luca.schlecker@hotmail.com>
2021-11-27 19:22:35 +01:00
The-EDev
03e59aa446
improved bracing rules, commented out clang-format 14 rule
2021-11-27 15:28:50 +03:00
The-EDev
7f4b7c8ff9
created new rules, used bot to enforce rules in PRs
2021-11-25 14:45:38 +03:00
The-EDev
65f8eb9e44
added macro to enforce ws spec and added 16/64 bit payload length unit tests for ws
2021-11-22 17:39:48 +03:00
The-EDev
fd6de9bc05
Added functionality to close websocket connections before the app is
...
terminated.
This is incomplete and needs more work.
2021-11-06 06:06:18 +03:00
The-EDev
85e85c3e64
allow remote IP to be accessed from websocket object
2021-11-01 23:57:21 +03:00
The-EDev
576f90a0e4
Added Base64 decoder function and Base 64 unit tests
2021-10-31 02:50:19 +03:00
Lucas David
1bb5e0ac63
+ auto to_read = static_cast<std::uint64_t>(buffer_.size());
...
~ if (remaining_length_ < to_read)
~ to_read = remaining_length_;
+ adaptor_.socket().async_read_some(boost::asio::buffer(buffer_, static_cast<std::size_t>(to_read))
- size_t to_read = buffer_.size();
~ if (remaining_length_ < to_read)
~ to_read = remaining_length_;
- adaptor_.socket().async_read_some( boost::asio::buffer(buffer_, to_read)
~ Changed 'to_read' from [std::size_t] to [std::uint64_t],
hence when 'remaining_length_' [std::uint64_t] is assigned in 'to_read' no data is lossed.
When boost::asio::buffer is created 'to_read' is casted back to [std::size_t] explicitly truncating data.
It seems to be the correct behavior to choose fixed 'network side' types.
2021-07-27 17:04:54 +02:00
Lucas David
6aa5dba579
+ buf[1] += static_cast<char>(size);
...
- buf[1] += size;
~ Warning was triggered by 'size' being std::size_t and lossing data by implicit casting to a narrower type.
This behavior seems correct, then we can explicit cast it.
2021-07-27 15:39:51 +02:00
Sfinktah Bungholio
6597feb3a8
converted all (int) to static_cast
2021-02-21 11:14:30 +11:00
The-EDev
fab2640702
Ping and Pong messages shouldn't fail with messages larger than 127 bytes anymore
...
Has the added advantage of making the code look more consistent, while sacrificing some performance (very little though)
2020-11-09 17:36:03 +03:00
The-EDev
5c7ef21211
websocket improvements
...
replaced base10 bits to base8 in comments
added send_ping and send_pong to API (users can now send them)
reset header value before every read
2020-11-09 04:41:55 +03:00
The-EDev
8dc61959f2
added method to send ping message
2020-11-05 04:10:33 +03:00
The-EDev
463917a17f
added option to have unmasked messages
2020-11-04 07:16:03 +03:00
The-EDev
777dfa31af
added documentation and illustration from RFC 6455
2020-11-04 06:20:09 +03:00
Igor Mróz
7b8b72bd11
Remove conanfile. Update mustache specification jsons. Remove compilation warnings. Update CMake version. Change test framework to Catch2.
2020-10-19 18:32:16 +02:00
SQyang
0cb9330125
Update websocket.h
2020-08-24 19:47:30 +08:00
SQyang
215b7dcf35
Update websocket.h
2020-08-13 13:18:16 +08:00
Jaeseung Ha
49bd1c2797
Merge pull request #261 from erikaldsund/fix_warning_in_websocket_h
...
Fixed warning in websocket.h: right shift count >= width of type
2017-12-25 02:29:25 +09:00
roxma
f0eb73ce8c
Fix ws read failure when using 16bit payload
...
Also should use ntohs instead of htons when read from socket.
2017-12-22 17:53:51 +08:00
Erik Åldstedt Sund
83bd8c09a0
Fixed warning in websocket.h: right shift count >= width of type
...
Fixed by static_cast-ing values from 32-bit values to 64-bit values.
2017-10-30 20:45:34 +01:00
ipknHama
2c26b6c1de
Change default settings
...
- disable crow debug mode by default
- expose `loglevel` method on `App` to change the logging level easily
- add a startup message that guides how to change the logging level
2017-09-18 02:58:53 +09:00
Jaeseung Ha
08acc7c0be
Merge branch 'master' into master
2017-09-18 00:43:42 +09:00
Jaeseung Ha
ef17b8cb9b
Merge branch 'master' into master
2017-09-17 18:01:57 +09:00
Jaeseung Ha
f0cb83df88
Merge pull request #210 from zxmarcos/master
...
Add onaccept handler to websocket rule
2017-09-17 14:17:46 +09:00
ipknHama
f35089b2aa
Add missed header file.
2017-09-17 13:47:05 +09:00
Marcos Medeiros
bea1ba3797
Add onaccept handler to websocket rule
2016-12-28 11:06:56 -02:00