Page MenuHomeVyOS Platform

Show nat rules with empty rules incorrect error
Closed, ResolvedPublicBUG

Description

Try to check NAT rules without any nat configuration:

vyos@r14:~$ show nat source rules 
Traceback (most recent call last):
  File "/usr/libexec/vyos/op_mode/nat.py", line 307, in <module>
    res = vyos.opmode.run(sys.modules[__name__])
  File "/usr/lib/python3/dist-packages/vyos/opmode.py", line 147, in run
    res = func(**args)
  File "/usr/libexec/vyos/op_mode/nat.py", line 281, in show_rules
    nat_rules = _get_raw_data_rules(direction, family)
  File "/usr/libexec/vyos/op_mode/nat.py", line 70, in _get_raw_data_rules
    data = _get_json_data(direction, family)
  File "/usr/libexec/vyos/op_mode/nat.py", line 63, in _get_json_data
    return cmd(f'sudo nft --json list chain {family} vyos_nat {chain}')
  File "/usr/lib/python3/dist-packages/vyos/util.py", line 161, in cmd
    raise OSError(code, feedback)
PermissionError: [Errno 1] failed to run command: sudo nft --json list chain ip vyos_nat POSTROUTING
returned: 
exit code: 1
vyos@r14:~$ 
vyos@r14:~$ 
      
vyos@r14:~$ show nat destination rules 
Traceback (most recent call last):
  File "/usr/libexec/vyos/op_mode/nat.py", line 307, in <module>
    res = vyos.opmode.run(sys.modules[__name__])
  File "/usr/lib/python3/dist-packages/vyos/opmode.py", line 147, in run
    res = func(**args)
  File "/usr/libexec/vyos/op_mode/nat.py", line 281, in show_rules
    nat_rules = _get_raw_data_rules(direction, family)
  File "/usr/libexec/vyos/op_mode/nat.py", line 70, in _get_raw_data_rules
    data = _get_json_data(direction, family)
  File "/usr/libexec/vyos/op_mode/nat.py", line 63, in _get_json_data
    return cmd(f'sudo nft --json list chain {family} vyos_nat {chain}')
  File "/usr/lib/python3/dist-packages/vyos/util.py", line 161, in cmd
    raise OSError(code, feedback)
PermissionError: [Errno 1] failed to run command: sudo nft --json list chain ip vyos_nat PREROUTING
returned: 
exit code: 1
vyos@r14:~$

Expected correct warning/raise

Details

Difficulty level
Normal (likely a few hours)
Version
VyOS 1.4-rolling-202210180800
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Bug (incorrect behavior)

Related Objects

Event Timeline

Viacheslav changed the subtype of this task from "Feature Request" to "Bug".
Viacheslav changed Difficulty level from Unknown (require assessment) to Normal (likely a few hours).
Viacheslav changed Version from - to VyOS 1.4-rolling-202210180800.
Viacheslav changed the task status from Open to In progress.Oct 20 2022, 9:07 AM
Viacheslav claimed this task.
Viacheslav moved this task from Need Triage to Finished on the VyOS 1.4 Sagitta board.