in reply to Re: cvs wrapper with ssh-agent
in thread cvs wrapper with ssh-agent

Originally I had did not have the open() there and had the last line as:
print `/usr/bin/cvs @ARGV`;
But this failed when there were double quotes in the @ARGV. For example if @ARGV contained: commit -m "message goes here" filename_to_commit

So I used open() instead.

Replies are listed 'Best First'.
Re^3: cvs wrapper with ssh-agent
by blazar (Canon) on Sep 19, 2008 at 18:59 UTC

    I personally believe

    If you use open or exec (or system) you can "bypass" the shell by passing a list with more than one element, e.g.:

    open my $data, '-|', '/usr/bin/cvs' => @ARGV or die horribly;
    --
    If you can't understand the incipit, then please check the IPB Campaign.