Exemplo n.º 1
0
SF_EVENTQ * SnortEventqNew(EventQueueConfig *eq_config)
{
    SF_EVENTQ *eq;
    int (*sort)(void *, void*) = NULL;

#ifdef OLD_RULE_ORDER
    if (eq_config->order == SNORT_EVENTQ_PRIORITY)
    {
        sort = OrderPriority;
    }
    else if (eq_config->order == SNORT_EVENTQ_CONTENT_LEN)
    {
        sort = OrderContentLength;
    }
    else
    {
        FatalError("Order function for event queue is invalid.\n");
    }
#endif

    eq = sfeventq_new(eq_config->max_events, eq_config->log_events,
                      sizeof(EventNode), sort);

    if (eq == NULL)
        FatalError("Failed to initialize Snort event queue.\n");

    return eq;
}
Exemplo n.º 2
0
void SnortEventqNew(
    EventQueueConfig *eq_config, SF_EVENTQ *eq[]
) {
    int i;

    for ( i = 0; i < NUM_EVENT_QUEUES; i++ )
    {
        eq[i] = sfeventq_new(eq_config->max_events,
                eq_config->log_events, sizeof(EventNode));

        if (eq[i] == NULL)
            FatalError("Failed to initialize Snort event queue.\n");
    }
}