Selon anne aublanc <anne.aublanc@???>:
> Bonjour,
>
> J'essaie de mettre tous mes pgms perl avec l'option -T.
>
> dans perlsec :
> open(FOO,"echo $arg|"); # Pas Ok, mais...
> open(FOO,"-|") or exec 'echo', $arg; # Ok
>
> J'ai une ligne du style
> open(FOO,"$cde $arg 2>&1 |"); # cde 1
>
> Je n'arrive pas à la transformer en
> open(FOO,"-|") or exec $cde, $arg;
> Je ne sais pas où mettre le 2>&1
Si je lis 'man perlsec', je trouve déjà les exemples qui ne passent pas:
open(FOO,"echo $arg|"); # Not OK
open(FOO,"-|")
or exec 'echo', $arg; # Also not OK
$shout = `echo $arg`; # Insecure, $shout now tainted
Bref, je ne vois pas comment tu pourrais exécuter une commande sans
tomber dans un de ces cas.
Si tu regarde 'man perlsec', tu trouveras un exemple assez complexe
(rechercher 'KID') avec un fork et suppression des privilèges
pour le 'exec'... Peut-être cela t'aiderait ?
A+
--
Yves Martin