Support Min-Expires header
authorRichard Whitehouse <github@richardwhiuk.com>
Sun, 29 Oct 2017 18:43:12 +0000 (18:43 +0000)
committerRichard Whitehouse <github@richardwhiuk.com>
Sun, 29 Oct 2017 18:43:12 +0000 (18:43 +0000)
src/codec.rs
src/parser.rs
src/types.rs

index c6dfe924bead10822c4487860d6f5a39cd557aa4..f02ecc6fcaa401d5c61d5bf866a109c3f8faba0a 100644 (file)
@@ -439,8 +439,8 @@ mod tests {
                            GMT\r\nError-Info:<sip:not-in-service-recording@atlanta.\
                            com>\r\nExpires:30\r\nFrom:sip:+12125551212@server.phone2net.com;\
                            tag=887s\r\nIn-Reply-To:70710@saturn.bell-tel.com,17320@saturn.\
-                           bell-tel.com\r\nMax-Forwards:32\r\nMIME-Version:2.0\r\nVia: \
-                           localhost\r\n\r\n")
+                           bell-tel.com\r\nMax-Forwards:32\r\nMIME-Version:2.0\r\nMin-Expires:\
+                           30\r\nVia: localhost\r\n\r\n")
         });
 
         let finished = request.and_then(|(socket, _request)| {
index 7944dca8f63463bada027f16ece1ad7127eeee9e..9e71d9ed22943ceb448bee245d75143b47a33368 100644 (file)
@@ -971,6 +971,10 @@ named!(mime_version_header<(u32, u32)>, preceded!(
                tag!(b"."),
                number)));
 
+named!(min_expires_header<u32>, preceded!(
+       tag!(b"Min-Expires:"),
+       number));
+
 named!(pub header<Header>, alt!(
 // RFC 3261 Headers
        accept_header => { |a| Header::Accept(a) } |
@@ -995,5 +999,6 @@ named!(pub header<Header>, alt!(
        from_header => { |f| Header::From(f) } |
        in_reply_to_header => { |i| Header::InReplyTo(i) } |
        max_forwards_header => { |m| Header::MaxForwards(m) } |
-       mime_version_header => { |(m, v)| Header::MimeVersion(m, v) }
+       mime_version_header => { |(m, v)| Header::MimeVersion(m, v) } |
+       min_expires_header => { |m| Header::MinExpires(m) }
 ));
index ea24fcd3db1271525e3ee21b8720b39bdf09552f..daec3640d6ceb318797a5b2bbf6e196c6d4e06bd 100644 (file)
@@ -366,6 +366,7 @@ pub enum Header {
     InReplyTo(Vec<CallId>),
     MaxForwards(u32),
     MimeVersion(u32, u32),
+    MinExpires(u32),
     To(Uri),
     Extension { name: String, value: String },
 }