summaryrefslogtreecommitdiff
path: root/sysdep/unix/krt.Y
diff options
context:
space:
mode:
authorOndrej Filip <feela@network.cz>2012-05-11 00:01:29 +0200
committerOndrej Filip <feela@network.cz>2012-05-11 00:01:29 +0200
commit72b2db8db7534c52e928618410ec1f18787752c8 (patch)
tree7eee7f4c26a36f72e0700e9e5d78056f5329f85c /sysdep/unix/krt.Y
parent2795700c3158fa52b6cf957e9d0b9ad4a27c67a5 (diff)
parent95616c820248018f4999972cad315f2da60e4960 (diff)
Merge branch 'master' of ssh://git.nic.cz/bird
Diffstat (limited to 'sysdep/unix/krt.Y')
-rw-r--r--sysdep/unix/krt.Y21
1 files changed, 2 insertions, 19 deletions
diff --git a/sysdep/unix/krt.Y b/sysdep/unix/krt.Y
index c0141f57..469c136d 100644
--- a/sysdep/unix/krt.Y
+++ b/sysdep/unix/krt.Y
@@ -25,17 +25,7 @@ CF_GRAMMAR
CF_ADDTO(proto, kern_proto '}')
-kern_proto_start: proto_start KERNEL {
-#ifndef CONFIG_MULTIPLE_TABLES
- if (cf_krt)
- cf_error("Kernel protocol already defined");
-#endif
- cf_krt = this_proto = proto_config_new(&proto_unix_kernel, sizeof(struct krt_config), $1);
- THIS_KRT->scan_time = 60;
- THIS_KRT->learn = THIS_KRT->persist = 0;
- krt_scan_construct(THIS_KRT);
- krt_set_construct(THIS_KRT);
- }
+kern_proto_start: proto_start KERNEL { this_proto = krt_init_config($1); }
;
CF_ADDTO(kern_proto, kern_proto_start proto_name '{')
@@ -62,14 +52,7 @@ kern_item:
CF_ADDTO(proto, kif_proto '}')
-kif_proto_start: proto_start DEVICE {
- if (cf_kif)
- cf_error("Kernel device protocol already defined");
- cf_kif = this_proto = proto_config_new(&proto_unix_iface, sizeof(struct kif_config), $1);
- THIS_KIF->scan_time = 60;
- init_list(&THIS_KIF->primary);
- krt_if_construct(THIS_KIF);
- }
+kif_proto_start: proto_start DEVICE { this_proto = kif_init_config($1); }
;
CF_ADDTO(kif_proto, kif_proto_start proto_name '{')