Projet

Général

Profil

Anomalie #4257

Impossible de lire certaines descriptions XML et validation XML bloquée par écran sécurité

Ajouté par RealET 🔸 il y a 3 mois. Mis à jour il y a environ un mois.

Statut:
Nouveau
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
Début:
28/12/2018
Echéance:
% réalisé:

0%

Resolution:
Navigateur:
Webkit (Chrome/Safari)

Description

Bonjour,

Dans la page ecrire/?exec=admin_plugin&actualise=1 j'ai un message d'erreur :
Erreurs survenues
Impossible de lire certaines descriptions XML
Erreur dans les plugins : auto/jeux/v3.4.1
Erreur dans les plugins : auto/mosaique/v0.5.1

Les 2 erreurs sont des liens vers la validation XML :
/ecrire/?exec=valider_xml&var_url=http://spip31.pyrat.net/plugins/auto/jeux/v3.4.1/paquet.xml

Mais ça donne une erreur 404 :
Error 403
You are not authorized to view this page (URL interdite pour var_url)

Si je commente le code concerné dans config/ecren_securite.php (L373...)
J'ai une autre erreur :

URL absolue interdite pour var_url

Ça passe si je fais :
ecrire/?exec=valider_xml&var_url=../plugins/auto/jeux/v3.4.1/paquet.xml

Document qui est d'ailleurs valide
SPIP considère ce document comme conforme à son DOCTYPE :

1

Testé avec SPIP 3.2.1 SVN [24172] sous PHP Version 7.2.13 / Windows 10

Historique

#1 Mis à jour par RealET 🔸 il y a 3 mois

Au temps pour moi, c'est dans le core et non dans SVP :
https://core.spip.net/projects/spip/repository/entry/branches/spip-3.2/ecrire/plugins/infos_paquet.php#L81

$h = $GLOBALS['meta']['adresse_site'] . '/'
        . substr("$dir_plugins$plug/", strlen(_DIR_RACINE)) . 'paquet.xml';

En remplaçant $GLOBALS['meta']['adresse_site'] . '/' par '../'

Ça passe. Mais je suppose qu'il y a une syntaxe plus générale pour calculer le chemin relatif à ecrire/

#2 Mis à jour par RealET 🔸 il y a 3 mois

Au temps pour moi, c'est dans le core et non dans SVP :
https://core.spip.net/projects/spip/repository/entry/branches/spip-3.2/ecrire/plugins/infos_paquet.php#L81

$h = $GLOBALS['meta']['adresse_site'] . '/'
        . substr("$dir_plugins$plug/", strlen(_DIR_RACINE)) . 'paquet.xml';

En remplaçant $GLOBALS['meta']['adresse_site'] . '/' par '../'

Ça passe. Mais je suppose qu'il y a une syntaxe plus générale pour calculer le chemin relatif à ecrire/

PS : à noter : ce message d'erreur est dans le cache, donc, pour tester, il faut ecrire/?exec=admin_plugin&actualise=1&var_mode=recalcul

#3 Mis à jour par marcimat 🌈 il y a 2 mois

Je crois qu’on ne cherchera aucune solution pour l’analyseur XML en l’état.

Il faudrait utiliser certainement http://php.net/manual/fr/domdocument.validate.php ou une lib externe spécifique ;
Un moyen d’avoir la liste des erreurs : http://php.net/manual/en/domdocument.validate.php#85792

#4 Mis à jour par b b il y a environ un mois

  • Projet changé de SVP à SPIP

Le bon projet...

Je crois qu’on ne cherchera aucune solution pour l’analyseur XML en l’état.

Wontfix du coup ? Ou on bascule sur la version 4.0 pour ne pas oublier de le faire plus tard ?

#5 Mis à jour par RealET 🔸 il y a environ un mois

On peut peut-être au moins corriger le lien pour qu'il pointe au bon endroit, non ? (même si le bon endroit ne marche pas).

Formats disponibles : Atom PDF