"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/dynamic-preprocessors/imap/imap_paf.c" between
snort-2.9.16.1.tar.gz and snort-2.9.17.tar.gz

About: Snort is a network intrusion prevention and detection system (IDS/IPS) combining the benefits of signature, protocol and anomaly-based inspection.

imap_paf.c  (snort-2.9.16.1):imap_paf.c  (snort-2.9.17)
skipping to change at line 39 skipping to change at line 39
#include "imap_config.h" #include "imap_config.h"
#include "file_api.h" #include "file_api.h"
extern const IMAPToken imap_resps[]; extern const IMAPToken imap_resps[];
static uint8_t imap_paf_id = 0; static uint8_t imap_paf_id = 0;
typedef struct _ImapDataInfo typedef struct _ImapDataInfo
{ {
int paren_cnt; /* The open parentheses count in fetch */ int paren_cnt; /* The open parentheses count in fetch */
char *next_letter; /* The current command in fetch */
bool found_len; bool found_len;
uint32_t length;
bool esc_nxt_char; /* true if the next charachter has been escaped */ bool esc_nxt_char; /* true if the next charachter has been escaped */
char *next_letter; /* The current command in fetch */
uint32_t length;
} ImapDataInfo; } ImapDataInfo;
/* State tracker for SMTP PAF */ /* State tracker for SMTP PAF */
typedef enum _ImapPafState typedef enum _ImapPafState
{ {
IMAP_PAF_REG_STATE, /* default state. eat until LF */ IMAP_PAF_REG_STATE, /* default state. eat until LF */
IMAP_PAF_DATA_HEAD_STATE, /* parses the fetch header */ IMAP_PAF_DATA_HEAD_STATE, /* parses the fetch header */
IMAP_PAF_DATA_LEN_STATE, /* parse the literal length */ IMAP_PAF_DATA_LEN_STATE, /* parse the literal length */
IMAP_PAF_DATA_STATE, /* search for and flush on MIME boundaries */ IMAP_PAF_DATA_STATE, /* search for and flush on MIME boundaries */
IMAP_PAF_FLUSH_STATE, /* flush if a termination sequence is found */ IMAP_PAF_FLUSH_STATE, /* flush if a termination sequence is found */
skipping to change at line 70 skipping to change at line 70
{ {
IMAP_PAF_DATA_END_UNKNOWN, IMAP_PAF_DATA_END_UNKNOWN,
IMAP_PAF_DATA_END_PAREN IMAP_PAF_DATA_END_PAREN
} ImapDataEnd; } ImapDataEnd;
/* State tracker for POP PAF */ /* State tracker for POP PAF */
typedef struct _ImapPafData typedef struct _ImapPafData
{ {
MimeDataPafInfo mime_info; /* Mime response information */ MimeDataPafInfo mime_info; /* Mime response information */
ImapPafState imap_state; /* The current IMAP paf stat */ ImapPafState imap_state; /* The current IMAP paf stat */
bool end_of_data;
ImapDataInfo imap_data_info; /* Used for parsing data */ ImapDataInfo imap_data_info; /* Used for parsing data */
ImapDataEnd data_end_state; ImapDataEnd data_end_state;
bool end_of_data;
// uint32_t length; TODO -- parse and add literal length // uint32_t length; TODO -- parse and add literal length
} ImapPafData; } ImapPafData;
static inline void reset_data_states(ImapPafData *pfdata) static inline void reset_data_states(ImapPafData *pfdata)
{ {
// reset MIME info // reset MIME info
_dpd.fileAPI->reset_mime_paf_state(&(pfdata->mime_info)); _dpd.fileAPI->reset_mime_paf_state(&(pfdata->mime_info));
// reset server info // reset server info
pfdata->imap_state = IMAP_PAF_CMD_IDENTIFIER; pfdata->imap_state = IMAP_PAF_CMD_IDENTIFIER;
 End of changes. 5 change blocks. 
3 lines changed or deleted 3 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)