From 777fea9cead3a74e25322d7e42a35ffa23336b6e Mon Sep 17 00:00:00 2001 From: Mark Qvist Date: Sat, 4 Mar 2023 18:32:36 +0100 Subject: [PATCH] Differentiate exception between link establishment callback, and internal RTT packet handling --- RNS/Link.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/RNS/Link.py b/RNS/Link.py index 822e1fc..1624253 100644 --- a/RNS/Link.py +++ b/RNS/Link.py @@ -379,8 +379,11 @@ class Link: if self.rtt != None and self.establishment_cost != None and self.rtt > 0 and self.establishment_cost > 0: self.establishment_rate = self.establishment_cost/self.rtt - if self.owner.callbacks.link_established != None: - self.owner.callbacks.link_established(self) + try: + if self.owner.callbacks.link_established != None: + self.owner.callbacks.link_established(self) + except Exception as e: + RNS.log("Error occurred in external link establishment callback. The contained exception was: "+str(e), RNS.LOG_ERROR) except Exception as e: RNS.log("Error occurred while processing RTT packet, tearing down link. The contained exception was: "+str(e), RNS.LOG_ERROR)