tcp_reassembler.h (snort3-3.1.29.0) | : | tcp_reassembler.h (snort3-3.1.30.0) | ||
---|---|---|---|---|
skipping to change at line 45 | skipping to change at line 45 | |||
FINAL_FLUSH_OK = -1 | FINAL_FLUSH_OK = -1 | |||
}; | }; | |||
virtual void queue_packet_for_reassembly(TcpReassemblerState&, TcpSegmentDes criptor&); | virtual void queue_packet_for_reassembly(TcpReassemblerState&, TcpSegmentDes criptor&); | |||
virtual void purge_segment_list(TcpReassemblerState&); | virtual void purge_segment_list(TcpReassemblerState&); | |||
virtual void purge_flushed_ackd(TcpReassemblerState&); | virtual void purge_flushed_ackd(TcpReassemblerState&); | |||
virtual int flush_stream( | virtual int flush_stream( | |||
TcpReassemblerState&, snort::Packet* p, uint32_t dir, bool final_flush = false); | TcpReassemblerState&, snort::Packet* p, uint32_t dir, bool final_flush = false); | |||
virtual void flush_queued_segments( | virtual void flush_queued_segments( | |||
TcpReassemblerState&, snort::Flow* flow, bool clear, const snort::Packet * = nullptr); | TcpReassemblerState&, snort::Flow* flow, bool clear, const snort::Packet * = nullptr); | |||
void finish_and_final_flush( | ||||
TcpReassemblerState&, snort::Flow* flow, bool clear, snort::Packet*); | ||||
virtual bool is_segment_pending_flush(TcpReassemblerState&); | virtual bool is_segment_pending_flush(TcpReassemblerState&); | |||
virtual int flush_on_data_policy(TcpReassemblerState&, snort::Packet*); | virtual int flush_on_data_policy(TcpReassemblerState&, snort::Packet*); | |||
virtual int flush_on_ack_policy(TcpReassemblerState&, snort::Packet*); | virtual int flush_on_ack_policy(TcpReassemblerState&, snort::Packet*); | |||
virtual bool add_alert(TcpReassemblerState&, uint32_t gid, uint32_t sid); | virtual bool add_alert(TcpReassemblerState&, uint32_t gid, uint32_t sid); | |||
virtual bool check_alerted(TcpReassemblerState&, uint32_t gid, uint32_t sid) ; | virtual bool check_alerted(TcpReassemblerState&, uint32_t gid, uint32_t sid) ; | |||
virtual int update_alert(TcpReassemblerState&, uint32_t gid, uint32_t sid, | virtual int update_alert(TcpReassemblerState&, uint32_t gid, uint32_t sid, | |||
uint32_t event_id, uint32_t event_second); | uint32_t event_id, uint32_t event_second); | |||
virtual void purge_alerts(TcpReassemblerState&); | virtual void purge_alerts(TcpReassemblerState&); | |||
uint32_t perform_partial_flush(TcpReassemblerState&, snort::Flow*); | uint32_t perform_partial_flush(TcpReassemblerState&, snort::Flow*, snort::Pa cket*&); | |||
protected: | protected: | |||
TcpReassembler() = default; | TcpReassembler() = default; | |||
void add_reassembly_segment( | void add_reassembly_segment( | |||
TcpReassemblerState&, TcpSegmentDescriptor&, uint16_t len, uint32_t slid e, | TcpReassemblerState&, TcpSegmentDescriptor&, uint16_t len, uint32_t slid e, | |||
uint32_t trunc, uint32_t seq, TcpSegmentNode* left) override; | uint32_t trunc, uint32_t seq, TcpSegmentNode* left) override; | |||
void dup_reassembly_segment( | void dup_reassembly_segment( | |||
TcpReassemblerState&, TcpSegmentNode* left, TcpSegmentNode** retSeg) ove rride; | TcpReassemblerState&, TcpSegmentNode* left, TcpSegmentNode** retSeg) ove rride; | |||
int delete_reassembly_segment(TcpReassemblerState&, TcpSegmentNode*) overrid e; | int delete_reassembly_segment(TcpReassemblerState&, TcpSegmentNode*) overrid e; | |||
virtual void insert_segment_in_empty_seglist(TcpReassemblerState&, TcpSegmen tDescriptor&); | virtual void insert_segment_in_empty_seglist(TcpReassemblerState&, TcpSegmen tDescriptor&); | |||
virtual void insert_segment_in_seglist(TcpReassemblerState&, TcpSegmentDescr iptor&); | virtual void insert_segment_in_seglist(TcpReassemblerState&, TcpSegmentDescr iptor&); | |||
virtual uint32_t get_pending_segment_count(TcpReassemblerState&, unsigned ma x); | virtual uint32_t get_pending_segment_count(TcpReassemblerState&, unsigned ma x); | |||
int trim_delete_reassembly_segment(TcpReassemblerState&, TcpSegmentNode*, ui nt32_t flush_seq); | int trim_delete_reassembly_segment(TcpReassemblerState&, TcpSegmentNode*, ui nt32_t flush_seq); | |||
void queue_reassembly_segment(TcpReassemblerState&, TcpSegmentNode* prev, Tc pSegmentNode*); | void queue_reassembly_segment(TcpReassemblerState&, TcpSegmentNode* prev, Tc pSegmentNode*); | |||
void init_overlap_editor(TcpReassemblerState&, TcpSegmentDescriptor&); | void init_overlap_editor(TcpReassemblerState&, TcpSegmentDescriptor&); | |||
bool is_segment_fasttrack | bool is_segment_fasttrack | |||
(TcpReassemblerState&, TcpSegmentNode* tail, const TcpSegmentDescriptor& ); | (TcpReassemblerState&, TcpSegmentNode* tail, const TcpSegmentDescriptor& ); | |||
void show_rebuilt_packet(const TcpReassemblerState&, snort::Packet*); | void show_rebuilt_packet(const TcpReassemblerState&, snort::Packet*); | |||
void flush_queued_segments( | ||||
TcpReassemblerState&, snort::Flow* flow, bool clear, snort::Packet*); | ||||
int flush_data_segments(TcpReassemblerState&, uint32_t flush_len, snort::Pac ket* pdu); | int flush_data_segments(TcpReassemblerState&, uint32_t flush_len, snort::Pac ket* pdu); | |||
void prep_pdu( | void prep_pdu( | |||
TcpReassemblerState&, snort::Flow*, snort::Packet*, uint32_t pkt_flags, snort::Packet*); | TcpReassemblerState&, snort::Flow*, snort::Packet*, uint32_t pkt_flags, snort::Packet*); | |||
snort::Packet* initialize_pdu( | snort::Packet* initialize_pdu( | |||
TcpReassemblerState&, snort::Packet*, uint32_t pkt_flags, struct timeval ); | TcpReassemblerState&, snort::Packet*, uint32_t pkt_flags, struct timeval ); | |||
int flush_to_seq(TcpReassemblerState&, uint32_t bytes, snort::Packet*, uint3 2_t pkt_flags); | int flush_to_seq(TcpReassemblerState&, uint32_t bytes, snort::Packet*, uint3 2_t pkt_flags); | |||
int do_zero_byte_flush(TcpReassemblerState&, snort::Packet*, uint32_t pkt_fl ags); | int do_zero_byte_flush(TcpReassemblerState&, snort::Packet*, uint32_t pkt_fl ags); | |||
uint32_t get_q_footprint(TcpReassemblerState&); | uint32_t get_q_footprint(TcpReassemblerState&); | |||
uint32_t get_q_sequenced(TcpReassemblerState&); | uint32_t get_q_sequenced(TcpReassemblerState&); | |||
bool is_q_sequenced(TcpReassemblerState&); | bool is_q_sequenced(TcpReassemblerState&); | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added |