ok?
(benno_check_rdomain.diff)
diff --git usr.sbin/bgpd/config.c usr.sbin/bgpd/config.c
index 2a2e5dfa314..4f8134e6b68 100644
--- usr.sbin/bgpd/config.c
+++ usr.sbin/bgpd/config.c
@@ -46,6 +46,7 @@ struct bgpd_config *
new_config(void)
{
struct bgpd_config *conf;
+ u_int rdomid;
if ((conf = calloc(1, sizeof(struct bgpd_config))) == NULL)
fatal(NULL);
@@ -54,6 +55,10 @@ new_config(void)
conf->bgpid = get_bgpid();
conf->fib_priority = RTP_BGP;
conf->default_tableid = getrtable();
+ ktable_exists(conf->default_tableid, &rdomid);
+ if (rdomid != conf->default_tableid)
+ fatalx("current routing table %u is not a routing domain",
+ conf->default_tableid);
if (asprintf(&conf->csock, "%s.%d", SOCKET_NAME,
conf->default_tableid) == -1)