Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix double lock bug and cmd resume early bugs (backport #14019) #14022

Merged
merged 3 commits into from
Jul 17, 2023

Commits on Jul 16, 2023

  1. lib: mgmtd: only clear pending for the in-progress command

    The lock/unlocks are being done short-circuit so they are never pending;
    however, the handling of the unlock notification was always resuming the command
    if pending was set. In all cases pending is set for another command. For example
    implicit commit locks then when notified its done unlocks which was clearing the
    set-config pending flag and resuming that command incorrectly.
    
    Signed-off-by: Christian Hopps <chopps@labn.net>
    choppsv1 committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    28c145e View commit details
    Browse the repository at this point in the history
  2. vtysh: track and fix file-lock use in the workaround from 2004

    There's a workaround in the code from a bug from back in 2004, it ends
    and re-enters config mode anytime an `exit` is done from a level below
    the top-level config node (e.g., from a `router isis` node). We need to
    re-enter config mode with or without a lock according to how we actually
    entered it to begin with.
    
    fixes #13920
    
    Signed-off-by: Christian Hopps <chopps@labn.net>
    choppsv1 committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    59b69ae View commit details
    Browse the repository at this point in the history
  3. tests: add regression test for issue $13920

    Signed-off-by: Christian Hopps <chopps@labn.net>
    choppsv1 committed Jul 16, 2023
    Configuration menu
    Copy the full SHA
    318e060 View commit details
    Browse the repository at this point in the history