Commit Graph

535 Commits

Author SHA1 Message Date
Bartel Sielski 60c50cdea2
handshake(server): Make 'create_response_with_body' function more generic
This makes using it possible when the request and response body types differ.

Signed-off-by: bartel <bartel.sielski@gmail.com>
2024-04-23 16:45:36 +02:00
Félix Lescaudey de Maneville 0fa41973b4
Add builder for additional header values (#400)
* ADd builder for additional header values

* Update client.rs

* fix: docs

* feat: add test

* fix: typo

* add

---------

Co-authored-by: n4n5 <56606507+Its-Just-Nans@users.noreply.github.com>
Co-authored-by: n4n5 <its.just.n4n5@gmail.com>
2024-02-12 20:56:15 +01:00
Alex Butler 2ee05d1080 Update 0.21.0 changelog 2023-12-12 13:10:10 +01:00
Daniel Abramov 3df40fd0f1 Update CHANGELOG.md
Fixes #398, #389.
2023-12-11 12:47:40 +01:00
Sebastian Dröge e9604ac35b Update MSRV to 1.60 and check on the CI
The code does not actually compile anymore with 1.51.

Also only run `cargo check` with 1.60 as various optional features,
tests, benchmarks actually require newer Rust versions.
2023-12-08 11:59:01 +01:00
Alexey Galakhov 85463b264e Release version 0.21.0 2023-12-07 02:03:01 +01:00
Constantin Nickel bcd7f85e65 Update `rustls` to 0.22 2023-12-05 22:24:29 +01:00
Alex Butler 9f0af2a2e3 Test that no additional flushes are called after pong flush success 2023-12-05 22:23:31 +01:00
Alex Butler 2d5b3e18de Fix auto pong responses not flushing after block
Retry pong flushes on read.
Add read_usage_auto_pong_flush scenario test
2023-12-05 22:23:31 +01:00
Alex Butler a54623ccfe Remove proposed version from changelog 2023-12-02 20:30:48 +01:00
Alex Butler 866ce20dbe Update webpki-roots to 0.26 2023-12-02 20:30:48 +01:00
Alex Butler 0f6e6517e6 Fix FrameHeader::format write & other lints 2023-12-02 00:01:17 +01:00
Alexey Galakhov fc17f7341d
Merge pull request #373 from psychon/reduce-byteorder
Reduce use of byteorder crate
2023-11-17 19:38:27 +01:00
Daniel Abramov a43bb499df
Merge pull request #386 from snapview/dependabot/cargo/http-1.0
Update http requirement from 0.2 to 1.0
2023-11-17 18:54:04 +01:00
Alexey Galakhov 08cdd76dd6
Merge pull request #387 from nickelc/deps/socket2
Replace deprecated `net2` dev dependency with `socket2`
2023-11-17 02:12:31 +01:00
Constantin Nickel 8ca9b2314c Replace deprecated `net2` dev dependency with `socket2` 2023-11-16 11:33:58 +01:00
dependabot[bot] 2867907f15
Update http requirement from 0.2 to 1.0
Updates the requirements on [http](https://github.com/hyperium/http) to permit the latest version.
- [Release notes](https://github.com/hyperium/http/releases)
- [Changelog](https://github.com/hyperium/http/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/http/compare/v0.2.0...v1.0.0)

---
updated-dependencies:
- dependency-name: http
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-16 08:04:57 +00:00
Alexey Galakhov a6cbed7bff
Merge pull request #385 from nickelc/deps/webpki-roots
Update `webpki-roots` to 0.25
2023-11-15 22:30:51 +01:00
Constantin Nickel 6c61d54ad2 Update `webpki-roots` to 0.25 2023-11-15 19:56:28 +01:00
Daniel Abramov 272d83c430 doc: clarify the meaning of config values 2023-10-29 14:09:32 +01:00
Daniel Abramov 3d9fd1e5cb
Merge pull request #383 from atouchet/cbar
Update Autobahn Test Suite page
2023-10-22 22:49:07 +02:00
Alex Touchet 614200a2fa
Update Autobahn Test Suite page 2023-10-16 19:36:40 -07:00
Daniel Abramov 8b3ecd3cc0 Update changelog 2023-09-23 14:10:53 +02:00
Daniel Abramov 722850d473 Fix incorrect metadata in Cargo.toml 2023-09-23 14:10:04 +02:00
Alexey Galakhov 219075edaa
Merge pull request #379 from snapview/CVE-2023-43669
Quick-and-dirty fix for CVE-2023-43669
2023-09-23 02:33:24 +02:00
Alexey Galakhov f0f1a06a50 Bump crate version 2023-09-23 02:16:16 +02:00
Alexey Galakhov 2e5029284b Add checking for header sanity
Co-authored-by: Daniel Abramov <inetcrack2@gmail.com>
2023-09-23 02:16:09 +02:00
Alexey Galakhov f916b332a9 Add `AttackAttempt` error variant 2023-09-22 17:48:31 +02:00
Uli Schlachter e4224ed85a Reduce use of byteorder crate
The byteorder dependency is only used in protocol::frame::frame. I
thought this dependency could easily be removed and set out to replace
the use of byteorder with equivalent std methods.

NetworkEndian is an alias for BigEndian. Converting a number like u32 to
bytes can be done via the std lib via .to_be_bytes(). The opposite
direction is from_by_bytes(). These simple things thus to not need
byteorder.

There is one place in the code where byteorder actually helps, thus this
dependency is not actually fully removed. ByteOrder::read_uint() allows
to read 1 to 8 bytes of data and returns the result as u64. Doing this
with the standard library basically requires re-implementing byteorder.
Thus, I did not do that.

Signed-off-by: Uli Schlachter <psychon@znc.in>
2023-08-18 10:35:33 +02:00
Daniel Abramov 53914c1180 Include examples so that `cargo publish` works 2023-07-22 15:36:37 +01:00
Daniel Abramov 5323559891 Bump version 2023-07-22 15:19:04 +01:00
Daniel Abramov 6e63b17b63 Update changelog 2023-07-22 15:18:14 +01:00
Daniel Abramov f2ed7aa826
Merge pull request #365 from snapview/dependabot/cargo/webpki-roots-0.24
Update webpki-roots requirement from 0.23 to 0.24
2023-07-22 16:10:14 +02:00
Daniel Abramov 8d8f0da204
Merge pull request #362 from alexheretic/config-asserts
Add assert panics for `WebSocketConfig`
2023-07-22 16:08:30 +02:00
Daniel Abramov dac07ea68b
Merge pull request #361 from alexheretic/docs++
Clarify `WebSocketConfig` docs
2023-07-22 16:07:39 +02:00
dependabot[bot] 40cd43c4f9
Update webpki-roots requirement from 0.23 to 0.24
Updates the requirements on [webpki-roots](https://github.com/rustls/webpki-roots) to permit the latest version.
- [Commits](https://github.com/rustls/webpki-roots/compare/v/0.23.1...v/0.24.0)

---
updated-dependencies:
- dependency-name: webpki-roots
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-07-07 08:51:20 +00:00
Alex Butler 8f73cf03ab update changelog 2023-06-17 23:50:18 +01:00
Alex Butler 9567cc73f3 Add panics docs 2023-06-17 23:46:04 +01:00
Alex Butler 7869f11b41 Add assert panics for WebSocketConfig 2023-06-17 23:36:46 +01:00
Alex Butler 2345e28158 Clarify WebSocketConfig docs 2023-06-17 23:30:12 +01:00
Daniel Abramov 57d9e23939
Merge pull request #360 from doylemark/master
Return correct protocol error when missing http version
2023-06-17 18:37:43 +02:00
Mark Doyle 9533c02280 return correct protocol error when missing http version 2023-06-12 13:19:13 +01:00
Daniel Abramov d7b559d724
Merge pull request #359 from mtbc/allow-IPv6-SocketAddr
remove [] enclosing IPv6 host address
2023-06-10 11:25:25 +02:00
Mark T. B. Carroll 8901dcc535
remove [] enclosing IPv6 host address 2023-06-06 13:47:09 +01:00
Alexey Galakhov 8f23e1765e
Merge pull request #358 from alexheretic/buffer-writes
Buffer writes before writing to the underlying stream
2023-06-02 22:21:34 +02:00
Alex Butler f6a610f925 Add write_flush_behaviour test 2023-05-30 19:11:04 +01:00
Alex Butler dea67d6cca Fix doc typo 2023-05-30 18:26:59 +01:00
Alex Butler 41818166cf refactor WebSocketContext new 2023-05-30 18:26:59 +01:00
Alex Butler 0cada00fb5 Refactor write_one_frame -> buffer_frame 2023-05-30 18:26:59 +01:00
Alex Butler f33bb2cb97 Ensure out_buffer written when !can_read 2023-05-30 18:26:59 +01:00