netfilter
firewalling, NAT, and packet mangling for linux
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
ulogd_inppkt_NFLOG.c File Reference
#include <unistd.h>
#include <stdlib.h>
#include <netinet/in.h>
#include <errno.h>
#include <stdbool.h>
#include <ulogd/ulogd.h>
#include <libnfnetlink/libnfnetlink.h>
#include <libnetfilter_log/libnetfilter_log.h>
Include dependency graph for ulogd_inppkt_NFLOG.c:

Data Structures

struct  nflog_input
 

Macros

#define NFLOG_GROUP_DEFAULT   0
 
#define NFLOG_BUFSIZE_DEFAULT   150000
 
#define bufsiz_ce(x)   (x->ces[0])
 
#define group_ce(x)   (x->ces[1])
 
#define unbind_ce(x)   (x->ces[2])
 
#define bind_ce(x)   (x->ces[3])
 
#define seq_ce(x)   (x->ces[4])
 
#define seq_global_ce(x)   (x->ces[5])
 
#define label_ce(x)   (x->ces[6])
 
#define nlsockbufsize_ce(x)   (x->ces[7])
 
#define nlsockbufmaxsize_ce(x)   (x->ces[8])
 
#define nlthreshold_ce(x)   (x->ces[9])
 
#define nltimeout_ce(x)   (x->ces[10])
 

Enumerations

enum  nflog_keys {
  NFLOG_KEY_RAW_MAC = 0,
  NFLOG_KEY_RAW_PCKT,
  NFLOG_KEY_RAW_PCKTLEN,
  NFLOG_KEY_RAW_PCKTCOUNT,
  NFLOG_KEY_OOB_PREFIX,
  NFLOG_KEY_OOB_TIME_SEC,
  NFLOG_KEY_OOB_TIME_USEC,
  NFLOG_KEY_OOB_MARK,
  NFLOG_KEY_OOB_IFINDEX_IN,
  NFLOG_KEY_OOB_IFINDEX_OUT,
  NFLOG_KEY_OOB_HOOK,
  NFLOG_KEY_RAW_MAC_LEN,
  NFLOG_KEY_OOB_SEQ_LOCAL,
  NFLOG_KEY_OOB_SEQ_GLOBAL,
  NFLOG_KEY_OOB_FAMILY,
  NFLOG_KEY_OOB_PROTOCOL,
  NFLOG_KEY_OOB_UID,
  NFLOG_KEY_OOB_GID,
  NFLOG_KEY_RAW_LABEL,
  NFLOG_KEY_RAW_TYPE,
  NFLOG_KEY_RAW_MAC_SADDR,
  NFLOG_KEY_RAW_MAC_ADDRLEN,
  NFLOG_KEY_RAW,
  UNIXSOCK_KEY_RAW_MAC = 0,
  UNIXSOCK_KEY_RAW_PCKT,
  UNIXSOCK_KEY_RAW_PCKTLEN,
  UNIXSOCK_KEY_RAW_PCKTCOUNT,
  UNIXSOCK_KEY_OOB_PREFIX,
  UNIXSOCK_KEY_OOB_TIME_SEC,
  UNIXSOCK_KEY_OOB_TIME_USEC,
  UNIXSOCK_KEY_OOB_MARK,
  UNIXSOCK_KEY_OOB_IN,
  UNIXSOCK_KEY_OOB_OUT,
  UNIXSOCK_KEY_OOB_HOOK,
  UNIXSOCK_KEY_RAW_MAC_LEN,
  UNIXSOCK_KEY_OOB_SEQ_LOCAL,
  UNIXSOCK_KEY_OOB_SEQ_GLOBAL,
  UNIXSOCK_KEY_OOB_FAMILY,
  UNIXSOCK_KEY_OOB_PROTOCOL,
  UNIXSOCK_KEY_OOB_UID,
  UNIXSOCK_KEY_OOB_GID,
  UNIXSOCK_KEY_RAW_LABEL,
  UNIXSOCK_KEY_RAW_TYPE,
  UNIXSOCK_KEY_RAW_MAC_SADDR,
  UNIXSOCK_KEY_RAW_MAC_ADDRLEN,
  UNIXSOCK_KEY_NUFW_USER_NAME,
  UNIXSOCK_KEY_NUFW_USER_ID,
  UNIXSOCK_KEY_NUFW_OS_NAME,
  UNIXSOCK_KEY_NUFW_OS_REL,
  UNIXSOCK_KEY_NUFW_OS_VERS,
  UNIXSOCK_KEY_NUFW_APP_NAME
}
 

Functions

void __attribute__ ((constructor))
 

Variables

struct ulogd_plugin libulog_plugin
 

Macro Definition Documentation

#define bind_ce (   x)    (x->ces[3])
#define bufsiz_ce (   x)    (x->ces[0])
#define group_ce (   x)    (x->ces[1])
#define label_ce (   x)    (x->ces[6])
#define NFLOG_BUFSIZE_DEFAULT   150000
#define NFLOG_GROUP_DEFAULT   0
#define nlsockbufmaxsize_ce (   x)    (x->ces[8])
#define nlsockbufsize_ce (   x)    (x->ces[7])
#define nlthreshold_ce (   x)    (x->ces[9])
#define nltimeout_ce (   x)    (x->ces[10])
#define seq_ce (   x)    (x->ces[4])
#define seq_global_ce (   x)    (x->ces[5])
#define unbind_ce (   x)    (x->ces[2])

Enumeration Type Documentation

enum nflog_keys
Enumerator
NFLOG_KEY_RAW_MAC 
NFLOG_KEY_RAW_PCKT 
NFLOG_KEY_RAW_PCKTLEN 
NFLOG_KEY_RAW_PCKTCOUNT 
NFLOG_KEY_OOB_PREFIX 
NFLOG_KEY_OOB_TIME_SEC 
NFLOG_KEY_OOB_TIME_USEC 
NFLOG_KEY_OOB_MARK 
NFLOG_KEY_OOB_IFINDEX_IN 
NFLOG_KEY_OOB_IFINDEX_OUT 
NFLOG_KEY_OOB_HOOK 
NFLOG_KEY_RAW_MAC_LEN 
NFLOG_KEY_OOB_SEQ_LOCAL 
NFLOG_KEY_OOB_SEQ_GLOBAL 
NFLOG_KEY_OOB_FAMILY 
NFLOG_KEY_OOB_PROTOCOL 
NFLOG_KEY_OOB_UID 
NFLOG_KEY_OOB_GID 
NFLOG_KEY_RAW_LABEL 
NFLOG_KEY_RAW_TYPE 
NFLOG_KEY_RAW_MAC_SADDR 
NFLOG_KEY_RAW_MAC_ADDRLEN 
NFLOG_KEY_RAW 
UNIXSOCK_KEY_RAW_MAC 
UNIXSOCK_KEY_RAW_PCKT 
UNIXSOCK_KEY_RAW_PCKTLEN 
UNIXSOCK_KEY_RAW_PCKTCOUNT 
UNIXSOCK_KEY_OOB_PREFIX 
UNIXSOCK_KEY_OOB_TIME_SEC 
UNIXSOCK_KEY_OOB_TIME_USEC 
UNIXSOCK_KEY_OOB_MARK 
UNIXSOCK_KEY_OOB_IN 
UNIXSOCK_KEY_OOB_OUT 
UNIXSOCK_KEY_OOB_HOOK 
UNIXSOCK_KEY_RAW_MAC_LEN 
UNIXSOCK_KEY_OOB_SEQ_LOCAL 
UNIXSOCK_KEY_OOB_SEQ_GLOBAL 
UNIXSOCK_KEY_OOB_FAMILY 
UNIXSOCK_KEY_OOB_PROTOCOL 
UNIXSOCK_KEY_OOB_UID 
UNIXSOCK_KEY_OOB_GID 
UNIXSOCK_KEY_RAW_LABEL 
UNIXSOCK_KEY_RAW_TYPE 
UNIXSOCK_KEY_RAW_MAC_SADDR 
UNIXSOCK_KEY_RAW_MAC_ADDRLEN 
UNIXSOCK_KEY_NUFW_USER_NAME 
UNIXSOCK_KEY_NUFW_USER_ID 
UNIXSOCK_KEY_NUFW_OS_NAME 
UNIXSOCK_KEY_NUFW_OS_REL 
UNIXSOCK_KEY_NUFW_OS_VERS 
UNIXSOCK_KEY_NUFW_APP_NAME 

Function Documentation

void __attribute__ ( (constructor)  )

References ulogd_register_plugin().

Here is the call graph for this function:

Variable Documentation

struct ulogd_plugin libulog_plugin
Initial value:
= {
.name = "NFLOG",
.input = {
},
.output = {
.type = ULOGD_DTYPE_RAW,
.keys = output_keys,
.num_keys = ARRAY_SIZE(output_keys),
},
.priv_size = sizeof(struct nflog_input),
.configure = &configure,
.start = &start,
.stop = &stop,
.config_kset = &libulog_kset,
.version = VERSION,
}
Definition: ulogd_inppkt_NFLOG.c:24
output_keys
Definition: ulogd_raw2packet_BASE.c:54
Definition: ulogd.h:77
Definition: ulogd.h:78
#define ARRAY_SIZE
Definition: helper.h:71