suricata
packet-queue.h File Reference
#include "threads.h"
Include dependency graph for packet-queue.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  PacketQueueNoLock_
 simple fifo queue for packets More...
 
struct  PacketQueue_
 simple fifo queue for packets with mutex and cond Calling the mutex or triggering the cond is responsibility of the caller More...
 

Typedefs

typedef struct PacketQueueNoLock_ PacketQueueNoLock
 simple fifo queue for packets More...
 
typedef struct PacketQueue_ PacketQueue
 simple fifo queue for packets with mutex and cond Calling the mutex or triggering the cond is responsibility of the caller More...
 

Functions

void PacketEnqueueNoLock (PacketQueueNoLock *qnl, struct Packet_ *p)
 
void PacketEnqueue (PacketQueue *, struct Packet_ *)
 
struct Packet_PacketDequeueNoLock (PacketQueueNoLock *qnl)
 
struct Packet_PacketDequeue (PacketQueue *)
 
PacketQueuePacketQueueAlloc (void)
 
void PacketQueueFree (PacketQueue *)
 

Detailed Description

Typedef Documentation

◆ PacketQueue

typedef struct PacketQueue_ PacketQueue

simple fifo queue for packets with mutex and cond Calling the mutex or triggering the cond is responsibility of the caller

Note
PacketQueueNoLock and PacketQueue need to keep identical layouts except for the mutex_q and cond_q fields.

◆ PacketQueueNoLock

simple fifo queue for packets

Note
PacketQueueNoLock and PacketQueue need to keep identical layouts except for the mutex_q and cond_q fields.

Function Documentation

◆ PacketDequeue()

struct Packet_* PacketDequeue ( PacketQueue )

Definition at line 212 of file packet-queue.c.

Referenced by TmqhInputFlow(), TmqhInputSimple(), and TmqhReleasePacketsToPacketPool().

Here is the caller graph for this function:

◆ PacketDequeueNoLock()

struct Packet_* PacketDequeueNoLock ( PacketQueueNoLock qnl)

Definition at line 206 of file packet-queue.c.

◆ PacketEnqueue()

void PacketEnqueue ( PacketQueue ,
struct Packet_  
)

Definition at line 173 of file packet-queue.c.

Referenced by TmqhOutputFlowHash(), TmqhOutputFlowIPPair(), and TmqhOutputSimple().

Here is the caller graph for this function:

◆ PacketEnqueueNoLock()

void PacketEnqueueNoLock ( PacketQueueNoLock qnl,
struct Packet_ p 
)

Definition at line 167 of file packet-queue.c.

◆ PacketQueueAlloc()

PacketQueue* PacketQueueAlloc ( void  )

◆ PacketQueueFree()

void PacketQueueFree ( PacketQueue )

Definition at line 227 of file packet-queue.c.

References PacketQueue_::cond_q, PacketQueue_::mutex_q, SCCondDestroy, SCFree, and SCMutexDestroy.

Referenced by TmqResetQueues().

Here is the caller graph for this function: