libnetfilter_queue  1.0.5
Modules | Functions
UDP helper functions
Collaboration diagram for UDP helper functions:

Modules

 Internal UDP functions
 

Functions

struct udphdr * nfq_udp_get_hdr (struct pkt_buff *pktb)
 
void * nfq_udp_get_payload (struct udphdr *udph, struct pkt_buff *pktb)
 
unsigned int nfq_udp_get_payload_len (struct udphdr *udph, struct pkt_buff *pktb)
 
int nfq_udp_mangle_ipv4 (struct pkt_buff *pktb, unsigned int match_offset, unsigned int match_len, const char *rep_buffer, unsigned int rep_len)
 
int nfq_udp_mangle_ipv6 (struct pkt_buff *pktb, unsigned int match_offset, unsigned int match_len, const char *rep_buffer, unsigned int rep_len)
 
int nfq_udp_snprintf (char *buf, size_t size, const struct udphdr *udph)
 

Detailed Description

Function Documentation

◆ nfq_udp_get_hdr()

struct udphdr* nfq_udp_get_hdr ( struct pkt_buff *  pktb)

nfq_udp_get_hdr - get the UDP header.

Parameters
pktbPointer to userspace network packet buffer
Returns
validated pointer to the UDP header or NULL if the UDP header was not set or if a minimal length check fails.
Note
You have to call nfq_ip_set_transport_header() or nfq_ip6_set_transport_header() first to set the UDP header.

Definition at line 43 of file udp.c.

◆ nfq_udp_get_payload()

void* nfq_udp_get_payload ( struct udphdr *  udph,
struct pkt_buff *  pktb 
)

nfq_udp_get_payload - get the UDP packet payload.

Parameters
udphPointer to UDP header
pktbPointer to userspace network packet buffer
Returns
Pointer to the UDP payload, or NULL if malformed UDP packet.

Definition at line 62 of file udp.c.

◆ nfq_udp_get_payload_len()

unsigned int nfq_udp_get_payload_len ( struct udphdr *  udph,
struct pkt_buff *  pktb 
)

nfq_udp_get_payload_len - get the udp packet payload.

Parameters
udphPointer to UDP header
pktbPointer to userspace network packet buffer
Returns
Length of UDP payload (user data)

Definition at line 84 of file udp.c.

◆ nfq_udp_mangle_ipv4()

int nfq_udp_mangle_ipv4 ( struct pkt_buff *  pktb,
unsigned int  match_offset,
unsigned int  match_len,
const char *  rep_buffer,
unsigned int  rep_len 
)

nfq_udp_mangle_ipv4 - Mangle UDP/IPv4 packet buffer

Parameters
pktbPointer to network packet buffer
match_offsetOffset from start of UDP data of content that you want to mangle
match_lenLength of the existing content you want to mangle
rep_bufferPointer to data you want to use to replace current content
rep_lenLength of data you want to use to replace current content
Returns
1 for success and 0 for failure. See pktb_mangle() for failure case
Note
This function updates the IPv4 and UDP lengths and recalculates their checksums for you.

Definition at line 150 of file udp.c.

◆ nfq_udp_mangle_ipv6()

int nfq_udp_mangle_ipv6 ( struct pkt_buff *  pktb,
unsigned int  match_offset,
unsigned int  match_len,
const char *  rep_buffer,
unsigned int  rep_len 
)

nfq_udp_mangle_ipv6 - Mangle UDP/IPv6 packet buffer

Parameters
pktbPointer to network packet buffer
match_offsetOffset from start of UDP data of content that you want to mangle
match_lenLength of the existing content you want to mangle
rep_bufferPointer to data you want to use to replace current content
rep_lenLength of data you want to use to replace current content
Returns
1 for success and 0 for failure. See pktb_mangle() for failure case
Note
This function updates the IPv6 and UDP lengths and recalculates the UDP checksum for you.

Definition at line 184 of file udp.c.

◆ nfq_udp_snprintf()

int nfq_udp_snprintf ( char *  buf,
size_t  size,
const struct udphdr *  udph 
)

nfq_pkt_snprintf_udp_hdr - print udp header into one buffer in a humnan readable way

Parameters
bufpointer to buffer that is used to print the object
sizesize of the buffer (or remaining room in it).
udphpointer to a valid udp header.
Returns
The number of characters notionally written (excluding trailing NUL)
See also
snprintf(3)

Definition at line 220 of file udp.c.