]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
nfs/rpc: add parser for GSSAPI Integrity records
authorVictor Julien <victor@inliniac.net>
Wed, 21 Mar 2018 14:53:15 +0000 (15:53 +0100)
committerVictor Julien <victor@inliniac.net>
Thu, 5 Apr 2018 13:21:48 +0000 (15:21 +0200)
rust/src/nfs/rpc_records.rs

index 30bfcd7b5d5096faf747bfa962d639440a39a085..446935a0ba671dbbfb1ad87128f390205ccff177 100644 (file)
@@ -92,6 +92,25 @@ named!(parse_rpc_request_creds_unknown<RpcRequestCreds>,
     >> (RpcRequestCreds::Unknown(blob) )
 ));
 
+#[derive(Debug,PartialEq)]
+pub struct RpcGssApiIntegrity<'a> {
+    pub seq_num: u32,
+    pub data: &'a[u8],
+}
+
+// Parse the GSSAPI Integrity envelope to get to the
+// data we care about.
+named!(pub parse_rpc_gssapi_integrity<RpcGssApiIntegrity>,
+    do_parse!(
+        len: be_u32
+    >>  seq_num: be_u32
+    >>  data: take!(len)
+    >> (RpcGssApiIntegrity {
+            seq_num: seq_num,
+            data: data,
+        })
+));
+
 #[derive(Debug,PartialEq)]
 pub struct RpcPacketHeader<> {
     pub frag_is_last: bool,