mirror of
https://github.com/openvswitch/ovs
synced 2025-10-25 15:07:05 +00:00
jsonrpc.py: Don't swallow errors in transact_block().
If a server returned an error in response to a request, transact_block() would ignore it. Signed-off-by: Ethan Jackson <ethan@nicira.com>
This commit is contained in:
@@ -301,7 +301,10 @@ class Connection(object):
|
||||
reply = None
|
||||
while not error:
|
||||
error, reply = self.recv_block()
|
||||
if reply and reply.type == Message.T_REPLY and reply.id == id_:
|
||||
if (reply
|
||||
and (reply.type == Message.T_REPLY
|
||||
or reply.type == Message.T_ERROR)
|
||||
and reply.id == id_):
|
||||
break
|
||||
return error, reply
|
||||
|
||||
|
||||
@@ -375,6 +375,11 @@ def do_idl(schema_file, remote, *commands):
|
||||
sys.stderr.write("jsonrpc transaction failed: %s"
|
||||
% os.strerror(error))
|
||||
sys.exit(1)
|
||||
elif reply.error is not None:
|
||||
sys.stderr.write("jsonrpc transaction failed: %s"
|
||||
% reply.error)
|
||||
sys.exit(1)
|
||||
|
||||
sys.stdout.write("%03d: " % step)
|
||||
sys.stdout.flush()
|
||||
step += 1
|
||||
|
||||
Reference in New Issue
Block a user