From ca00d4a13a7207da1ea3acf1f0e38ddc27669a4d Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Sun, 18 Jun 2000 19:49:32 +0000 Subject: [PATCH] Fix numbering of routing tables in IPv6 version. --- sysdep/linux/netlink/krt-scan.h | 4 ---- sysdep/linux/netlink/netlink.Y | 5 +++++ 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/sysdep/linux/netlink/krt-scan.h b/sysdep/linux/netlink/krt-scan.h index 2f8fe761..7885f078 100644 --- a/sysdep/linux/netlink/krt-scan.h +++ b/sysdep/linux/netlink/krt-scan.h @@ -15,11 +15,7 @@ * to krt-set.h, krt-iface.h and this file. */ -#ifdef IPV6 -#define NL_NUM_TABLES 1 -#else #define NL_NUM_TABLES 256 -#endif struct krt_scan_params { int table_id; /* Kernel table ID we sync with */ diff --git a/sysdep/linux/netlink/netlink.Y b/sysdep/linux/netlink/netlink.Y index c5dcf620..c448d895 100644 --- a/sysdep/linux/netlink/netlink.Y +++ b/sysdep/linux/netlink/netlink.Y @@ -18,8 +18,13 @@ CF_ADDTO(kern_proto, kern_proto nl_item ';') nl_item: KERNEL TABLE expr { +#ifndef IPV6 if ($3 <= 0 || $3 >= NL_NUM_TABLES) cf_error("Kernel routing table number out of range"); +#else + if ($3 != 254) + cf_error("Linux implementation of IPv6 doesn't support multiple routing tables"); +#endif THIS_KRT->scan.table_id = $3; } ;