Webtransport quinn fix (#46)
This commit is contained in:
parent
52d3fc81be
commit
e99ecee40a
|
@ -2006,9 +2006,9 @@ dependencies = [
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "webtransport-quinn"
|
name = "webtransport-quinn"
|
||||||
version = "0.4.1"
|
version = "0.4.2"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "c645a48f4bac5ce504cef2dd02b373f8b8a2a7de9a72f59395a54799958f3cf2"
|
checksum = "96a4ac9975117d8c63c4d04577d594b3130fe2023b7363ebc613905acf98590a"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-std",
|
"async-std",
|
||||||
"bytes",
|
"bytes",
|
||||||
|
|
|
@ -21,7 +21,7 @@ moq-warp = { path = "../moq-warp" }
|
||||||
|
|
||||||
# QUIC
|
# QUIC
|
||||||
quinn = "0.10"
|
quinn = "0.10"
|
||||||
webtransport-quinn = "0.4"
|
webtransport-quinn = "0.4.2"
|
||||||
|
|
||||||
# Crypto
|
# Crypto
|
||||||
ring = "0.16.20"
|
ring = "0.16.20"
|
||||||
|
|
|
@ -18,7 +18,7 @@ moq-transport = { path = "../moq-transport" }
|
||||||
|
|
||||||
quinn = "0.10"
|
quinn = "0.10"
|
||||||
http = "0.2"
|
http = "0.2"
|
||||||
webtransport-quinn = "0.4.1"
|
webtransport-quinn = "0.4.2"
|
||||||
tokio = { version = "1.27", features = ["macros"] }
|
tokio = { version = "1.27", features = ["macros"] }
|
||||||
bytes = "1"
|
bytes = "1"
|
||||||
log = "0.4"
|
log = "0.4"
|
||||||
|
|
|
@ -58,14 +58,14 @@ impl Session {
|
||||||
res = self.run_segments.join_next(), if !self.run_segments.is_empty() => {
|
res = self.run_segments.join_next(), if !self.run_segments.is_empty() => {
|
||||||
let res = res.expect("no tasks").expect("task aborted");
|
let res = res.expect("no tasks").expect("task aborted");
|
||||||
if let Err(err) = res {
|
if let Err(err) = res {
|
||||||
log::error!("failed to produce segment: {:?}", err);
|
log::warn!("failed to produce segment: {:?}", err);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
object = self.objects.recv() => {
|
object = self.objects.recv() => {
|
||||||
let (object, stream) = object.context("failed to receive object")?;
|
let (object, stream) = object.context("failed to receive object")?;
|
||||||
let res = self.receive_object(object, stream).await;
|
let res = self.receive_object(object, stream).await;
|
||||||
if let Err(err) = res {
|
if let Err(err) = res {
|
||||||
log::error!("failed to receive object: {:?}", err);
|
log::warn!("failed to receive object: {:?}", err);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
subscribe = self.publishers.incoming() => {
|
subscribe = self.publishers.incoming() => {
|
||||||
|
|
|
@ -77,7 +77,8 @@ impl Session {
|
||||||
fn receive_announce_error(&mut self, msg: AnnounceError) -> anyhow::Result<()> {
|
fn receive_announce_error(&mut self, msg: AnnounceError) -> anyhow::Result<()> {
|
||||||
// TODO make sure we sent this announce
|
// TODO make sure we sent this announce
|
||||||
// TODO remove this from the list of subscribable broadcasts.
|
// TODO remove this from the list of subscribable broadcasts.
|
||||||
anyhow::bail!("received ANNOUNCE_ERROR({:?}): {}", msg.code, msg.reason)
|
log::warn!("received error {:?}", msg);
|
||||||
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn receive_subscribe(&mut self, msg: Subscribe) -> anyhow::Result<()> {
|
async fn receive_subscribe(&mut self, msg: Subscribe) -> anyhow::Result<()> {
|
||||||
|
|
Loading…
Reference in New Issue