• Donald Hunter's avatar
    tools/net/ynl: Report netlink errors without stacktrace · 771b7012
    Donald Hunter authored
    ynl does not handle NlError exceptions so they get reported like program
    failures. Handle the NlError exceptions and report the netlink errors
    more cleanly.
    
    Example now:
    
    Netlink error: No such file or directory
    nl_len = 44 (28) nl_flags = 0x300 nl_type = 2
    	error: -2	extack: {'bad-attr': '.op'}
    
    Example before:
    
    Traceback (most recent call last):
      File "/home/donaldh/net-next/./tools/net/ynl/cli.py", line 81, in <module>
        main()
      File "/home/donaldh/net-next/./tools/net/ynl/cli.py", line 69, in main
        reply = ynl.dump(args.dump, attrs)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/home/donaldh/net-next/tools/net/ynl/lib/ynl.py", line 906, in dump
        return self._op(method, vals, [], dump=True)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/home/donaldh/net-next/tools/net/ynl/lib/ynl.py", line 872, in _op
        raise NlError(nl_msg)
    lib.ynl.NlError: Netlink error: No such file or directory
    nl_len = 44 (28) nl_flags = 0x300 nl_type = 2
    	error: -2	extack: {'bad-attr': '.op'}
    Signed-off-by: default avatarDonald Hunter <donald.hunter@gmail.com>
    Link: https://lore.kernel.org/r/20240306231046.97158-3-donald.hunter@gmail.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
    771b7012
cli.py 2.68 KB