diff --git a/surveillance/deconnexion.py b/surveillance/deconnexion.py index de2c008f..7a48a556 100755 --- a/surveillance/deconnexion.py +++ b/surveillance/deconnexion.py @@ -376,6 +376,9 @@ for IP in infectes: try: machine = ldap.search('ipHostNumber=%s' % IP, 'w' )['machine'][0] except IndexError: + print "Suppression de %s des machines infectées (la machine n'existe plus)"%IP + requete = "DELETE FROM avertis_virus where ip_crans='%s'"%IP + curseur.execute(requete) continue # la machine n'existe plus, on passe à l'infecté suivant # Si la machine n'est pas online, on reconnecte #if machine_online(machine): @@ -385,6 +388,7 @@ for IP in infectes: # On stoppe la sanction pour une ligne existante de la blackliste # En prenant en compte le fait que d'autres lignes de blackliste # ont pu s'ajouter. + lignes_enlevees = 0 for ligne in bl: if '$-$virus$%s' % hostname in ligne: liste = ligne.split('$') @@ -392,8 +396,11 @@ for IP in infectes: index = bl.index(ligne) proprio.blacklist((index, argument)) proprio.save() - requete = "DELETE FROM avertis_virus where ip_crans='%s'"%IP - curseur.execute(requete) + lignes_enlevees += 1 + if lignes_enlevees == 0: + print "Suppression de %s des machines infectées, mais aucune blackliste"%hostname + requete = "DELETE FROM avertis_virus where ip_crans='%s'"%IP + curseur.execute(requete) ################################################################################ # Gestion du peer to peer #