@ -499,34 +499,36 @@ void FlowInitFlowProto(void)
{
FlowTimeoutsInit ( ) ;
# define SET_DEFAULTS(p, n, e, c, ne, ee, ce) \
flow_timeouts_normal [ ( p ) ] . new_timeout = ( n ) ; \
flow_timeouts_normal [ ( p ) ] . est_timeout = ( e ) ; \
flow_timeouts_normal [ ( p ) ] . closed_timeout = ( c ) ; \
flow_timeouts_emerg [ ( p ) ] . new_timeout = ( ne ) ; \
flow_timeouts_emerg [ ( p ) ] . est_timeout = ( ee ) ; \
flow_timeouts_emerg [ ( p ) ] . closed_timeout = ( ce ) ;
# define SET_DEFAULTS(p, n, e, c, b, ne, ee, ce, be) \
flow_timeouts_normal [ ( p ) ] . new_timeout = ( n ) ; \
flow_timeouts_normal [ ( p ) ] . est_timeout = ( e ) ; \
flow_timeouts_normal [ ( p ) ] . closed_timeout = ( c ) ; \
flow_timeouts_normal [ ( p ) ] . bypassed_timeout = ( b ) ; \
flow_timeouts_emerg [ ( p ) ] . new_timeout = ( ne ) ; \
flow_timeouts_emerg [ ( p ) ] . est_timeout = ( ee ) ; \
flow_timeouts_emerg [ ( p ) ] . closed_timeout = ( ce ) ; \
flow_timeouts_emerg [ ( p ) ] . bypassed_timeout = ( be ) ; \
SET_DEFAULTS ( FLOW_PROTO_DEFAULT ,
FLOW_DEFAULT_NEW_TIMEOUT , FLOW_DEFAULT_EST_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT , FLOW_DEFAULT_BYPASSED_TIMEOUT ,
FLOW_DEFAULT_EMERG_NEW_TIMEOUT , FLOW_DEFAULT_EMERG_EST_TIMEOUT ,
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT );
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT , FLOW_DEFAULT_EMERG_BYPASSED_TIMEOUT );
SET_DEFAULTS ( FLOW_PROTO_TCP ,
FLOW_IPPROTO_TCP_NEW_TIMEOUT , FLOW_IPPROTO_TCP_EST_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT , FLOW_IPPROTO_TCP_BYPASSED_TIMEOUT ,
FLOW_IPPROTO_TCP_EMERG_NEW_TIMEOUT , FLOW_IPPROTO_TCP_EMERG_EST_TIMEOUT ,
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT );
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT , FLOW_DEFAULT_EMERG_BYPASSED_TIMEOUT );
SET_DEFAULTS ( FLOW_PROTO_UDP ,
FLOW_IPPROTO_UDP_NEW_TIMEOUT , FLOW_IPPROTO_UDP_EST_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT , FLOW_IPPROTO_UDP_BYPASSED_TIMEOUT ,
FLOW_IPPROTO_UDP_EMERG_NEW_TIMEOUT , FLOW_IPPROTO_UDP_EMERG_EST_TIMEOUT ,
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT );
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT , FLOW_DEFAULT_EMERG_BYPASSED_TIMEOUT );
SET_DEFAULTS ( FLOW_PROTO_ICMP ,
FLOW_IPPROTO_ICMP_NEW_TIMEOUT , FLOW_IPPROTO_ICMP_EST_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT ,
FLOW_DEFAULT_CLOSED_TIMEOUT , FLOW_IPPROTO_ICMP_BYPASSED_TIMEOUT ,
FLOW_IPPROTO_ICMP_EMERG_NEW_TIMEOUT , FLOW_IPPROTO_ICMP_EMERG_EST_TIMEOUT ,
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT );
FLOW_DEFAULT_EMERG_CLOSED_TIMEOUT , FLOW_DEFAULT_EMERG_BYPASSED_TIMEOUT );
flow_freefuncs [ FLOW_PROTO_DEFAULT ] . Freefunc = NULL ;
flow_freefuncs [ FLOW_PROTO_TCP ] . Freefunc = NULL ;
@ -537,9 +539,11 @@ void FlowInitFlowProto(void)
const char * new = NULL ;
const char * established = NULL ;
const char * closed = NULL ;
const char * bypassed = NULL ;
const char * emergency_new = NULL ;
const char * emergency_established = NULL ;
const char * emergency_closed = NULL ;
const char * emergency_bypassed = NULL ;
ConfNode * flow_timeouts = ConfGetNode ( " flow-timeouts " ) ;
if ( flow_timeouts ! = NULL ) {
@ -552,11 +556,14 @@ void FlowInitFlowProto(void)
new = ConfNodeLookupChildValue ( proto , " new " ) ;
established = ConfNodeLookupChildValue ( proto , " established " ) ;
closed = ConfNodeLookupChildValue ( proto , " closed " ) ;
bypassed = ConfNodeLookupChildValue ( proto , " bypassed " ) ;
emergency_new = ConfNodeLookupChildValue ( proto , " emergency-new " ) ;
emergency_established = ConfNodeLookupChildValue ( proto ,
" emergency-established " ) ;
emergency_closed = ConfNodeLookupChildValue ( proto ,
" emergency-closed " ) ;
emergency_bypassed = ConfNodeLookupChildValue ( proto ,
" emergency-bypassed " ) ;
if ( new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( new ) , new ) > 0 ) {
@ -575,6 +582,13 @@ void FlowInitFlowProto(void)
flow_timeouts_normal [ FLOW_PROTO_DEFAULT ] . closed_timeout = configval ;
}
if ( bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( bypassed ) ,
bypassed ) > 0 ) {
flow_timeouts_normal [ FLOW_PROTO_DEFAULT ] . bypassed_timeout = configval ;
}
if ( emergency_new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( emergency_new ) ,
emergency_new ) > 0 ) {
@ -595,6 +609,13 @@ void FlowInitFlowProto(void)
flow_timeouts_emerg [ FLOW_PROTO_DEFAULT ] . closed_timeout = configval ;
}
if ( emergency_bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( emergency_bypassed ) ,
emergency_bypassed ) > 0 ) {
flow_timeouts_emerg [ FLOW_PROTO_DEFAULT ] . bypassed_timeout = configval ;
}
}
/* TCP. */
@ -603,11 +624,14 @@ void FlowInitFlowProto(void)
new = ConfNodeLookupChildValue ( proto , " new " ) ;
established = ConfNodeLookupChildValue ( proto , " established " ) ;
closed = ConfNodeLookupChildValue ( proto , " closed " ) ;
bypassed = ConfNodeLookupChildValue ( proto , " bypassed " ) ;
emergency_new = ConfNodeLookupChildValue ( proto , " emergency-new " ) ;
emergency_established = ConfNodeLookupChildValue ( proto ,
" emergency-established " ) ;
emergency_closed = ConfNodeLookupChildValue ( proto ,
" emergency-closed " ) ;
emergency_bypassed = ConfNodeLookupChildValue ( proto ,
" emergency-bypassed " ) ;
if ( new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( new ) , new ) > 0 ) {
@ -626,6 +650,13 @@ void FlowInitFlowProto(void)
flow_timeouts_normal [ FLOW_PROTO_TCP ] . closed_timeout = configval ;
}
if ( bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( bypassed ) ,
bypassed ) > 0 ) {
flow_timeouts_normal [ FLOW_PROTO_TCP ] . bypassed_timeout = configval ;
}
if ( emergency_new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( emergency_new ) ,
emergency_new ) > 0 ) {
@ -646,6 +677,13 @@ void FlowInitFlowProto(void)
flow_timeouts_emerg [ FLOW_PROTO_TCP ] . closed_timeout = configval ;
}
if ( emergency_bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( emergency_bypassed ) ,
emergency_bypassed ) > 0 ) {
flow_timeouts_emerg [ FLOW_PROTO_TCP ] . bypassed_timeout = configval ;
}
}
/* UDP. */
@ -653,9 +691,13 @@ void FlowInitFlowProto(void)
if ( proto ! = NULL ) {
new = ConfNodeLookupChildValue ( proto , " new " ) ;
established = ConfNodeLookupChildValue ( proto , " established " ) ;
bypassed = ConfNodeLookupChildValue ( proto , " bypassed " ) ;
emergency_new = ConfNodeLookupChildValue ( proto , " emergency-new " ) ;
emergency_established = ConfNodeLookupChildValue ( proto ,
" emergency-established " ) ;
emergency_bypassed = ConfNodeLookupChildValue ( proto ,
" emergency-bypassed " ) ;
if ( new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( new ) , new ) > 0 ) {
@ -667,6 +709,13 @@ void FlowInitFlowProto(void)
flow_timeouts_normal [ FLOW_PROTO_UDP ] . est_timeout = configval ;
}
if ( bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( bypassed ) ,
bypassed ) > 0 ) {
flow_timeouts_normal [ FLOW_PROTO_UDP ] . bypassed_timeout = configval ;
}
if ( emergency_new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( emergency_new ) ,
emergency_new ) > 0 ) {
@ -680,6 +729,13 @@ void FlowInitFlowProto(void)
flow_timeouts_emerg [ FLOW_PROTO_UDP ] . est_timeout = configval ;
}
if ( emergency_bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( emergency_bypassed ) ,
emergency_bypassed ) > 0 ) {
flow_timeouts_emerg [ FLOW_PROTO_UDP ] . bypassed_timeout = configval ;
}
}
/* ICMP. */
@ -687,9 +743,12 @@ void FlowInitFlowProto(void)
if ( proto ! = NULL ) {
new = ConfNodeLookupChildValue ( proto , " new " ) ;
established = ConfNodeLookupChildValue ( proto , " established " ) ;
bypassed = ConfNodeLookupChildValue ( proto , " bypassed " ) ;
emergency_new = ConfNodeLookupChildValue ( proto , " emergency-new " ) ;
emergency_established = ConfNodeLookupChildValue ( proto ,
" emergency-established " ) ;
emergency_bypassed = ConfNodeLookupChildValue ( proto ,
" emergency-bypassed " ) ;
if ( new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( new ) , new ) > 0 ) {
@ -702,6 +761,13 @@ void FlowInitFlowProto(void)
flow_timeouts_normal [ FLOW_PROTO_ICMP ] . est_timeout = configval ;
}
if ( bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( bypassed ) ,
bypassed ) > 0 ) {
flow_timeouts_normal [ FLOW_PROTO_ICMP ] . bypassed_timeout = configval ;
}
if ( emergency_new ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 , strlen ( emergency_new ) ,
emergency_new ) > 0 ) {
@ -715,6 +781,13 @@ void FlowInitFlowProto(void)
flow_timeouts_emerg [ FLOW_PROTO_ICMP ] . est_timeout = configval ;
}
if ( emergency_bypassed ! = NULL & &
ByteExtractStringUint32 ( & configval , 10 ,
strlen ( emergency_bypassed ) ,
emergency_bypassed ) > 0 ) {
flow_timeouts_emerg [ FLOW_PROTO_UDP ] . bypassed_timeout = configval ;
}
}
}