This will allow Rust parsers to register for gap handing from
Rust (some Rust parsers do handle gaps, but they set the flag
from C).
(cherry picked from commit
53aa967e0b89417f2714fcbcbb6463be6ce8282e)
get_tx_iterator: Some(rs_template_state_get_tx_iterator),
get_tx_detect_flags: None,
set_tx_detect_flags: None,
+ flags: 0,
};
let ip_proto_str = CString::new("tcp").unwrap();
get_tx_iterator : Some(rs_dhcp_state_get_tx_iterator),
set_tx_detect_flags: None,
get_tx_detect_flags: None,
+ flags : 0,
};
let ip_proto_str = CString::new("udp").unwrap();
get_tx_iterator : None,
get_tx_detect_flags: None,
set_tx_detect_flags: None,
+ flags : 0,
};
let ip_proto_str = CString::new("udp").unwrap();
get_tx_iterator : None,
get_tx_detect_flags: Some(rs_krb5_tx_detect_flags_get),
set_tx_detect_flags: Some(rs_krb5_tx_detect_flags_set),
+ flags : 0,
};
// register UDP parser
let ip_proto_str = CString::new("udp").unwrap();
get_tx_iterator : None,
get_tx_detect_flags: None,
set_tx_detect_flags: None,
+ flags : 0,
};
let ip_proto_str = CString::new("udp").unwrap();
// Function to get TX detect flags.
pub get_tx_detect_flags: Option<GetTxDetectFlagsFn>,
+
+ pub flags: u32,
}
get_tx_iterator: None,
get_tx_detect_flags: None,
set_tx_detect_flags: None,
+ flags: 0,
};
/* For 5.0 we want this disabled by default, so check that it
get_tx_iterator: None,
get_tx_detect_flags: None,
set_tx_detect_flags: None,
+ flags: 0,
};
/* For 5.0 we want this disabled by default, so check that it
get_tx_iterator : None,
get_tx_detect_flags: Some(rs_snmp_get_tx_detect_flags),
set_tx_detect_flags: Some(rs_snmp_set_tx_detect_flags),
+ flags : 0,
};
let ip_proto_str = CString::new("udp").unwrap();
if AppLayerProtoDetectConfProtoDetectionEnabled(ip_proto_str.as_ptr(), parser.name) != 0 {
p->GetTxDetectFlags, p->SetTxDetectFlags);
}
+ if (p->flags) {
+ AppLayerParserRegisterOptionFlags(p->ip_proto, alproto,
+ p->flags);
+
+ }
+
return 0;
}
void (*SetTxDetectFlags)(void *, uint8_t, uint64_t);
uint64_t (*GetTxDetectFlags)(void *, uint8_t);
+
+ uint32_t flags;
} AppLayerParser;
/**