Skip to content

Commit aef6329

Browse files
authored
Merge pull request #1 from jacoposartini/master
Merge PR njouanin#190
2 parents ae4d5ed + c505741 commit aef6329

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

hbmqtt/broker.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -493,7 +493,7 @@ def client_connected(self, listener_name, reader: ReaderAdapter, writer: WriterA
493493
yield from self.plugins_manager.fire_event(EVENT_BROKER_MESSAGE_RECEIVED,
494494
client_id=client_session.client_id,
495495
message=app_message)
496-
yield from self._broadcast_message(client_session, app_message.topic, app_message.data)
496+
yield from self._broadcast_message_acl(client_session, app_message.topic, app_message.data)
497497
if app_message.publish_packet.retain_flag:
498498
self.retain_message(client_session, app_message.topic, app_message.data, app_message.qos)
499499
wait_deliver = asyncio.Task(handler.mqtt_deliver_next_message(), loop=self._loop)
@@ -732,6 +732,13 @@ def _broadcast_loop(self):
732732
yield from asyncio.wait(running_tasks, loop=self._loop)
733733
raise # reraise per CancelledError semantics
734734

735+
@asyncio.coroutine
736+
def _broadcast_message_acl(self, session, topic, data, force_qos=None):
737+
permitted = yield from self.topic_filtering(session, topic=topic)
738+
739+
if permitted:
740+
yield from self._broadcast_message(session, topic, data, force_qos)
741+
735742
@asyncio.coroutine
736743
def _broadcast_message(self, session, topic, data, force_qos=None):
737744
broadcast = {

0 commit comments

Comments
 (0)