summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJan Moskyto Matejka <mq@ucw.cz>2015-12-11 15:35:37 +0100
committerOndrej Zajicek (work) <santiago@crfreenet.org>2015-12-19 15:57:09 +0100
commitd7661fbe9dea980c61daa01a11a9aa59fa7be426 (patch)
treeba6c715e5b4cb1ba638dc5b75e14008a0e6f5e84 /lib
parent9b136840d90cce887cd139054c3f0a7d8b9f57d2 (diff)
Removed BITS_PER_IP_ADDRESS, MAX_PREFIX_LENGTH, BIRD_AF
Explicit setting of AF_INET(6|) in IP socket creation. BFD set to listen on v6, without setting the V6ONLY flag to catch both v4 and v6 traffic. Squashing and minor changes by Ondrej Santiago Zajicek
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 })