diff options
Diffstat (limited to 'src/transaction/mod.rs')
-rw-r--r-- | src/transaction/mod.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/transaction/mod.rs b/src/transaction/mod.rs index 601b134..3368c47 100644 --- a/src/transaction/mod.rs +++ b/src/transaction/mod.rs @@ -2,7 +2,7 @@ pub mod auth; use crate::{ encoding::{ - headers::{CSeq, CallID}, + headers::{CSeq, CallID, ContentLength}, request::Request, response::Response, Message, @@ -66,6 +66,7 @@ impl<T: Transport> TransactionUser<T> { .get::<CallID>() .ok_or(anyhow!("call-id is mandatory"))??, ); + resp.headers.insert(ContentLength(resp.body.len())); self.transport.send(Message::Response(resp)).await?; Ok(()) } @@ -74,6 +75,7 @@ impl<T: Transport> TransactionUser<T> { let seq = self.sequence.fetch_add(1, Ordering::Relaxed); let cseq = CSeq(seq, request.method); request.headers.insert(cseq); + request.headers.insert(ContentLength(request.body.len())); let (tx, rx) = channel(4); |