[spip-dev] SPIP et IPv6

"Fil" == Philippe Rivière <fil (a) rezo . net> écrivait le 18 Juin:

Actuellement ça se trouve dans inc-stats.php3

    // Conversion IP 4 octets -> entier 32 bits
    if (ereg("^([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)$", $log_ip, $r)) {
        $log_ip = sprintf("0x%02x%02x%02x%02x", $r[1], $r[2], $r[3], $r[4]);
    }
    else return;

Je viens de lire les archives à propos d'ipv6 et ai vu qu'il allait
falloir changer pas mal de choses dans le traitement des stats pour
que ça marche. En attendant comme de toute façon pour ce qui est de
mon site les accès ipv6 sont tout de même rares et pour tout de même
avoir des stats pour les accès ipv4 j'ai modifié ainsi inc-stats.php3 :

--- inc-stats.php3.old 2003-07-02 13:56:24.000000000 +0200
+++ inc-stats.php3 2003-07-02 13:57:45.000000000 +0200
@@ -29,6 +29,10 @@
        // Conversion IP 4 octets -> entier 32 bits
        if (ereg("^([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)$", $log_ip, $r)) {
                $log_ip = sprintf("0x%02x%02x%02x%02x", $r[1], $r[2], $r[3], $r[4]);
+ }
+ // Conversion IP 4 octets -> entier 32 bits pour apache ipv6
+ else if (ereg("^::ffff:([0-9]+)\.([0-9]+)\.([0-9]+)\.([0-9]+)$", $log_ip, $r)) {
+ $log_ip = sprintf("0x%02x%02x%02x%02x", $r[1], $r[2], $r[3], $r[4]);
        }
        else return;

y'a plus qu'à ! :wink:

Quand j'en aurai fini avec la mise en page je regarderai un peu plus le
code. :wink:

                 Jean Charles

je puis me permettre, y'a aussi oute une foultitude de paramètres à
changer partout.
Notamment la gestion des adresse IP dans es URL, et un stockage un peu
plus complêt de ton nipv6 :wink:

Ton patche risque de poser des soucis avec le v6 en natif, il ne faut
pas gérer uniquement les ipv4 notée en v6...

Gaetan Ryckeboer <gryckeboer@virtual-net.fr> écrivait (wrote) :

> > y'a plus qu'à ! :wink:
>
> Quand j'en aurai fini avec la mise en page je regarderai un peu plus le
> code. :wink:
je puis me permettre, y'a aussi oute une foultitude de paramètres à
changer partout.
Notamment la gestion des adresse IP dans es URL, et un stockage un peu
plus complêt de ton nipv6 :wink:

Ton patche risque de poser des soucis avec le v6 en natif, il ne faut

Le v6 natif est tout simplement ignoré : " else return;"

pas gérer uniquement les ipv4 notée en v6...

Bien sûr et je le précisais, là ça me permet juste d'avoir des stats sur
les personnes autres que moi qui visitent mon site.

             Jean Charles