Pandora: Handle exception in WaitSecurity()

This commit is contained in:
Josh Wu
2023-10-07 21:05:56 +08:00
parent aec5543081
commit c8b2804446

View File

@@ -450,9 +450,10 @@ class SecurityService(SecurityServicer):
'security_request': pair,
}
with contextlib.closing(EventWatcher()) as watcher:
# register event handlers
for event, listener in listeners.items():
connection.on(event, listener)
watcher.on(connection, event, listener)
# security level already reached
if self.reached_security_level(connection, level):
@@ -462,10 +463,6 @@ class SecurityService(SecurityServicer):
kwargs = {}
kwargs[await wait_for_security] = empty_pb2.Empty()
# remove event handlers
for event, listener in listeners.items():
connection.remove_listener(event, listener) # type: ignore
# wait for `authenticate` to finish if any
if authenticate_task is not None:
self.log.debug('Wait for authentication...')