Anomalie #4630
pyeole/process.py : pas de quote fonctionnel en 2.4
Statut:
Classée sans suite
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Distribution:
EOLE 2.4
Description
La substitution des '\' par '\\\' a été remplacé par la fonction quote. Cette solution ne semble pas fonctionnelle (les tests unitaires ne passent en tout cas).
Il faudrait revoir le cas d'utilisation.
Demandes liées
Historique
#1 Mis à jour par Joël Cuissinat il y a plus de 11 ans
- Version cible mis à Eole 2.4-dev-2
#2 Mis à jour par Benjamin Bohard il y a plus de 11 ans
- Echéance mis à 01/02/2013
- Statut changé de Nouveau à Accepté
- Début changé de 20/12/2012 à 28/01/2013
#3 Mis à jour par Daniel Dehennin il y a plus de 11 ans
Il semblerait que la bonne pratique1 soit :
- Toujours utiliser une liste d’arguments, sans échappement ;
- laisser python faire l’échappement.
>>> import subprocess
>>> subprocess.list2cmdline(['ssh', 'root@127.0.0.1', "echo 'bidule\;truc' | wc -l"])
'ssh bidule@machin "echo \'bidule\\;truc\' | wc -l"'
Reste à voir si cela est utilisable pour creole:source:bin/CreoleGet?rev=a18255e#L36.
[1] http://stackoverflow.com/questions/967443/python-module-to-shellquote-unshellquote
#4 Mis à jour par Joël Cuissinat il y a environ 11 ans
- Echéance
01/02/2013supprimé
#5 Mis à jour par Joël Cuissinat il y a environ 11 ans
- Version cible changé de Eole 2.4-dev-2 à Eole 2.4-dev-3
#6 Mis à jour par Daniel Dehennin il y a environ 11 ans
subprocess.list2cmdline
semble bien fonctionner pour échapper des commandes mais n’est pas très utile pour creole:source:bin/CreoleGet
#7 Mis à jour par Benjamin Bohard il y a environ 11 ans
- Echéance mis à 19/04/2013
#8 Mis à jour par Joël Cuissinat il y a presque 11 ans
- Version cible
Eole 2.4-dev-3supprimé
#9 Mis à jour par Joël Cuissinat il y a presque 9 ans
- Statut changé de Accepté à Classée sans suite