]> git.puffer.fish Git - mirror/frr.git/commitdiff
lib: Relax usage of `ip prefix-list A.B.C.D/M ge Y`
authorDonald Sharp <sharpd@nvidia.com>
Fri, 9 Oct 2020 00:36:22 +0000 (20:36 -0400)
committerIgor Ryzhov <iryzhov@nfware.com>
Wed, 28 Oct 2020 18:35:48 +0000 (21:35 +0300)
Currently the prefix length M must be less than Y.
Relax this restriction to allow M to be less than or equal
to Y.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
lib/filter_nb.c

index b253743db8eadbfdabb4674afb6fb7ab33f2f521..1d522bdbec56b9c890aa57b6a5dc069a709c8b28 100644 (file)
@@ -77,11 +77,11 @@ static enum nb_error prefix_list_length_validate(struct nb_cb_modify_args *args)
 
        /*
         * Check rule:
-        * prefix length < ge.
+        * prefix length <= ge.
         */
        if (yang_dnode_exists(args->dnode, xpath_ge)) {
                ge = yang_dnode_get_uint8(args->dnode, xpath_ge);
-               if (p.prefixlen >= ge)
+               if (p.prefixlen > ge)
                        goto log_and_fail;
        }
 
@@ -102,7 +102,7 @@ static enum nb_error prefix_list_length_validate(struct nb_cb_modify_args *args)
 log_and_fail:
        snprintfrr(
                args->errmsg, args->errmsg_len,
-               "Invalid prefix range for %pFX: Make sure that mask length < ge <= le",
+               "Invalid prefix range for %pFX: Make sure that mask length <= ge <= le",
                &p);
        return NB_ERR_VALIDATION;
 }