Skip to content

Commit 613969b

Browse files
authored
Merge pull request #6 from Thomac02/master
Merge fixes for secure channel
2 parents b965a7c + 474362b commit 613969b

15 files changed

+89
-9
lines changed

osdp-diff/_bus_diff.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
132,134c132
2+
< if device.validate_secure_channel_establishment(reply):
3+
< print("Secure session established.")
4+
<
5+
---
6+
> device.validate_secure_channel_establishment(reply)

osdp-diff/_command_diff.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
41d40
2+
< print("Building secure message...")
3+
46,47c45,46
4+
< additional_length = 4 + (2 if device.message_control.use_crc else 1)
5+
< self.add_packet_length(command_buffer, additional_length)
6+
---
7+
> # additional_length = 4 + (device.message_control.use_crc ? 2 : 1)
8+
> # self.add_packet_length(command_buffer, additional_length)

osdp-diff/_connection_diff.txt

Whitespace-only changes.

osdp-diff/_control_panel_diff.txt

Whitespace-only changes.

osdp-diff/_device_diff.txt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
33c33
2+
<
3+
---
4+
>
5+
38c38
6+
< return ServerCryptogramCommand(self.address, self._secure_channel.server_cryptogram)
7+
---
8+
> return ServerCryptogramCommand(self.address, self._secure_channel.serverCryptogram)
9+
59d58
10+
< print("Cryptogram not accepted")

osdp-diff/_message_diff.txt

Whitespace-only changes.

osdp-diff/_reply_diff.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
111c111
2+
< reply = UnknownReply(data, connection_id, issuing_command, device)
3+
---
4+
> reply = UnknownReply(data, connection_id, issuing_command, Device)
5+
115d114
6+
< print("Secure block data: ", self.secure_block_data[0])
7+
159d157
8+
< print("Extract reply data: ", self.extract_reply_data.hex())

osdp-diff/_secure_channel_diff.txt

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
37c37
2+
< if client_cryptogram != self.generate_key(self.server_random_number, client_random_number, self._enc):
3+
---
4+
> if client_cryptogram != self.generate_key(self.server_random_number, client_cryptogram, self._enc):
5+
61c61
6+
< self.server_random_number,
7+
---
8+
> self._server_random_number,

osdp-diff/_types_diff.txt

Whitespace-only changes.

osdp/_bus.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,9 @@ def process_reply(self, reply: Reply, device: Device):
129129
if reply.type == ReplyType.CrypticData:
130130
device.initialize_secure_channel(reply)
131131
elif reply.type == ReplyType.InitialRMac:
132-
device.validate_secure_channel_establishment(reply)
132+
if device.validate_secure_channel_establishment(reply):
133+
print("Secure session established.")
134+
133135

134136
if self._on_reply_received is not None:
135137
self._on_reply_received(reply)

0 commit comments

Comments
 (0)