const HTTP2_MAGIC_LEN: usize = 24;
const HTTP2_FRAME_GOAWAY_LEN: usize = 4;
const HTTP2_FRAME_RSTSTREAM_LEN: usize = 4;
-const HTTP2_FRAME_PRIORITY_LEN: usize = 1;
+const HTTP2_FRAME_PRIORITY_LEN: usize = 5;
const HTTP2_FRAME_WINDOWUPDATE_LEN: usize = 4;
//TODO make this configurable
pub const HTTP2_MAX_TABLESIZE: u32 = 0x10000; // 65536
#[derive(Clone, Copy)]
pub struct HTTP2FramePriority {
+ pub exclusive: u8,
+ pub dependency: u32,
pub weight: u8,
}
named!(pub http2_parse_frame_priority<HTTP2FramePriority>,
do_parse!(
+ sid: bits!( tuple!( take_bits!(1u8),
+ take_bits!(31u32) ) ) >>
weight: be_u8 >>
- (HTTP2FramePriority{weight})
+ (HTTP2FramePriority{exclusive:sid.0, dependency:sid.1, weight})
)
);