Valider 1a4b7024 rédigé par cerdic's avatar cerdic
Parcourir les fichiers

Utiliser valider_url_distante() en plus de tester_url_absolue() avant de faire...

Utiliser valider_url_distante() en plus de tester_url_absolue() avant de faire une copie locale sur un document distant (+ on reverifie apres copie_locale que la source est toujours licite et que rien n'a change entre temps)

(cherry picked from commit 9b8d1487)
parent d096d932
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+10 −4
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -59,11 +59,14 @@ function action_copier_local_post($id_document) {

	// si la source est bien un fichier distant
	// sinon c'est une donnee moisie, on ne fait rien
	if (tester_url_absolue($source)) {
		include_spip('inc/distant'); // pour 'copie_locale'
	include_spip('inc/distant');
	if (tester_url_absolue($source)
		and valider_url_distante($source)) {
		$fichier = copie_locale($source);
		if ($fichier
			and tester_url_absolue($source)) {
		if (
			$fichier
			and valider_url_distante($source)
		) {
			$fichier = _DIR_RACINE . $fichier;
			$files = array();
			$files[] = array('tmp_name' => $fichier, 'name' => basename($fichier));
@@ -84,6 +87,9 @@ function action_copier_local_post($id_document) {
			return true;
		} else {
			spip_log("echec copie locale $source", 'medias' . _LOG_ERREUR);
			if ($fichier) {
				@unlink(_DIR_RACINE . $fichier);
			}
		}
	} else {
		spip_log("echec copie locale $source n'est pas une URL distante", 'medias' . _LOG_ERREUR);