netfilter
firewalling, NAT, and packet mangling for linux
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Collaboration diagram for Queue:

Functions

struct nl_socknfnl_queue_socket_alloc (void)
 
int nfnlmsg_queue_msg_parse (struct nlmsghdr *nlh, struct nfnl_queue_msg **result)
 
char * nfnl_queue_copy_mode2str (enum nfnl_queue_copy_mode copy_mode, char *buf, size_t len)
 
enum nfnl_queue_copy_mode nfnl_queue_str2copy_mode (const char *name)
 

Variables

struct nl_object_ops queue_obj_ops
 

Queue Commands

int nfnl_queue_build_pf_bind (uint8_t pf, struct nl_msg **result)
 
int nfnl_queue_pf_bind (struct nl_sock *nlh, uint8_t pf)
 
int nfnl_queue_build_pf_unbind (uint8_t pf, struct nl_msg **result)
 
int nfnl_queue_pf_unbind (struct nl_sock *nlh, uint8_t pf)
 
int nfnl_queue_build_create_request (const struct nfnl_queue *queue, struct nl_msg **result)
 
int nfnl_queue_create (struct nl_sock *nlh, const struct nfnl_queue *queue)
 
int nfnl_queue_build_change_request (const struct nfnl_queue *queue, struct nl_msg **result)
 
int nfnl_queue_change (struct nl_sock *nlh, const struct nfnl_queue *queue)
 
int nfnl_queue_build_delete_request (const struct nfnl_queue *queue, struct nl_msg **result)
 
int nfnl_queue_delete (struct nl_sock *nlh, const struct nfnl_queue *queue)
 

Allocation/Freeing

struct nfnl_queuenfnl_queue_alloc (void)
 
void nfnl_queue_get (struct nfnl_queue *queue)
 
void nfnl_queue_put (struct nfnl_queue *queue)
 

Attributes

void nfnl_queue_set_group (struct nfnl_queue *queue, uint16_t group)
 
int nfnl_queue_test_group (const struct nfnl_queue *queue)
 
uint16_t nfnl_queue_get_group (const struct nfnl_queue *queue)
 
void nfnl_queue_set_maxlen (struct nfnl_queue *queue, uint32_t maxlen)
 
int nfnl_queue_test_maxlen (const struct nfnl_queue *queue)
 
uint32_t nfnl_queue_get_maxlen (const struct nfnl_queue *queue)
 
void nfnl_queue_set_copy_mode (struct nfnl_queue *queue, enum nfnl_queue_copy_mode mode)
 
int nfnl_queue_test_copy_mode (const struct nfnl_queue *queue)
 
enum nfnl_queue_copy_mode nfnl_queue_get_copy_mode (const struct nfnl_queue *queue)
 
void nfnl_queue_set_copy_range (struct nfnl_queue *queue, uint32_t copy_range)
 
int nfnl_queue_test_copy_range (const struct nfnl_queue *queue)
 
uint32_t nfnl_queue_get_copy_range (const struct nfnl_queue *queue)
 

Detailed Description

Function Documentation

struct nfnl_queue* nfnl_queue_alloc ( void  )

References nl_object_alloc(), and queue_obj_ops.

Here is the call graph for this function:

int nfnl_queue_build_change_request ( const struct nfnl_queue queue,
struct nl_msg **  result 
)

Referenced by nfnl_queue_change().

Here is the caller graph for this function:

int nfnl_queue_build_create_request ( const struct nfnl_queue queue,
struct nl_msg **  result 
)

References nfqnl_msg_config_cmd::_pad, nfqnl_msg_config_cmd::command, NFQA_CFG_CMD, NFQNL_CFG_CMD_BIND, NLA_PUT, NLE_MSGSIZE, nlmsg_free(), and nfqnl_msg_config_cmd::pf.

Referenced by nfnl_queue_create().

Here is the call graph for this function:

Here is the caller graph for this function:

int nfnl_queue_build_delete_request ( const struct nfnl_queue queue,
struct nl_msg **  result 
)

References nfnl_queue_get_group(), nfnl_queue_test_group(), NFQNL_CFG_CMD_UNBIND, and NLE_MISSING_ATTR.

Referenced by nfnl_queue_delete().

Here is the call graph for this function:

Here is the caller graph for this function:

int nfnl_queue_build_pf_bind ( uint8_t  pf,
struct nl_msg **  result 
)

References NFQNL_CFG_CMD_PF_BIND.

Referenced by nfnl_queue_pf_bind().

Here is the caller graph for this function:

int nfnl_queue_build_pf_unbind ( uint8_t  pf,
struct nl_msg **  result 
)

References NFQNL_CFG_CMD_PF_UNBIND.

Referenced by nfnl_queue_pf_unbind().

Here is the caller graph for this function:

int nfnl_queue_change ( struct nl_sock nlh,
const struct nfnl_queue queue 
)

References nfnl_queue_build_change_request().

Here is the call graph for this function:

char* nfnl_queue_copy_mode2str ( enum nfnl_queue_copy_mode  copy_mode,
char *  buf,
size_t  len 
)

References __type2str(), and ARRAY_SIZE.

Here is the call graph for this function:

int nfnl_queue_create ( struct nl_sock nlh,
const struct nfnl_queue queue 
)

References nfnl_queue_build_create_request().

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

int nfnl_queue_delete ( struct nl_sock nlh,
const struct nfnl_queue queue 
)

References nfnl_queue_build_delete_request().

Here is the call graph for this function:

void nfnl_queue_get ( struct nfnl_queue queue)

References nl_object_get().

Here is the call graph for this function:

enum nfnl_queue_copy_mode nfnl_queue_get_copy_mode ( const struct nfnl_queue queue)
uint32_t nfnl_queue_get_copy_range ( const struct nfnl_queue queue)
uint16_t nfnl_queue_get_group ( const struct nfnl_queue queue)

References nfnl_queue::queue_group.

Referenced by nfnl_queue_build_delete_request().

Here is the caller graph for this function:

uint32_t nfnl_queue_get_maxlen ( const struct nfnl_queue queue)
int nfnl_queue_pf_bind ( struct nl_sock nlh,
uint8_t  pf 
)

References nfnl_queue_build_pf_bind().

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

int nfnl_queue_pf_unbind ( struct nl_sock nlh,
uint8_t  pf 
)

References nfnl_queue_build_pf_unbind().

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

void nfnl_queue_put ( struct nfnl_queue queue)

References nl_object_put().

Here is the call graph for this function:

void nfnl_queue_set_copy_mode ( struct nfnl_queue queue,
enum nfnl_queue_copy_mode  mode 
)

References nfnl_queue::queue_copy_mode.

Referenced by main().

Here is the caller graph for this function:

void nfnl_queue_set_copy_range ( struct nfnl_queue queue,
uint32_t  copy_range 
)

References copy_range, and nfnl_queue::queue_copy_range.

Referenced by main().

Here is the caller graph for this function:

void nfnl_queue_set_group ( struct nfnl_queue queue,
uint16_t  group 
)

References nfnl_queue::queue_group.

Referenced by main().

Here is the caller graph for this function:

void nfnl_queue_set_maxlen ( struct nfnl_queue queue,
uint32_t  maxlen 
)
struct nl_sock* nfnl_queue_socket_alloc ( void  )

References nl_socket_alloc(), and nl_socket_disable_auto_ack().

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

enum nfnl_queue_copy_mode nfnl_queue_str2copy_mode ( const char *  name)

References __str2type(), and ARRAY_SIZE.

Referenced by main().

Here is the call graph for this function:

Here is the caller graph for this function:

int nfnl_queue_test_copy_mode ( const struct nfnl_queue queue)
int nfnl_queue_test_copy_range ( const struct nfnl_queue queue)
int nfnl_queue_test_group ( const struct nfnl_queue queue)

Referenced by nfnl_queue_build_delete_request().

Here is the caller graph for this function:

int nfnl_queue_test_maxlen ( const struct nfnl_queue queue)

Variable Documentation

struct nl_object_ops queue_obj_ops
Initial value:
= {
.oo_name = "netfilter/queue",
.oo_size = sizeof(struct nfnl_queue),
.oo_dump = {
[NL_DUMP_LINE] = nfnl_queue_dump,
[NL_DUMP_DETAILS] = nfnl_queue_dump,
[NL_DUMP_STATS] = nfnl_queue_dump,
},
.oo_compare = nfnl_queue_compare,
.oo_attrs2str = nfnl_queue_attrs2str,
.oo_id_attrs = QUEUE_ATTR_GROUP,
}
Dump object briefly on one line.
Definition: types.h:22
Dump all attributes but no statistics.
Definition: types.h:23
Definition: netlink-types.h:799
Dump all attributes including statistics.
Definition: types.h:24

Referenced by nfnl_queue_alloc().