From 286e2011d22ea6914d5f2db5de3f11911a1fb663 Mon Sep 17 00:00:00 2001 From: "Ondrej Zajicek (work)" Date: Thu, 12 May 2016 16:04:47 +0200 Subject: Miscellaneous minor fixes --- conf/confbase.Y | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'conf/confbase.Y') diff --git a/conf/confbase.Y b/conf/confbase.Y index d5fd2133..e64d7593 100644 --- a/conf/confbase.Y +++ b/conf/confbase.Y @@ -201,21 +201,17 @@ net_ip6_: IP6 '/' NUM net_roa4_: net_ip4_ MAX NUM AS NUM { $$ = cfg_alloc(sizeof(net_addr_roa4)); - net_fill_roa4($$, ((net_addr_ip4 *)&$1)->prefix, $1.pxlen, $3, $5); - if ($3 < 0 || $3 > IP4_MAX_PREFIX_LENGTH) + net_fill_roa4($$, net4_prefix(&$1), net4_pxlen(&$1), $3, $5); + if ($3 < net4_pxlen(&$1) || $3 > IP4_MAX_PREFIX_LENGTH) cf_error("Invalid max prefix length %d", $3); - if (((net_addr_roa4 *) $$)->max_pxlen < ($$)->pxlen) - cf_error("Maximum prefix length %d must be >= prefix length %d", ((net_addr_roa4 *) $$)->max_pxlen, ($$)->pxlen); }; net_roa6_: net_ip6_ MAX NUM AS NUM { $$ = cfg_alloc(sizeof(net_addr_roa6)); - net_fill_roa6($$, ((net_addr_ip6 *)&$1)->prefix, $1.pxlen, $3, $5); - if ($3 < 0 || $3 > IP6_MAX_PREFIX_LENGTH) + net_fill_roa6($$, net6_prefix(&$1), net6_pxlen(&$1), $3, $5); + if ($3 < net6_pxlen(&$1) || $3 > IP6_MAX_PREFIX_LENGTH) cf_error("Invalid max prefix length %d", $3); - if (((net_addr_roa6 *) $$)->max_pxlen < ($$)->pxlen) - cf_error("Maximum prefix length %d must be >= prefix length %d", ((net_addr_roa6 *) $$)->max_pxlen, ($$)->pxlen); }; net_ip_: net_ip4_ | net_ip6_ ; -- cgit v1.2.3