Skip to content

Commit

Permalink
remotexpc: fix message-id tracking
Browse files Browse the repository at this point in the history
  • Loading branch information
doronz88 committed Jul 17, 2023
1 parent bdcfb09 commit 88a4639
Showing 1 changed file with 4 additions and 3 deletions.
7 changes: 4 additions & 3 deletions pymobiledevice3/remote/remotexpc.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ class RemoteXPCConnection:
def __init__(self, address: Tuple[str, int]):
self.address = address
self.sock: Optional[socket.socket] = None
self.next_message_id = 0
self.next_message_id: Mapping[int: int] = {1: 0, 3: 0}
self.peer_info = None

def __enter__(self) -> 'RemoteXPCConnection':
Expand All @@ -39,7 +39,8 @@ def close(self) -> None:

def send_request(self, data: Mapping) -> None:
self.sock.sendall(
DataFrame(stream_id=1, data=create_xpc_wrapper(data, message_id=self.next_message_id)).serialize())
DataFrame(stream_id=1, data=create_xpc_wrapper(data, message_id=self.next_message_id[1],
service_version=self.service_version)).serialize())

def receive_response(self):
while True:
Expand All @@ -54,7 +55,7 @@ def receive_response(self):
if xpc_message.payload.obj.data.entries is None:
continue

self.next_message_id = xpc_message.message_id + 1
self.next_message_id[frame.stream_id] = xpc_message.message_id + 1
return get_object_from_xpc_wrapper(frame.data)

def send_receive_request(self, data: Mapping):
Expand Down

0 comments on commit 88a4639

Please sign in to comment.