summaryrefslogtreecommitdiffstats
path: root/target/linux/realtek/files/drivers/net/rtl819x/l3Driver/rtl865x_ip.h
diff options
context:
space:
mode:
authorRoman Yeryomin <roman@advem.lv>2012-09-13 00:40:35 +0300
committerRoman Yeryomin <roman@advem.lv>2013-05-26 00:44:46 +0300
commita27354c9021a8423ef8c7d2bffad49cbf639eec1 (patch)
tree2355929a4b8cf1888cd0797cfabdb42e0077c524 /target/linux/realtek/files/drivers/net/rtl819x/l3Driver/rtl865x_ip.h
parent24a776baeb5d3cd903b144c89ceb11c5bc36a49e (diff)
Add realtek target files
Signed-off-by: Roman Yeryomin <roman@advem.lv>
Diffstat (limited to 'target/linux/realtek/files/drivers/net/rtl819x/l3Driver/rtl865x_ip.h')
-rw-r--r--target/linux/realtek/files/drivers/net/rtl819x/l3Driver/rtl865x_ip.h53
1 files changed, 53 insertions, 0 deletions
diff --git a/target/linux/realtek/files/drivers/net/rtl819x/l3Driver/rtl865x_ip.h b/target/linux/realtek/files/drivers/net/rtl819x/l3Driver/rtl865x_ip.h
new file mode 100644
index 000000000..cf62525a8
--- /dev/null
+++ b/target/linux/realtek/files/drivers/net/rtl819x/l3Driver/rtl865x_ip.h
@@ -0,0 +1,53 @@
+/*
+* Copyright c Realtek Semiconductor Corporation, 2008
+* All rights reserved.
+*
+* Program : ip table driver
+* Abstract :
+* Author : hyking (hyking_liu@realsil.com.cn)
+*/
+#ifndef RTL865X_IP_H
+#define RTL865X_IP_H
+
+#include <net/rtl/rtl865x_ip_api.h>
+
+#if !defined(REDUCE_MEMORY_SIZE_FOR_16M)
+#define REDUCE_MEMORY_SIZE_FOR_16M
+#endif
+#if defined (CONFIG_RTL_LOCAL_PUBLIC)
+#define IP_NUMBER 8
+#else
+#if defined(REDUCE_MEMORY_SIZE_FOR_16M)
+#define IP_NUMBER 2
+#else
+#define IP_NUMBER 8
+#endif
+#endif
+
+typedef struct rtl865x_ip_entry_s
+{
+ ipaddr_t intIp; /*internal ip address*/
+ ipaddr_t extIp; /*external ip address*/
+ uint32 valid:1, /*valid*/
+ type:2, /*napt/nat/ls/reserved*/
+ defNaptIp:1; /*this ip entry is default napt ip address?*/
+
+#if 1
+ /*now, this information is invalid...*/
+ void *nexthop; /*point to a nexthop entry,in preversion SoC,
+ *used for multiple session hardware forwarding...
+ */
+#endif
+}rtl865x_ip_entry_t;
+
+
+int32 rtl865x_initIpTable(void);
+int32 rtl865x_reinitIpTable(void);
+//int32 rtl865x_addIp(ipaddr_t intIp, ipaddr_t extIp, uint32 ip_type);
+//int32 rtl865x_delIp(ipaddr_t extIp);
+int32 rtl865x_getIPIdx(rtl865x_ip_entry_t *entry, int32 *idx);
+int32 rtl865x_getIpIdxByExtIp(ipaddr_t extIp, int32 *idx);
+
+
+#endif
+