From 2ae4f133ca17d3a653e482bc5caac931808a8805 Mon Sep 17 00:00:00 2001 From: Jeroen Oudshoorn Date: Mon, 18 Sep 2023 00:11:22 +0200 Subject: [PATCH] v2.4.1 Signed-off-by: Jeroen Oudshoorn --- pwnagotchi/plugins/default/fix_services.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pwnagotchi/plugins/default/fix_services.py b/pwnagotchi/plugins/default/fix_services.py index 9ff4cba3..43131037 100644 --- a/pwnagotchi/plugins/default/fix_services.py +++ b/pwnagotchi/plugins/default/fix_services.py @@ -38,6 +38,7 @@ class FixServices(plugins.Plugin): self.pattern2 = re.compile(r'wifi error while hopping to channel') self.pattern3 = re.compile(r'Firmware has halted or crashed') self.pattern4 = re.compile(r'error 400: could not find interface wlan0mon') + self.pattern5 = re.compile(r'waiting for bettercap API to be available') self.isReloadingMon = False self.connection = None self.LASTTRY = 0 @@ -192,6 +193,19 @@ class FixServices(plugins.Plugin): except Exception as err: logging.error("[Fix_Services monstart]: %s" % repr(err)) + # Look for pattern 5 + elif len(self.pattern5.findall(other_other_last_lines)) >= 8: + logging.info("[Fix_Services] bettercap is down, restarting!") + if hasattr(agent, 'view'): + display = agent.view() + display.set('status', 'Rebooting now!') + display.update(force=True) + try: + logging.info("[Fix_Services rebooting now]") + pwnagotchi.reboot() + except Exception as err: + logging.error("[Fix_Services monstart]: %s" % repr(err)) + else: print("logs look good")