diff options
author | Stephen Worley <sworley@cumulusnetworks.com> | 2020-03-19 19:29:06 +0100 |
---|---|---|
committer | Stephen Worley <sworley@cumulusnetworks.com> | 2020-03-19 19:30:42 +0100 |
commit | f3f2c78add84a0cfb57e80d99278c134ebfc16fb (patch) | |
tree | 9f5c38d5b87a14f6cda57a526398fd762a54cf62 /pbrd/pbr_vty.c | |
parent | pbrd: properly handle duplicate set vrf XX configs (diff) | |
download | frr-f3f2c78add84a0cfb57e80d99278c134ebfc16fb.tar.xz frr-f3f2c78add84a0cfb57e80d99278c134ebfc16fb.zip |
pbrd: convert gotos in set vrf command to returns
We were doing a bunch of gotos in the set vrf configcode.
The code got complex enough that just returning is easier to read.
Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
Diffstat (limited to 'pbrd/pbr_vty.c')
-rw-r--r-- | pbrd/pbr_vty.c | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/pbrd/pbr_vty.c b/pbrd/pbr_vty.c index 03fbec3b1..dfc8bec1b 100644 --- a/pbrd/pbr_vty.c +++ b/pbrd/pbr_vty.c @@ -423,7 +423,6 @@ DEFPY(pbr_map_vrf, pbr_map_vrf_cmd, "Use the interface's VRF for lookup\n") { struct pbr_map_sequence *pbrms = VTY_GET_CONTEXT(pbr_map_sequence); - int ret = CMD_SUCCESS; if (no) { pbr_map_delete_vrf(pbrms); @@ -434,14 +433,13 @@ DEFPY(pbr_map_vrf, pbr_map_vrf_cmd, pbrms->vrf_lookup = false; pbrms->vrf_unchanged = false; - goto done; + return CMD_SUCCESS; } if (pbrms->nhgrp_name || pbrms->nhg) { vty_out(vty, "A `set nexthop/nexthop-group XX` command already exits, please remove that first\n"); - ret = CMD_WARNING_CONFIG_FAILED; - goto done; + return CMD_WARNING_CONFIG_FAILED; } /* @@ -459,11 +457,11 @@ DEFPY(pbr_map_vrf, pbr_map_vrf_cmd, != 0) goto vrf_exists; - goto done; + return CMD_SUCCESS; } else if (!vrf_name && pbrms->vrf_unchanged) { /* Unchanged specified and unchanged already exists */ - goto done; + return CMD_SUCCESS; } else if (vrf_name && pbrms->vrf_unchanged) { /* New vrf specified and unchanged is already set */ @@ -479,8 +477,7 @@ DEFPY(pbr_map_vrf, pbr_map_vrf_cmd, if (!pbr_vrf_lookup_by_name(vrf_name)) { vty_out(vty, "Specified: %s is non-existent\n", vrf_name); - ret = CMD_WARNING_CONFIG_FAILED; - goto done; + return CMD_WARNING_CONFIG_FAILED; } pbrms->vrf_lookup = true; @@ -490,13 +487,11 @@ DEFPY(pbr_map_vrf, pbr_map_vrf_cmd, pbr_map_check(pbrms); -done: - return ret; + return CMD_SUCCESS; vrf_exists: vty_out(vty, SET_VRF_EXISTS_STR); - ret = CMD_WARNING_CONFIG_FAILED; - return ret; + return CMD_WARNING_CONFIG_FAILED; } DEFPY (pbr_policy, |