1
0
mirror of https://github.com/mjg59/python-broadlink.git synced 2024-11-22 07:00:12 +01:00

Make communication thread safe

This commit is contained in:
Daniel Høyer Iversen 2016-12-22 09:51:38 +01:00 committed by GitHub
parent 83f1c3fc93
commit 1296c3da48

View File

@ -5,6 +5,7 @@ from Crypto.Cipher import AES
import time
import random
import socket
import threading
def gendevice(devtype, host, mac):
if devtype == 0: # SP1
@ -138,6 +139,7 @@ class device:
self.cs.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
self.cs.bind(('',0))
self.type = "Unknown"
self.lock = threading.Lock()
def auth(self):
payload = bytearray(0x50)
@ -228,6 +230,7 @@ class device:
packet[0x21] = checksum >> 8
starttime = time.time()
with self.lock:
while True:
try:
self.cs.sendto(packet, self.host)