From efdc7b91debd327041cf0f462964f157692b8836 Mon Sep 17 00:00:00 2001 From: bernat Date: Fri, 15 Jul 2005 17:35:48 +0200 Subject: [PATCH] Acceleration de QuadToDec darcs-hash:20050715153548-d1718-5755d3eb1ebb8bf416d86f5365a480b1c07de5c5.gz --- gestion/iptools.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gestion/iptools.py b/gestion/iptools.py index 691d05f5..966a0f61 100755 --- a/gestion/iptools.py +++ b/gestion/iptools.py @@ -7,11 +7,17 @@ Copyright (C) Fr Licence : GPLv2 """ + +# Pour accélérer QuadToDec... +__QuadToDecDone = {} + def QuadToDec(ip) : """ Retourne la représentation décimale d'une ip ip est de la forme xxx.xxx.xxx.xxx """ + if ip in __QuadToDecDone: + return __QuadToDecDone[ip] test = ip.split('.') if len(test)!=4 : raise ValueError('IP Invalide') ip_dec = 0 @@ -19,7 +25,8 @@ def QuadToDec(ip) : n = int(test[z]) if n<0 or n>255 : raise ValueError('IP Invalide') ip_dec += n * ( 256**(3-z) ) - + + __QuadToDecDone[ip] = ip_dec return ip_dec def DecToQuad(ip_dec) :