mirror of
https://github.com/MercuryWorkshop/epoxy-tls.git
synced 2025-05-13 06:20:02 -04:00
fix crates.io fastwebsockets integration
This commit is contained in:
parent
434e9e72ea
commit
87b39f45dc
3 changed files with 18 additions and 9 deletions
10
Cargo.lock
generated
10
Cargo.lock
generated
|
@ -1466,9 +1466,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rustls-webpki"
|
name = "rustls-webpki"
|
||||||
version = "0.102.5"
|
version = "0.102.6"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "f9a6fccd794a42c2c105b513a2f62bc3fd8f3ba57a4593677ceb0bd035164d78"
|
checksum = "8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ring",
|
"ring",
|
||||||
"rustls-pki-types",
|
"rustls-pki-types",
|
||||||
|
@ -2255,16 +2255,16 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "winnow"
|
name = "winnow"
|
||||||
version = "0.6.14"
|
version = "0.6.15"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "374ec40a2d767a3c1b4972d9475ecd557356637be906f2cb3f7fe17a6eb5e22f"
|
checksum = "557404e450152cd6795bb558bca69e43c585055f4606e3bcae5894fc6dac9ba0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"memchr",
|
"memchr",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "wisp-mux"
|
name = "wisp-mux"
|
||||||
version = "5.0.0"
|
version = "5.0.1"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-trait",
|
"async-trait",
|
||||||
"bytes",
|
"bytes",
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "wisp-mux"
|
name = "wisp-mux"
|
||||||
version = "5.0.0"
|
version = "5.0.1"
|
||||||
license = "LGPL-3.0-only"
|
license = "LGPL-3.0-only"
|
||||||
description = "A library for easily creating Wisp servers and clients."
|
description = "A library for easily creating Wisp servers and clients."
|
||||||
homepage = "https://github.com/MercuryWorkshop/epoxy-tls/tree/multiplexed/wisp"
|
homepage = "https://github.com/MercuryWorkshop/epoxy-tls/tree/multiplexed/wisp"
|
||||||
|
|
|
@ -26,6 +26,15 @@ fn match_payload_reverse(payload: crate::ws::Payload<'_>) -> Payload<'_> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn payload_to_bytesmut(payload: Payload<'_>) -> BytesMut {
|
||||||
|
match payload {
|
||||||
|
Payload::Borrowed(borrowed) => BytesMut::from(borrowed),
|
||||||
|
Payload::BorrowedMut(borrowed_mut) => BytesMut::from(&*borrowed_mut),
|
||||||
|
Payload::Owned(owned) => BytesMut::from(owned.as_slice()),
|
||||||
|
Payload::Bytes(b) => b,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
impl From<OpCode> for crate::ws::OpCode {
|
impl From<OpCode> for crate::ws::OpCode {
|
||||||
fn from(opcode: OpCode) -> Self {
|
fn from(opcode: OpCode) -> Self {
|
||||||
use OpCode::*;
|
use OpCode::*;
|
||||||
|
@ -105,7 +114,7 @@ impl<S: AsyncRead + Unpin + Send> crate::ws::WebSocketRead for WebSocketRead<S>
|
||||||
)));
|
)));
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut buf = BytesMut::from(frame.payload);
|
let mut buf = payload_to_bytesmut(frame.payload);
|
||||||
let opcode = frame.opcode;
|
let opcode = frame.opcode;
|
||||||
|
|
||||||
while !frame.fin {
|
while !frame.fin {
|
||||||
|
@ -145,7 +154,7 @@ impl<S: AsyncRead + Unpin + Send> crate::ws::WebSocketRead for WebSocketRead<S>
|
||||||
)));
|
)));
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut buf = BytesMut::from(frame.payload);
|
let mut buf = payload_to_bytesmut(frame.payload);
|
||||||
let opcode = frame.opcode;
|
let opcode = frame.opcode;
|
||||||
|
|
||||||
while !frame.fin {
|
while !frame.fin {
|
||||||
|
@ -159,7 +168,7 @@ impl<S: AsyncRead + Unpin + Send> crate::ws::WebSocketRead for WebSocketRead<S>
|
||||||
)));
|
)));
|
||||||
}
|
}
|
||||||
if frame_cnt == 1 {
|
if frame_cnt == 1 {
|
||||||
let payload = BytesMut::from(frame.payload);
|
let payload = payload_to_bytesmut(frame.payload);
|
||||||
extra_frame = Some(crate::ws::Frame {
|
extra_frame = Some(crate::ws::Frame {
|
||||||
opcode: opcode.into(),
|
opcode: opcode.into(),
|
||||||
payload: crate::ws::Payload::Bytes(payload),
|
payload: crate::ws::Payload::Bytes(payload),
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue