diff options
Diffstat (limited to 'target/linux/realtek/files/include/net/rtl/rtl865x_nat.h')
-rw-r--r-- | target/linux/realtek/files/include/net/rtl/rtl865x_nat.h | 242 |
1 files changed, 121 insertions, 121 deletions
diff --git a/target/linux/realtek/files/include/net/rtl/rtl865x_nat.h b/target/linux/realtek/files/include/net/rtl/rtl865x_nat.h index 1471a8fee..4cdbc60e9 100644 --- a/target/linux/realtek/files/include/net/rtl/rtl865x_nat.h +++ b/target/linux/realtek/files/include/net/rtl/rtl865x_nat.h @@ -1,122 +1,122 @@ -#ifndef RTL865X_NAT_H -#define RTL865X_NAT_H - -#define FLAG_QOS_ENABLE 1 - -/* NAT timeout value */ -#define TCP_TIMEOUT 120 /* 120 secs */ -#define UDP_TIMEOUT 90 /* 90 secs */ -#define TCP_OVERRIDE_ELASPED_THRESHOLD 60 /* 60 secs */ -#define UDP_OVERRIDE_ELASPED_THRESHOLD 30 /* 30 secs */ - -#define TCP_CLOSED_FLOW 8 - -#define RTL865X_PROTOCOL_UDP 0 -#define RTL865X_PROTOCOL_TCP 1 - -#define NAT_INBOUND 0x00000001 -#define NAT_OUTBOUND 0x00000002 -#define NAT_PRI_PROCESSED 0x00000004 -#define NAT_PRI_HALF_PROCESSED 0x00000008 - -#define NAT_PRE_RESERVED 0x00000100 -#define RESERVE_EXPIRE_TIME 3 /*uinit:seconds*/ - -#define NAT_INUSE(_n_) ( ((_n_)->flags&(NAT_INBOUND|NAT_OUTBOUND)) ) -#define SET_NAT_FLAGS(_n_, _v_) ((_n_)->flags |= (_v_)) -#define CLR_NAT_FLAGS(_n_, _v_) ((_n_)->flags &= (~(_v_))) -#define NAT_INVALID(_n_) ( ((_n_)->flags=0) ) - -#define MAX_EXTPORT_TRY_CNT 8 - -#define RTL_NAPT_ACCELERATION_FAIL -1 -#define RTL_NAPT_FULL_ACCELERATION 0 -#define RTL_NAPT_OUTBOUND_ACCELERATION 1 -#define RTL_NAPT_INBOUND_ACCELERATION 2 - -#define CONFIG_RTL_INBOUND_COLLISION_AVOIDANCE -#define CONFIG_RTL_HALF_NAPT_ACCELERATION - -typedef struct _rtl865x_napt_entry +#ifndef RTL865X_NAT_H
+#define RTL865X_NAT_H
+
+#define FLAG_QOS_ENABLE 1
+
+/* NAT timeout value */
+#define TCP_TIMEOUT 120 /* 120 secs */
+#define UDP_TIMEOUT 90 /* 90 secs */
+#define TCP_OVERRIDE_ELASPED_THRESHOLD 60 /* 60 secs */
+#define UDP_OVERRIDE_ELASPED_THRESHOLD 30 /* 30 secs */
+
+#define TCP_CLOSED_FLOW 8
+
+#define RTL865X_PROTOCOL_UDP 0
+#define RTL865X_PROTOCOL_TCP 1
+
+#define NAT_INBOUND 0x00000001
+#define NAT_OUTBOUND 0x00000002
+#define NAT_PRI_PROCESSED 0x00000004
+#define NAT_PRI_HALF_PROCESSED 0x00000008
+
+#define NAT_PRE_RESERVED 0x00000100
+#define RESERVE_EXPIRE_TIME 3 /*uinit:seconds*/
+
+#define NAT_INUSE(_n_) ( ((_n_)->flags&(NAT_INBOUND|NAT_OUTBOUND)) )
+#define SET_NAT_FLAGS(_n_, _v_) ((_n_)->flags |= (_v_))
+#define CLR_NAT_FLAGS(_n_, _v_) ((_n_)->flags &= (~(_v_)))
+#define NAT_INVALID(_n_) ( ((_n_)->flags=0) )
+
+#define MAX_EXTPORT_TRY_CNT 8
+
+#define RTL_NAPT_ACCELERATION_FAIL -1
+#define RTL_NAPT_FULL_ACCELERATION 0
+#define RTL_NAPT_OUTBOUND_ACCELERATION 1
+#define RTL_NAPT_INBOUND_ACCELERATION 2
+
+#define CONFIG_RTL_INBOUND_COLLISION_AVOIDANCE
+#define CONFIG_RTL_HALF_NAPT_ACCELERATION
+
+typedef struct _rtl865x_napt_entry
{ - uint32 protocol; //RTL865X_PROTOCOL_UDP or RTL865X_PROTOCOL_TCP - ipaddr_t intIp; - uint32 intPort; - ipaddr_t extIp; - uint32 extPort; - ipaddr_t remIp; - uint32 remPort; -}rtl865x_napt_entry; - -typedef struct _rtl865x_priority -{ - int32 uplinkPrio; - int32 downlinkPrio; -}rtl865x_priority; - -typedef struct _rtl865x_qos_mark -{ - int32 uplinkMark; - int32 downlinkMark; -}rtl865x_qos_mark; - -int32 rtl865x_nat_init(void); -int32 rtl865x_nat_reinit(void); -/* -@func enum RTL_RESULT | rtl865x_addNaptConnection | Add a NAPT Flow -@parm enum RTL_NP_PROTOCOL | protocol | The protocol to add -@parm ipaddr_t | intIp | Internal IP address -@parm uint32 | intPort | Internal Port -@parm ipaddr_t | extIp | External IP address -@parm uint32 | extPort | External Port -@parm ipaddr_t | remIp | Remote IP address -@parm uint32 | remPort | Remote Port -@parm enum RTL_NP_FLAGS | flags | reserved for future used -@rvalue RTL_SUCCESS | Add success (can be ASIC-accelerated) -@rvalue RTL_SUCCESS | Add success (cannot be ASIC-accelerated) -@rvalue RTL_ERROR_PARAMETER | Error parameter is given -@rvalue RTL_EXIST | Add an existed flow -@rvalue RTL_FAILED | General failure -@comm - Add a NAPT Flow Entry to L4 TCP/UDP NAPT Table(1024-Entry) -@devnote - Insert into ip_nat_setup_info() function in file net/ipv4/netfilter/ip_nat_core.c -*/ -int32 rtl865x_addNaptConnection(rtl865x_napt_entry *naptEntry, rtl865x_priority *prio); -/* -@func enum RTL_RESULT | rtl865x_delNaptConnection | Delete a NAPT Flow -@parm enum RTL_NP_PROTOCOL | protocol | The protocol to delete -@parm ipaddr_t | intIp | Internal IP address -@parm uint32 | intPort | Internal Port -@parm ipaddr_t | extIp | External IP address -@parm uint32 | extPort | External Port -@parm ipaddr_t | remIp | Remote IP address -@parm uint32 | remPort | Remote Port -@rvalue RTL_SUCCESS | Delete success -@rvalue RTL_NONEXIST | Delete a non-existed flow -@rvalue RTL_FAILED | General failure -@comm - Delete a NAPT Flow Entry of L4 TCP/UDP NAPT Table(1024-Entry) -@devnote - Insert into ip_nat_cleanup_conntrack() function in file net/ipv4/netfilter/ip_nat_core.c -*/ -int32 rtl865x_delNaptConnection(rtl865x_napt_entry *naptEntry); - -int32 rtl865x_naptSync(rtl865x_napt_entry *naptEntry, uint32 refresh); - -#if defined (CONFIG_RTL_INBOUND_COLLISION_AVOIDANCE) -int rtl865x_optimizeExtPort(unsigned short origDelta, unsigned int rangeSize, unsigned short *newDelta); - -int rtl865x_getAsicNaptHashScore(rtl865x_napt_entry *naptEntry, - uint32 *naptHashScore); - -int32 rtl865x_preReserveConn(rtl865x_napt_entry *naptEntry); - -#endif -#if defined(CONFIG_RTL_HARDWARE_NAT) -int32 rtl_nat_expire_interval_update(int proto, int32 interval); -int32 rtl865x_nat_reinit(void); -#endif - -#endif - + uint32 protocol; //RTL865X_PROTOCOL_UDP or RTL865X_PROTOCOL_TCP
+ ipaddr_t intIp;
+ uint32 intPort;
+ ipaddr_t extIp;
+ uint32 extPort;
+ ipaddr_t remIp;
+ uint32 remPort;
+}rtl865x_napt_entry;
+
+typedef struct _rtl865x_priority
+{
+ int32 uplinkPrio;
+ int32 downlinkPrio;
+}rtl865x_priority;
+
+typedef struct _rtl865x_qos_mark
+{
+ int32 uplinkMark;
+ int32 downlinkMark;
+}rtl865x_qos_mark;
+
+int32 rtl865x_nat_init(void);
+int32 rtl865x_nat_reinit(void);
+/*
+@func enum RTL_RESULT | rtl865x_addNaptConnection | Add a NAPT Flow
+@parm enum RTL_NP_PROTOCOL | protocol | The protocol to add
+@parm ipaddr_t | intIp | Internal IP address
+@parm uint32 | intPort | Internal Port
+@parm ipaddr_t | extIp | External IP address
+@parm uint32 | extPort | External Port
+@parm ipaddr_t | remIp | Remote IP address
+@parm uint32 | remPort | Remote Port
+@parm enum RTL_NP_FLAGS | flags | reserved for future used
+@rvalue RTL_SUCCESS | Add success (can be ASIC-accelerated)
+@rvalue RTL_SUCCESS | Add success (cannot be ASIC-accelerated)
+@rvalue RTL_ERROR_PARAMETER | Error parameter is given
+@rvalue RTL_EXIST | Add an existed flow
+@rvalue RTL_FAILED | General failure
+@comm
+ Add a NAPT Flow Entry to L4 TCP/UDP NAPT Table(1024-Entry)
+@devnote
+ Insert into ip_nat_setup_info() function in file net/ipv4/netfilter/ip_nat_core.c
+*/
+int32 rtl865x_addNaptConnection(rtl865x_napt_entry *naptEntry, rtl865x_priority *prio);
+/*
+@func enum RTL_RESULT | rtl865x_delNaptConnection | Delete a NAPT Flow
+@parm enum RTL_NP_PROTOCOL | protocol | The protocol to delete
+@parm ipaddr_t | intIp | Internal IP address
+@parm uint32 | intPort | Internal Port
+@parm ipaddr_t | extIp | External IP address
+@parm uint32 | extPort | External Port
+@parm ipaddr_t | remIp | Remote IP address
+@parm uint32 | remPort | Remote Port
+@rvalue RTL_SUCCESS | Delete success
+@rvalue RTL_NONEXIST | Delete a non-existed flow
+@rvalue RTL_FAILED | General failure
+@comm
+ Delete a NAPT Flow Entry of L4 TCP/UDP NAPT Table(1024-Entry)
+@devnote
+ Insert into ip_nat_cleanup_conntrack() function in file net/ipv4/netfilter/ip_nat_core.c
+*/
+int32 rtl865x_delNaptConnection(rtl865x_napt_entry *naptEntry);
+
+int32 rtl865x_naptSync(rtl865x_napt_entry *naptEntry, uint32 refresh);
+
+#if defined (CONFIG_RTL_INBOUND_COLLISION_AVOIDANCE)
+int rtl865x_optimizeExtPort(unsigned short origDelta, unsigned int rangeSize, unsigned short *newDelta);
+
+int rtl865x_getAsicNaptHashScore(rtl865x_napt_entry *naptEntry,
+ uint32 *naptHashScore);
+
+int32 rtl865x_preReserveConn(rtl865x_napt_entry *naptEntry);
+
+#endif
+#if defined(CONFIG_RTL_HARDWARE_NAT)
+int32 rtl_nat_expire_interval_update(int proto, int32 interval);
+int32 rtl865x_nat_reinit(void);
+#endif
+
+#endif
+
|