diff mbox series

[iproute2] ip-rule/trivial: add comment about json key "to_tbl" for unspecific rule action

Message ID 20190219140331.16630-1-thaller@redhat.com
State Changes Requested
Delegated to: stephen hemminger
Headers show
Series [iproute2] ip-rule/trivial: add comment about json key "to_tbl" for unspecific rule action | expand

Commit Message

Thomas Haller Feb. 19, 2019, 2:03 p.m. UTC
The key should not be called "to_tbl" because it is exactly
not a FR_ACT_TO_TBL action.

    # ip rule add blackhole
    # ip -j rule | python -m json.tool
    ...
    {
        "priority": 0,
        "src": "all",
        "to_tbl": "blackhole"
    },

Still, as this is already released API from v4.17.0, stick to it.
Only add a comment for this oddity.

Related: 0dd4ccc56c0e ("iprule: add json support")

Signed-off-by: Thomas Haller <thaller@redhat.com>
---
If it is still permissible to change the API, I can also send a patch to
rename "to_tbl" key to "action".

 ip/iprule.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Stephen Hemminger Feb. 19, 2019, 6:19 p.m. UTC | #1
On Tue, 19 Feb 2019 15:03:31 +0100
Thomas Haller <thaller@redhat.com> wrote:

> The key should not be called "to_tbl" because it is exactly
> not a FR_ACT_TO_TBL action.
> 
>     # ip rule add blackhole
>     # ip -j rule | python -m json.tool
>     ...
>     {
>         "priority": 0,
>         "src": "all",
>         "to_tbl": "blackhole"
>     },
> 
> Still, as this is already released API from v4.17.0, stick to it.
> Only add a comment for this oddity.
> 
> Related: 0dd4ccc56c0e ("iprule: add json support")
> 
> Signed-off-by: Thomas Haller <thaller@redhat.com>
> ---
> If it is still permissible to change the API, I can also send a patch to
> rename "to_tbl" key to "action".
> 
>  ip/iprule.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/ip/iprule.c b/ip/iprule.c
> index 2f58d8c2..aea175aa 100644
> --- a/ip/iprule.c
> +++ b/ip/iprule.c
> @@ -459,6 +459,8 @@ int print_rule(struct nlmsghdr *n, void *arg)
>  	} else if (frh->action == FR_ACT_NOP) {
>  		print_null(PRINT_ANY, "nop", "nop", NULL);
>  	} else if (frh->action != FR_ACT_TO_TBL) {
> +		/* The action is not(!) to-tbl, however for historic
> +		 * reasons, this JSON key is called "to_tbl". */
>  		print_string(PRINT_ANY, "to_tbl", "%s",
>  			     rtnl_rtntype_n2a(frh->action, b1, sizeof(b1)));
>  	}

Just fix it and add fixes tag. JSON has been only added for a short time.
diff mbox series

Patch

diff --git a/ip/iprule.c b/ip/iprule.c
index 2f58d8c2..aea175aa 100644
--- a/ip/iprule.c
+++ b/ip/iprule.c
@@ -459,6 +459,8 @@  int print_rule(struct nlmsghdr *n, void *arg)
 	} else if (frh->action == FR_ACT_NOP) {
 		print_null(PRINT_ANY, "nop", "nop", NULL);
 	} else if (frh->action != FR_ACT_TO_TBL) {
+		/* The action is not(!) to-tbl, however for historic
+		 * reasons, this JSON key is called "to_tbl". */
 		print_string(PRINT_ANY, "to_tbl", "%s",
 			     rtnl_rtntype_n2a(frh->action, b1, sizeof(b1)));
 	}