diff --git a/surveillance/arpwatch_sendmail.py b/surveillance/arpwatch_sendmail.py index c5088296..9e1a8016 100755 --- a/surveillance/arpwatch_sendmail.py +++ b/surveillance/arpwatch_sendmail.py @@ -10,17 +10,21 @@ import sys, os, sre, smtplib find_mac = sre.compile(r'[0-9A-Fa-f]{1,2}(?::[0-9A-Fa-f]{1,2}){5}') def get_machine(mac): - s = os.popen("sudo /usr/scripts/gestion/whos.py mac=%s" % mac).readlines() + s = os.popen("sudo /usr/scripts/gestion/whos.py --debug mac=%s" % mac).readlines() if len(s) == 1: + # En général, c'est la ligne "Aucun résultat trouvé" return "" else: - # On supprime la première ligne et les couleurs - s = "\n" + "".join(s[1:]) + # On supprime les couleurs + s = "\n" + "".join(s) s = sre.sub('\x1b\[1;([0-9]|[0-9][0-9])m', '', s) return s if __name__ == "__main__": texte = sys.stdin.read() + # On récupère les destinataires dans les arguments (très ad hoc) + recipients = sys.argv[2].split(',') + # On complète le message try: macs = find_mac.findall(texte) for mac in macs: @@ -33,5 +37,5 @@ if __name__ == "__main__": texte += '\n-- \narpwatch_sendmail.py\n' smtp = smtplib.SMTP() smtp.connect() - smtp.sendmail("arpwatch@crans.org", "root@crans.org", texte) + smtp.sendmail("arpwatch@crans.org", recipients, texte) smtp.quit()