Electroneum
nftnlrdr.h File Reference
#include "../commonrdr.h"
Include dependency graph for nftnlrdr.h:

Go to the source code of this file.

Functions

int init_redirect (void)
 
void shutdown_redirect (void)
 
int add_redirect_rule2 (const char *ifname, const char *rhost, unsigned short eport, const char *iaddr, unsigned short iport, int proto, const char *desc, unsigned int timestamp)
 
int add_peer_redirect_rule2 (const char *ifname, const char *rhost, unsigned short rport, const char *eaddr, unsigned short eport, const char *iaddr, unsigned short iport, int proto, const char *desc, unsigned int timestamp)
 
int add_filter_rule2 (const char *ifname, const char *rhost, const char *iaddr, unsigned short eport, unsigned short iport, int proto, const char *desc)
 
int delete_redirect_and_filter_rules (unsigned short eport, int proto)
 
int add_peer_dscp_rule2 (const char *ifname, const char *rhost, unsigned short rport, unsigned char dscp, const char *iaddr, unsigned short iport, int proto, const char *desc, unsigned int timestamp)
 
int get_peer_rule_by_index (int index, char *ifname, unsigned short *eport, char *iaddr, int iaddrlen, unsigned short *iport, int *proto, char *desc, int desclen, char *rhost, int rhostlen, unsigned short *rport, unsigned int *timestamp, u_int64_t *packets, u_int64_t *bytes)
 
int get_nat_redirect_rule (const char *nat_chain_name, const char *ifname, unsigned short eport, int proto, char *iaddr, int iaddrlen, unsigned short *iport, char *desc, int desclen, char *rhost, int rhostlen, unsigned int *timestamp, u_int64_t *packets, u_int64_t *bytes)
 
int get_redirect_rule_by_index (int index, char *ifname, unsigned short *eport, char *iaddr, int iaddrlen, unsigned short *iport, int *proto, char *desc, int desclen, char *rhost, int rhostlen, unsigned int *timestamp, u_int64_t *packets, u_int64_t *bytes)
 
unsigned short * get_portmappings_in_range (unsigned short startport, unsigned short endport, int proto, unsigned int *number)
 
int get_nat_ext_addr (struct sockaddr *src, struct sockaddr *dst, uint8_t proto, struct sockaddr *ret_ext)
 
int list_redirect_rule (const char *ifname)
 

Function Documentation

◆ add_filter_rule2()

int add_filter_rule2 ( const char *  ifname,
const char *  rhost,
const char *  iaddr,
unsigned short  eport,
unsigned short  iport,
int  proto,
const char *  desc 
)

◆ add_peer_dscp_rule2()

int add_peer_dscp_rule2 ( const char *  ifname,
const char *  rhost,
unsigned short  rport,
unsigned char  dscp,
const char *  iaddr,
unsigned short  iport,
int  proto,
const char *  desc,
unsigned int  timestamp 
)

◆ add_peer_redirect_rule2()

int add_peer_redirect_rule2 ( const char *  ifname,
const char *  rhost,
unsigned short  rport,
const char *  eaddr,
unsigned short  eport,
const char *  iaddr,
unsigned short  iport,
int  proto,
const char *  desc,
unsigned int  timestamp 
)

◆ add_redirect_rule2()

int add_redirect_rule2 ( const char *  ifname,
const char *  rhost,
unsigned short  eport,
const char *  iaddr,
unsigned short  iport,
int  proto,
const char *  desc,
unsigned int  timestamp 
)

◆ delete_redirect_and_filter_rules()

int delete_redirect_and_filter_rules ( unsigned short  eport,
int  proto 
)

◆ get_nat_ext_addr()

int get_nat_ext_addr ( struct sockaddr *  src,
struct sockaddr *  dst,
uint8_t  proto,
struct sockaddr *  ret_ext 
)

◆ get_nat_redirect_rule()

int get_nat_redirect_rule ( const char *  nat_chain_name,
const char *  ifname,
unsigned short  eport,
int  proto,
char *  iaddr,
int  iaddrlen,
unsigned short *  iport,
char *  desc,
int  desclen,
char *  rhost,
int  rhostlen,
unsigned int *  timestamp,
u_int64_t *  packets,
u_int64_t *  bytes 
)

◆ get_peer_rule_by_index()

int get_peer_rule_by_index ( int  index,
char *  ifname,
unsigned short *  eport,
char *  iaddr,
int  iaddrlen,
unsigned short *  iport,
int *  proto,
char *  desc,
int  desclen,
char *  rhost,
int  rhostlen,
unsigned short *  rport,
unsigned int *  timestamp,
u_int64_t *  packets,
u_int64_t *  bytes 
)

◆ get_portmappings_in_range()

unsigned short* get_portmappings_in_range ( unsigned short  startport,
unsigned short  endport,
int  proto,
unsigned int *  number 
)

◆ get_redirect_rule_by_index()

int get_redirect_rule_by_index ( int  index,
char *  ifname,
unsigned short *  eport,
char *  iaddr,
int  iaddrlen,
unsigned short *  iport,
int *  proto,
char *  desc,
int  desclen,
char *  rhost,
int  rhostlen,
unsigned int *  timestamp,
u_int64_t *  packets,
u_int64_t *  bytes 
)

◆ init_redirect()

int init_redirect ( void  )

◆ list_redirect_rule()

int list_redirect_rule ( const char *  ifname)

◆ shutdown_redirect()

void shutdown_redirect ( void  )