Changeset 98715 in spip-zone


Ignore:
Timestamp:
Jul 6, 2016, 1:32:24 PM (3 years ago)
Author:
kent1@…
Message:
  • Problème lors de l'accès en local, tout était débrayé.
  • Accepter ::1, localhost et 127.0.0.1 dans les ips comme hôte local.

Version 0.6.1

Location:
_plugins_/intranet/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/intranet/trunk/intranet_options.php

    r98714 r98715  
    3030                if (isset($_SERVER['REMOTE_ADDR'])) {
    3131                        $ip = $_SERVER['REMOTE_ADDR'];
    32                 }
    33                 $long_ip = ip2long($ip);
    3432
    35                 $ranges = explode(',', lire_config('intranet/plageip', ' '));
    36                 foreach ($ranges as $range) {
    37                         //Range d'ip contenant - comme séparateur
    38                         if (preg_match('/-/', $range)) {
    39                                 $ranges_2 = explode('-', $range);
    40                                 $low_long_ip = ip2long($ranges_2[0]);
    41                                 $high_long_ip = ip2long($ranges_2[1]);
    42                                 if ($long_ip <= $high_long_ip && $low_long_ip <= $long_ip) {
    43                                         $autoriser = true;
    44                                         break; // on a trouvé une ip bonne on ne continue pas plus loin
    45                                 }
    46                         } // Ip individuelle
    47                         else {
    48                                 if ($long_ip == ip2long($range)) {
    49                                         $autoriser = true;
    50                                         break;
     33                        $long_ip = ip2long($ip);
     34                        $ranges = explode(',', lire_config('intranet/plageip', ' '));
     35                        if (count($ranges) > 0) {
     36                                foreach ($ranges as $range) {
     37                                        //Range d'ip contenant - comme séparateur
     38                                        if (preg_match('/-/', $range)) {
     39                                                $ranges_2 = explode('-', $range);
     40                                                $low_long_ip = ip2long($ranges_2[0]);
     41                                                $high_long_ip = ip2long($ranges_2[1]);
     42                                                if ($long_ip <= $high_long_ip && $low_long_ip <= $long_ip) {
     43                                                        $autoriser = true;
     44                                                        break; // on a trouvé une ip bonne on ne continue pas plus loin
     45                                                }
     46                                        } else if ($long_ip != '' && $long_ip == ip2long($range)) {
     47                                                        // Ip individuelle, mais il faut que l'on en ai une
     48                                                        $autoriser = true;
     49                                                        break;
     50                                        } else if (in_array($range, array('::1', 'localhost', '127.0.0.1'))
     51                                                and (in_array($ip, array('::1', 'localhost', '127.0.0.1')))) {
     52                                                        // Ips locales
     53                                                        $autoriser = true;
     54                                                        break;
     55                                        }
    5156                                }
    5257                        }
  • _plugins_/intranet/trunk/paquet.xml

    r98713 r98715  
    22        prefix="intranet"
    33        categorie="maintenance"
    4         version="0.6.0"
     4        version="0.6.1"
    55        schema="0.1.0"
    66        etat="stable"
Note: See TracChangeset for help on using the changeset viewer.