From 412f1da36886088ec0f59db4a7b0ad923bb7a09d Mon Sep 17 00:00:00 2001 From: Joel Bender Date: Tue, 20 Oct 2015 16:54:52 -0400 Subject: [PATCH] unpack addresses coming downstream rather than assuming they have been created as IP addresses --- py25/bacpypes/bvllservice.py | 5 +++-- py27/bacpypes/bvllservice.py | 5 +++-- py34/bacpypes/bvllservice.py | 3 ++- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/py25/bacpypes/bvllservice.py b/py25/bacpypes/bvllservice.py index 88b38fc..d2e9f2c 100755 --- a/py25/bacpypes/bvllservice.py +++ b/py25/bacpypes/bvllservice.py @@ -14,7 +14,8 @@ from .task import OneShotTask, RecurringTask from .comm import Client, Server, bind, \ ServiceAccessPoint, ApplicationServiceElement -from .pdu import Address, LocalBroadcast, LocalStation, PDU +from .pdu import Address, LocalBroadcast, LocalStation, PDU, \ + unpack_ip_addr from .bvll import BVLPDU, DeleteForeignDeviceTableEntry, \ DistributeBroadcastToNetwork, FDTEntry, ForwardedNPDU, \ OriginalBroadcastNPDU, OriginalUnicastNPDU, \ @@ -108,7 +109,7 @@ class UDPMultiplexer: dest = self.addrBroadcastTuple if _debug: UDPMultiplexer._debug(" - requesting local broadcast: %r", dest) elif pdu.pduDestination.addrType == Address.localStationAddr: - dest = pdu.pduDestination.addrTuple + dest = unpack_ip_addr(pdu.pduDestination.addrAddr) if _debug: UDPMultiplexer._debug(" - requesting local station: %r", dest) else: raise RuntimeError("invalid destination address type") diff --git a/py27/bacpypes/bvllservice.py b/py27/bacpypes/bvllservice.py index 0c8a2f9..e45201b 100755 --- a/py27/bacpypes/bvllservice.py +++ b/py27/bacpypes/bvllservice.py @@ -14,7 +14,8 @@ from .task import OneShotTask, RecurringTask from .comm import Client, Server, bind, \ ServiceAccessPoint, ApplicationServiceElement -from .pdu import Address, LocalBroadcast, LocalStation, PDU +from .pdu import Address, LocalBroadcast, LocalStation, PDU, \ + unpack_ip_addr from .bvll import BVLPDU, DeleteForeignDeviceTableEntry, \ DistributeBroadcastToNetwork, FDTEntry, ForwardedNPDU, \ OriginalBroadcastNPDU, OriginalUnicastNPDU, \ @@ -109,7 +110,7 @@ class UDPMultiplexer: dest = self.addrBroadcastTuple if _debug: UDPMultiplexer._debug(" - requesting local broadcast: %r", dest) elif pdu.pduDestination.addrType == Address.localStationAddr: - dest = pdu.pduDestination.addrTuple + dest = unpack_ip_addr(pdu.pduDestination.addrAddr) if _debug: UDPMultiplexer._debug(" - requesting local station: %r", dest) else: raise RuntimeError("invalid destination address type") diff --git a/py34/bacpypes/bvllservice.py b/py34/bacpypes/bvllservice.py index 02956a8..7d6a7bb 100755 --- a/py34/bacpypes/bvllservice.py +++ b/py34/bacpypes/bvllservice.py @@ -14,7 +14,8 @@ from .task import OneShotTask, RecurringTask from .comm import Client, Server, bind, \ ServiceAccessPoint, ApplicationServiceElement -from .pdu import Address, LocalBroadcast, LocalStation, PDU +from .pdu import Address, LocalBroadcast, LocalStation, PDU, \ + unpack_ip_addr from .bvll import BVLPDU, DeleteForeignDeviceTableEntry, \ DistributeBroadcastToNetwork, FDTEntry, ForwardedNPDU, \ OriginalBroadcastNPDU, OriginalUnicastNPDU, \