You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2012-07-04 18:26:28

balecan
Member
Registered: 2011-01-24
Posts: 7

L'url directe choix d'entité part en boucle infinie

Bonjour,
En version 0.83.2 il est impossible d'accéder directement à une entité sans passer par le la fenêtre de dialogue de choix d'entité.
La raison est l'utilisation de la variable $_SERVER['HTTP_REFERER'] qui dans ce cas est vide ce qui implique redirection vide qui boucle...
Le patch ci-dessous corrige le problème pour le helpdesk (la même modification peut être apportée au Central)

En espérant que cela aide
Cordialement

--- helpdesk.public.php.orig    2012-07-04 18:14:04.624036825 +0200
+++ helpdesk.public.php    2012-07-04 18:15:06.256268579 +0200
@@ -47,7 +47,7 @@
       }
 
    } else {
-      Html::redirect(preg_replace("/entities_id=.*/","",$_SERVER['HTTP_REFERER']));
+      Html::redirect(preg_replace("/entities_id=.*/","",$_SERVER['PHP_SELF']));
    }
 }
 
@@ -58,7 +58,7 @@
    }
    if (Session::changeActiveEntities($_GET["active_entity"],$_GET["is_recursive"])) {
       if ($_GET["active_entity"] == $_SESSION["glpiactive_entity"]) {
-         Html::redirect(preg_replace("/entities_id.*/","",$_SERVER['HTTP_REFERER']));
+         Html::redirect(preg_replace("/entities_id.*/","",$_SERVER['PHP_SELF']));
       }
    }
 }

Offline

#2 2012-07-04 19:30:30

remi
GLPI-DEV
From: Champagne
Registered: 2007-04-28
Posts: 7,127
Website

Re: L'url directe choix d'entité part en boucle infinie

Euh... j'ai du mal à voir dans quel cas le HTTP_REFERER est vide ?
Surtout que s'il est vide, ben la version 0.83.3 bloquera l'accès.


Dév. Fedora 29 - PHP 5.6/7.0/7.1/7.2/7.3/7.4 - MariaDB 10.3 - GLPI master
Certifié ITILv3 - RPM pour Fedora, RHEL et CentOS sur https://blog.remirepo.net/

Offline

#3 2012-07-05 09:33:50

balecan
Member
Registered: 2011-01-24
Posts: 7

Re: L'url directe choix d'entité part en boucle infinie

remi wrote:

Euh... j'ai du mal à voir dans quel cas le HTTP_REFERER est vide ?
Surtout que s'il est vide, ben la version 0.83.3 bloquera l'accès.

Quand je tape moi directement dans la barre d'adresse l'url http://...../services/front/helpdesk.public.php?active_entity=7 il n'y a pas de HTTP_REFERER (avec firebug on le voit bien)
en fait, en général, le pb du HTTP_REFERER c'est que le client peut mettre n'importe, c'est pas fiable cf par exemple doc PHP : http://fr2.php.net/manual/fr/reserved.v … server.php
"'HTTP_REFERER'
    L'adresse de la page (si elle existe) qui a conduit le client à la page courante. Cette valeur est affectée par le client, et tous les clients ne le font pas. Certains navigateurs permettent même de modifier la valeur de HTTP_REFERER, sous forme de fonctionnalité. En bref, ce n'est pas une valeur de confiance. "

Cordialement

Offline

Board footer

Powered by FluxBB