Yusuke Sasaki
828eafd400
extract the context values from `WebSocket`
6 years ago
Alexey Galakhov
62e3aff69a
Merge pull request #56 from snapview/close-as-message
...
Make `Close` part of the `Message` enum
6 years ago
Daniel Abramov
a8023f4b2d
Bump version
6 years ago
Daniel Abramov
c8c3d6290d
Make `Close` part of the `Message` enum
6 years ago
Daniel Abramov
c33f4f3895
Merge pull request #53 from resilar/patch-1
...
Upgrade rand 0.5.2 -> 0.6.4
6 years ago
resilar
e03903ed29
Upgrade rand 0.5.2 -> 0.6.4
6 years ago
Alexey Galakhov
3ce4c01b92
Version 0.6.1 released.
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
4c8d64de12
Merge pull request #48 from emschwartz/master
...
feat: impl Into<Vec<u8>> for Message
6 years ago
Evan Schwartz
da85989934
feat: impl Into<Vec<u8>> for Message
6 years ago
Alexey Galakhov
4ee884a1e8
Merge pull request #44 from Shnatsel/master
...
Add fuzzing harness and seeds
6 years ago
Alexey Galakhov
3ac854f850
Version 0.6.0 released.
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
59f8d9c402
Merge pull request #43 from snapview/devel
...
Limiting and config improvements
6 years ago
Sergey "Shnatsel" Davidoff
9f2d9d5660
Add fuzzing seeds. They were obtained via fuzzing with `cargo afl` and `cargo fuzz` seeded with unit test data for these functions, and then minifying the result with `cargo fuzz cmin`
6 years ago
Sergey "Shnatsel" Davidoff
465ba41116
Add fuzzing harness via cargo-fuzz with three distinct targets
6 years ago
Alexey Galakhov
a7e87488c4
config: make config settable at runtime
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
9b0a2e0f11
trivial: split public and private impl
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
a2e122ab9e
refactor: mask: pass mask by value
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
e6ebf5ac76
trivial: style fixes
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
d2e3602170
frame: fix partial write
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
3772aaf163
chore: introduce frame size limit
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
50d1371e52
frame: cleanup frame API
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
75aa0d54f3
refactor: parse header separately from payload
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
20242d19f7
config: protocol: add message size limiting
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
a4f885f69f
protocol: improve write responsibility
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
e4a52cde05
mask: update for actual Rust version
...
Closes #35
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
cb671e1abc
trivial: improve documentation
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
59d7012702
Merge pull request #37 from bluetech/ununsafe
...
frame: eliminate an unsafe when reading message data into the buffer
6 years ago
Ran Benita
4cfe9a2be1
frame: eliminate an unsafe when reading message data into the buffer
...
The reason for the unsafe was presumably to avoid copying or
zero-initializing. This achieves the same but using only safe functions.
Note: there is no zero-initializing here because Cursor is "trusted" to
not read from the buffer and so skips the initialization:
https://github.com/rust-lang/rust/blob/master/src/libstd/io/cursor.rs#L241
(the Take wrapper delegates to its inner).
6 years ago
Alexey Galakhov
3e02fe5351
trivial: use released input_buffer version
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
fdb1a0ed50
frame: reject bad opcodes early
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
9bd65feaeb
frame: reject frames that are too big for the RAM
...
Fixes #34 .
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
977c6e7c7a
refactor: remove transmute in favor of safe code
...
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
c0cde68999
frame: fix integer overflow
...
This is a security fix.
Fixes #33 .
Signed-off-by: Alexey Galakhov <agalakhov@snapview.de>
6 years ago
Alexey Galakhov
b93abcf900
Merge pull request #27 from snapview/websocket-config
...
Allow the configuration of `WebSocket`
6 years ago
Daniel Abramov
3a58069db2
Create helpers for config-like functions
...
As suggested by @agalakhov
6 years ago
Daniel Abramov
e1e0acd64d
Merge pull request #30 from mehcode/feature/sha1-to-sha-1
...
Switch from sha1 to sha-1
6 years ago
Daniel Abramov
fbdd412ff8
Merge branch 'master' into feature/sha1-to-sha-1
6 years ago
Daniel Abramov
1c57f0f268
Merge pull request #31 from mehcode/feature/upgrade
...
Upgrade dependency versions
6 years ago
Alexey Galakhov
82f5a2e22b
Merge pull request #29 from mehcode/feature/up-native-tls
...
Upgrade native-tls 0.1 -> 0.2
6 years ago
Ryan Leckey
93907bd70c
Upgrade dependency versions
6 years ago
Ryan Leckey
51e7ba3f39
Switch from sha1 to sha-1
6 years ago
Ryan Leckey
a496cc7e5f
Upgrade native-tls 0.1 -> 0.2
6 years ago
Alexey Galakhov
fb346ad750
Merge pull request #28 from mehcode/master
...
prepare for native-tls 0.2
6 years ago
Ryan Leckey
ef8e41f63f
prepare for native-tls 0.2
6 years ago
Daniel Abramov
715f9b0241
Bump version
7 years ago
Daniel Abramov
00303fa60c
Make the websocket configurable
7 years ago
Daniel Abramov
1f037abc34
Merge pull request #26 from tedsta/master
...
`WebSocket::write_message` only buffers one message at a time to apply back-pressure
7 years ago
Teddy DeRego
5742c822ee
WebSocket::write_message will no longer buffer unlimited messages - it will only buffer a configurable number of outbound messages. Needed for snapview/tokio-tungstenite#35 .
7 years ago
Daniel Abramov
5d5ea88b12
Merge pull request #25 from unv-annihilator/master
...
Derive Debugs
7 years ago
Sean Schwartz
66d2c15f2d
Derive Debugs
...
Deny missing debug and resolve resulting errors to satisfy:
https://rust-lang-nursery.github.io/api-guidelines/debuggability.html#all-public-types-implement-debug-c-debug
Requires updated input_buffer pushed to crates.io:
- Resolved build errors by using github version of code until new version available on crates.io
Upgrade env_logger dev-dependency to v0.5.3
- Removed unwrap call from env_logger::init() as it is no longer needed.
7 years ago