diff options
author | paul <paul> | 2003-05-23 06:58:44 +0000 |
---|---|---|
committer | paul <paul> | 2003-05-23 06:58:44 +0000 |
commit | 68f43848fa0f8ac16c768bafb8891495dcf232ae (patch) | |
tree | 8121fe0ee7c19001dd3c37c798e8368681a59493 /lib | |
parent | 8d6b00e4f34dfb6f627b49713bf80b0745b50abc (diff) |
From: Hasso Tepper <hasso@estpak.ee>
http://hasso.linux.ee/zebra/ht-no_interface-23052003.patch
Add the 'no interface' command to all the daemons and vtysh.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/if.c | 26 | ||||
-rw-r--r-- | lib/if.h | 1 |
2 files changed, 27 insertions, 0 deletions
@@ -440,6 +440,32 @@ DEFUN (interface, return CMD_SUCCESS; } +DEFUN_NOSH (no_interface, + no_interface_cmd, + "no interface IFNAME", + NO_STR + "Delete a pseudo interface's configuration\n" + "Interface's name\n") +{ + // deleting interface + struct interface *ifp; + + ifp = if_lookup_by_name (argv[0]); + + if (ifp == NULL) + return CMD_SUCCESS; + + if (if_is_up(ifp)) { + vty_out (vty, "%% Only inactive interfaces can be deleted%s", + VTY_NEWLINE); + return CMD_WARNING; + } + + if_delete(ifp); + + return CMD_SUCCESS; +} + /* For debug purpose. */ DEFUN (show_address, show_address_cmd, @@ -220,6 +220,7 @@ extern list iflist; extern struct cmd_element interface_desc_cmd; extern struct cmd_element no_interface_desc_cmd; extern struct cmd_element interface_cmd; +extern struct cmd_element no_interface_cmd; extern struct cmd_element interface_pseudo_cmd; extern struct cmd_element no_interface_pseudo_cmd; |