I mean I have an apache application, using CGI::Fast (which uses FCGI). This application is working happily.
Now I'm trying to add a request handler that upon receiving a request via apache, it will attempt to use Net::OpenSSH to connect to a remote host
The issue is FCGI / CGI::Fast have captured and redirected the STDIN/STDOUT/STDERR filehandles and Net::OpenSSH dies when I try to create a new Net::OpenSSH object
Abbreviated code below
use CGI::Fast; while (my $r = CGI::Fast->new) { open my $stderr_fh, '>', 'some_file'; open my $stdin_fh, '<', '/dev/null'; open my $stdout_fh, '>', 'some_other_file'; my %options = ( batch_mode => 1, timeout => 10, kill_ssh_on_timeout => 1, default_stdout_discard => 1, default_stderr_discard => 1, master_stderr_fh => $stderr_fh, master_stdout_fh => $stdout_fh, ); my $ssh = Net::OpenSSH->new('test@192.168.0.123', %options); }
The errors invariably occur inside the Net::OpenSSH->new() call
In reply to Re^4: Handling STDERR when using Net::OpenSSH
by Anonymous Monk
in thread Handling STDERR when using Net::OpenSSH
by sittingbull
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |