summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/ip.h4
-rw-r--r--lib/net.c10
-rw-r--r--lib/net.h3
3 files changed, 10 insertions, 7 deletions
diff --git a/lib/ip.h b/lib/ip.h
index 66fdd8c2..9706b397 100644
--- a/lib/ip.h
+++ b/lib/ip.h
@@ -43,12 +43,8 @@
#define UDP_HEADER_LENGTH 8
#ifdef IPV6
-#define MAX_PREFIX_LENGTH 128
-#define BITS_PER_IP_ADDRESS 128
#define STD_ADDRESS_P_LENGTH 39
#else
-#define MAX_PREFIX_LENGTH 32
-#define BITS_PER_IP_ADDRESS 32
#define STD_ADDRESS_P_LENGTH 15
#endif
diff --git a/lib/net.c b/lib/net.c
index df833e0f..21486a9b 100644
--- a/lib/net.c
+++ b/lib/net.c
@@ -3,6 +3,7 @@
#include "lib/ip.h"
#include "lib/net.h"
+
const u16 net_addr_length[] = {
[NET_IP4] = sizeof(net_addr_ip4),
[NET_IP6] = sizeof(net_addr_ip6),
@@ -10,6 +11,14 @@ const u16 net_addr_length[] = {
[NET_VPN6] = sizeof(net_addr_vpn6)
};
+const u8 net_max_prefix_length[] = {
+ [NET_IP4] = IP4_MAX_PREFIX_LENGTH,
+ [NET_IP6] = IP6_MAX_PREFIX_LENGTH,
+ [NET_VPN4] = IP4_MAX_PREFIX_LENGTH,
+ [NET_VPN6] = IP4_MAX_PREFIX_LENGTH
+};
+
+
int
net_format(const net_addr *N, char *buf, int buflen)
{
@@ -31,7 +40,6 @@ net_format(const net_addr *N, char *buf, int buflen)
return 0;
}
-
ip_addr
net_pxmask(const net_addr *a)
{
diff --git a/lib/net.h b/lib/net.h
index 33686fb5..bc1233bf 100644
--- a/lib/net.h
+++ b/lib/net.h
@@ -19,7 +19,6 @@
#define NET_VPN6 4
#define NET_MAX 5
-
typedef struct net_addr {
u8 type;
u8 pxlen;
@@ -69,7 +68,7 @@ typedef union net_addr_union {
extern const u16 net_addr_length[];
-
+extern const u8 net_max_prefix_length[];
#define NET_ADDR_IP4(prefix,pxlen) \
((net_addr_ip4) { NET_IP4, pxlen, sizeof(net_addr_ip4), prefix })