]> git.proxmox.com Git - mirror_frr.git/commit - lib/vty.h
*: remove the configuration lock from all daemons
authorRenato Westphal <renato@opensourcerouting.org>
Mon, 26 Nov 2018 18:47:22 +0000 (16:47 -0200)
committerRenato Westphal <renato@opensourcerouting.org>
Mon, 26 Nov 2018 18:47:35 +0000 (16:47 -0200)
commitf344c66ea358c151a218e986173e60bb0295e003
tree77515eb03791559325a50336ad170cb6b8832cd2
parent98d8359fe710f08753a337911b04612da5218b2b
*: remove the configuration lock from all daemons

A while ago all FRR configuration commands were converted to use the
QOBJ infrastructure to keep track of configuration objects. This
means the configuration lock isn't necessary anymore because the
QOBJ code detects when someones tries to edit a configuration object
that was deleted and react accordingly (log an error and abort the
command).  The possibility of accessing dangling pointers doesn't
exist anymore since vty->index was removed.

Summary of the changes:
* remove the configuration lock and the vty_config_lockless() function.
* rename vty_config_unlock() to vty_config_exit() since we need to
  clean up a few things when exiting from the configuration mode.
* rename vty_config_lock() to vty_config_enter() to remove code
  duplication that existed between the three different "configuration"
  commands (terminal, private and exclusive).

Configuration commands converted to the new northbound model don't
need the configuration lock either since the northbound API also
detects when someone tries to edit a configuration object that
doesn't exist anymore.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
bgpd/bgp_rpki.c
isisd/isis_main.c
ldpd/ldpd.c
lib/command.c
lib/northbound_cli.c
lib/vty.c
lib/vty.h
ripd/rip_main.c
zebra/main.c