X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=modules%2Ferl%2Feuphorik_bd.erl;fp=modules%2Ferl%2Feuphorik_bd.erl;h=1b37b4c88e712e9f19e3aeb02f5b7326edcdae4c;hp=678505ba2422432321b787acfabe8d87fb63fee9;hb=06962fedd7bc08ea261422df17b0228e2ee5098c;hpb=13bf850da2316cde3ad2ff8d5c26fb32928bf7b4 diff --git a/modules/erl/euphorik_bd.erl b/modules/erl/euphorik_bd.erl index 678505b..1b37b4c 100755 --- a/modules/erl/euphorik_bd.erl +++ b/modules/erl/euphorik_bd.erl @@ -44,12 +44,12 @@ % ip : ip_table/0, ban/2, + can_register/1, % versions : update_version/1, % utiles : - can_register/1, resultat_transaction/1 ]). @@ -497,19 +497,10 @@ ban(IP, Duration) -> end ). - -update_version(1) -> - mnesia:transform_table( - ip_table, - fun() -> null end, - record_info(fields, ip_table), - ip_table - ). - - + % Si deux enregistrements consequtifs de la même IP sont fait en moins d'une seconde alors % ip_table.nb_try_register est incrémenté de 1 sinon il est décrémenté de 1 (jusqu'a 0). -% Si ip_table.nb_try_register vaut 5 alors l'ip ne peux plus s'enregistrer pour une heure. +% Si ip_table.nb_try_register vaut 5 alors l'ip ne peux plus s'enregistrer pour une heure. can_register(IP) -> resultat_transaction(mnesia:transaction( fun() -> @@ -534,6 +525,15 @@ can_register(IP) -> )). +update_version(1) -> + mnesia:transform_table( + ip_table, + fun() -> null end, + record_info(fields, ip_table), + ip_table + ). + + % Renvoie le résultat d'une transaction (en décomposant le tuple fournit) resultat_transaction({_, T}) -> T.