Signed-off-by: John Snow <js...@redhat.com> --- python/qemu/qmp/qom.py | 5 +++-- python/qemu/qmp/qom_common.py | 7 ++++--- python/qemu/qmp/qom_fuse.py | 11 ++++++----- 3 files changed, 13 insertions(+), 10 deletions(-)
diff --git a/python/qemu/qmp/qom.py b/python/qemu/qmp/qom.py index 8ff28a8343..bb5d1a78f5 100644 --- a/python/qemu/qmp/qom.py +++ b/python/qemu/qmp/qom.py @@ -32,7 +32,8 @@ import argparse -from . import QMPResponseError +from qemu.aqmp import ExecuteError + from .qom_common import QOMCommand @@ -233,7 +234,7 @@ def _list_node(self, path: str) -> None: rsp = self.qmp.command('qom-get', path=path, property=item.name) print(f" {item.name}: {rsp} ({item.type})") - except QMPResponseError as err: + except ExecuteError as err: print(f" {item.name}: <EXCEPTION: {err!s}> ({item.type})") print('') for item in items: diff --git a/python/qemu/qmp/qom_common.py b/python/qemu/qmp/qom_common.py index a59ae1a2a1..b145157258 100644 --- a/python/qemu/qmp/qom_common.py +++ b/python/qemu/qmp/qom_common.py @@ -27,7 +27,8 @@ TypeVar, ) -from . import QEMUMonitorProtocol, QMPError +from qemu.aqmp import AQMPError +from qemu.aqmp.legacy import QEMUMonitorProtocol # The following is needed only for a type alias. @@ -82,7 +83,7 @@ class QOMCommand: def __init__(self, args: argparse.Namespace): if args.socket is None: - raise QMPError("No QMP socket path or address given") + raise AQMPError("No QMP socket path or address given") self.qmp = QEMUMonitorProtocol( QEMUMonitorProtocol.parse_address(args.socket) ) @@ -161,7 +162,7 @@ def command_runner( try: cmd = cls(args) return cmd.run() - except QMPError as err: + except AQMPError as err: print(f"{type(err).__name__}: {err!s}", file=sys.stderr) return -1 diff --git a/python/qemu/qmp/qom_fuse.py b/python/qemu/qmp/qom_fuse.py index 43f4671fdb..653a76b93b 100644 --- a/python/qemu/qmp/qom_fuse.py +++ b/python/qemu/qmp/qom_fuse.py @@ -48,7 +48,8 @@ import fuse from fuse import FUSE, FuseOSError, Operations -from . import QMPResponseError +from qemu.aqmp import ExecuteError + from .qom_common import QOMCommand @@ -99,7 +100,7 @@ def is_object(self, path: str) -> bool: try: self.qom_list(path) return True - except QMPResponseError: + except ExecuteError: return False def is_property(self, path: str) -> bool: @@ -112,7 +113,7 @@ def is_property(self, path: str) -> bool: if item.name == prop: return True return False - except QMPResponseError: + except ExecuteError: return False def is_link(self, path: str) -> bool: @@ -125,7 +126,7 @@ def is_link(self, path: str) -> bool: if item.name == prop and item.link: return True return False - except QMPResponseError: + except ExecuteError: return False def read(self, path: str, size: int, offset: int, fh: IO[bytes]) -> bytes: @@ -138,7 +139,7 @@ def read(self, path: str, size: int, offset: int, fh: IO[bytes]) -> bytes: try: data = str(self.qmp.command('qom-get', path=path, property=prop)) data += '\n' # make values shell friendly - except QMPResponseError as err: + except ExecuteError as err: raise FuseOSError(EPERM) from err if offset > len(data): -- 2.31.1