smtp: register file truncate callback

Tag files as truncated from this callback so storing/logging displays
the correct info.
pull/1195/head
Victor Julien 11 years ago
parent 2b9ef87527
commit 08b06bac3f

@ -1314,6 +1314,16 @@ static FileContainer *SMTPStateGetFiles(void *state, uint8_t direction)
}
}
static void SMTPStateTruncate(void *state, uint8_t direction)
{
FileContainer *fc = SMTPStateGetFiles(state, direction);
if (fc != NULL) {
SCLogDebug("truncating stream, closing files in %s direction (container %p)",
direction & STREAM_TOCLIENT ? "STREAM_TOCLIENT" : "STREAM_TOSERVER", fc);
FileTruncateAllOpenFiles(fc);
}
}
/**
* \brief Register the SMTP Protocol parser.
*/
@ -1351,6 +1361,7 @@ void RegisterSMTPParsers(void)
AppLayerParserRegisterGetTx(IPPROTO_TCP, ALPROTO_SMTP, SMTPStateGetTx);
AppLayerParserRegisterGetStateProgressCompletionStatus(IPPROTO_TCP, ALPROTO_SMTP,
SMTPStateGetAlstateProgressCompletionStatus);
AppLayerParserRegisterTruncateFunc(IPPROTO_TCP, ALPROTO_SMTP, SMTPStateTruncate);
} else {
SCLogInfo("Parsed disabled for %s protocol. Protocol detection"
"still on.", proto_name);

Loading…
Cancel
Save