static void DNP3SetEvent(DNP3State *dnp3, uint8_t event)
{
if (dnp3 && dnp3->curr) {
- AppLayerDecoderEventsSetEventRaw(&dnp3->curr->decoder_events, event);
+ AppLayerDecoderEventsSetEventRaw(&dnp3->curr->tx_data.events, event);
dnp3->events++;
}
else {
*/
static void DNP3SetEventTx(DNP3Transaction *tx, uint8_t event)
{
- AppLayerDecoderEventsSetEventRaw(&tx->decoder_events, event);
+ AppLayerDecoderEventsSetEventRaw(&tx->tx_data.events, event);
tx->dnp3->events++;
}
SCReturnStruct(APP_LAYER_ERROR);
}
-static AppLayerDecoderEvents *DNP3GetEvents(void *tx)
-{
- return ((DNP3Transaction *) tx)->decoder_events;
-}
-
static void *DNP3GetTx(void *alstate, uint64_t tx_id)
{
SCEnter();
SCFree(tx->response_buffer);
}
- AppLayerDecoderEventsFreeEvents(&tx->decoder_events);
+ AppLayerDecoderEventsFreeEvents(&tx->tx_data.events);
if (tx->tx_data.de_state != NULL) {
DetectEngineStateFree(tx->tx_data.de_state);
dnp3->curr = NULL;
}
- if (tx->decoder_events != NULL) {
- if (tx->decoder_events->cnt <= dnp3->events) {
- dnp3->events -= tx->decoder_events->cnt;
- }
- else {
+ if (tx->tx_data.events != NULL) {
+ if (tx->tx_data.events->cnt <= dnp3->events) {
+ dnp3->events -= tx->tx_data.events->cnt;
+ } else {
dnp3->events = 0;
}
}
AppLayerParserRegisterStateFuncs(IPPROTO_TCP, ALPROTO_DNP3,
DNP3StateAlloc, DNP3StateFree);
- AppLayerParserRegisterGetEventsFunc(IPPROTO_TCP, ALPROTO_DNP3,
- DNP3GetEvents);
-
AppLayerParserRegisterGetTx(IPPROTO_TCP, ALPROTO_DNP3, DNP3GetTx);
AppLayerParserRegisterGetTxCnt(IPPROTO_TCP, ALPROTO_DNP3, DNP3GetTxCnt);
AppLayerParserRegisterTxFreeFunc(IPPROTO_TCP, ALPROTO_DNP3,