Use `json.dump` in `FileExfiltrationWriter` (#15095)
To directly write to the open file, instead of writing to an in-memory string first.
This commit is contained in:
parent
91f8de7b56
commit
6def779a1a
|
@ -0,0 +1 @@
|
||||||
|
Refactor writing json data in `FileExfiltrationWriter`.
|
|
@ -149,7 +149,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
|
|
||||||
with open(events_file, "a") as f:
|
with open(events_file, "a") as f:
|
||||||
for event in events:
|
for event in events:
|
||||||
print(json.dumps(event.get_pdu_json()), file=f)
|
json.dump(event.get_pdu_json(), fp=f)
|
||||||
|
|
||||||
def write_state(
|
def write_state(
|
||||||
self, room_id: str, event_id: str, state: StateMap[EventBase]
|
self, room_id: str, event_id: str, state: StateMap[EventBase]
|
||||||
|
@ -162,7 +162,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
|
|
||||||
with open(event_file, "a") as f:
|
with open(event_file, "a") as f:
|
||||||
for event in state.values():
|
for event in state.values():
|
||||||
print(json.dumps(event.get_pdu_json()), file=f)
|
json.dump(event.get_pdu_json(), fp=f)
|
||||||
|
|
||||||
def write_invite(
|
def write_invite(
|
||||||
self, room_id: str, event: EventBase, state: StateMap[EventBase]
|
self, room_id: str, event: EventBase, state: StateMap[EventBase]
|
||||||
|
@ -178,7 +178,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
|
|
||||||
with open(invite_state, "a") as f:
|
with open(invite_state, "a") as f:
|
||||||
for event in state.values():
|
for event in state.values():
|
||||||
print(json.dumps(event), file=f)
|
json.dump(event, fp=f)
|
||||||
|
|
||||||
def write_knock(
|
def write_knock(
|
||||||
self, room_id: str, event: EventBase, state: StateMap[EventBase]
|
self, room_id: str, event: EventBase, state: StateMap[EventBase]
|
||||||
|
@ -194,7 +194,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
|
|
||||||
with open(knock_state, "a") as f:
|
with open(knock_state, "a") as f:
|
||||||
for event in state.values():
|
for event in state.values():
|
||||||
print(json.dumps(event), file=f)
|
json.dump(event, fp=f)
|
||||||
|
|
||||||
def write_profile(self, profile: JsonDict) -> None:
|
def write_profile(self, profile: JsonDict) -> None:
|
||||||
user_directory = os.path.join(self.base_directory, "user_data")
|
user_directory = os.path.join(self.base_directory, "user_data")
|
||||||
|
@ -202,7 +202,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
profile_file = os.path.join(user_directory, "profile")
|
profile_file = os.path.join(user_directory, "profile")
|
||||||
|
|
||||||
with open(profile_file, "a") as f:
|
with open(profile_file, "a") as f:
|
||||||
print(json.dumps(profile), file=f)
|
json.dump(profile, fp=f)
|
||||||
|
|
||||||
def write_devices(self, devices: List[JsonDict]) -> None:
|
def write_devices(self, devices: List[JsonDict]) -> None:
|
||||||
user_directory = os.path.join(self.base_directory, "user_data")
|
user_directory = os.path.join(self.base_directory, "user_data")
|
||||||
|
@ -211,7 +211,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
|
|
||||||
for device in devices:
|
for device in devices:
|
||||||
with open(device_file, "a") as f:
|
with open(device_file, "a") as f:
|
||||||
print(json.dumps(device), file=f)
|
json.dump(device, fp=f)
|
||||||
|
|
||||||
def write_connections(self, connections: List[JsonDict]) -> None:
|
def write_connections(self, connections: List[JsonDict]) -> None:
|
||||||
user_directory = os.path.join(self.base_directory, "user_data")
|
user_directory = os.path.join(self.base_directory, "user_data")
|
||||||
|
@ -220,7 +220,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
|
|
||||||
for connection in connections:
|
for connection in connections:
|
||||||
with open(connection_file, "a") as f:
|
with open(connection_file, "a") as f:
|
||||||
print(json.dumps(connection), file=f)
|
json.dump(connection, fp=f)
|
||||||
|
|
||||||
def write_account_data(
|
def write_account_data(
|
||||||
self, file_name: str, account_data: Mapping[str, JsonDict]
|
self, file_name: str, account_data: Mapping[str, JsonDict]
|
||||||
|
@ -233,7 +233,7 @@ class FileExfiltrationWriter(ExfiltrationWriter):
|
||||||
account_data_file = os.path.join(account_data_directory, file_name)
|
account_data_file = os.path.join(account_data_directory, file_name)
|
||||||
|
|
||||||
with open(account_data_file, "a") as f:
|
with open(account_data_file, "a") as f:
|
||||||
print(json.dumps(account_data), file=f)
|
json.dump(account_data, fp=f)
|
||||||
|
|
||||||
def finished(self) -> str:
|
def finished(self) -> str:
|
||||||
return self.base_directory
|
return self.base_directory
|
||||||
|
|
Loading…
Reference in New Issue