diff options
| author | Christian Hopps <chopps@labn.net> | 2023-06-18 16:19:54 -0400 |
|---|---|---|
| committer | Christian Hopps <chopps@labn.net> | 2023-06-25 04:46:54 -0400 |
| commit | c10f8e6da6ec7bc032c9d8da5efcf598b60c9b2c (patch) | |
| tree | d38eb6bd449bfe81f34ad8e80eb908adfb7e3d24 /lib/command.c | |
| parent | 318de85f628c41570dfef79558868fe786c4c356 (diff) | |
mgmtd: KISS the locking code
Move away from things like "lock if not locked" type code, require the
user has locked prior to geting to that point.
For now we warn if we are taking a lock we already had; however, this
should really be a failure point.
New requirements:
SETCFG -
not implicit commit - requires user has locked candidate DS and they
must unlock after
implicit commit - requires user has locked candidate and running DS
both locks will be unlocked on reply to the SETCFG
COMMITCFG -
requires user has locked candidate and running DS and they must unlock
after
rollback - this code now get both locks and then does an unlock and
early return thing on the adapter side. It needs to be un-special
cased in follow up work that would also include tests for this
functionality.
Signed-off-by: Christian Hopps <chopps@labn.net>
Diffstat (limited to 'lib/command.c')
| -rw-r--r-- | lib/command.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/command.c b/lib/command.c index 0995637219..8025ab534f 100644 --- a/lib/command.c +++ b/lib/command.c @@ -1333,11 +1333,12 @@ int config_from_file(struct vty *vty, FILE *fp, unsigned int *line_num) /* Configuration from terminal */ DEFUN (config_terminal, config_terminal_cmd, - "configure [terminal]", + "configure [terminal [file-lock]]", "Configuration from vty interface\n" + "Configuration with locked datastores\n" "Configuration terminal\n") { - return vty_config_enter(vty, false, false); + return vty_config_enter(vty, false, false, argc == 3); } /* Enable command */ |
