diff options
Diffstat (limited to 'beagle/debian-rfs/usr/share/perl/5.10.1/IPC/Open2.pm')
| -rw-r--r-- | beagle/debian-rfs/usr/share/perl/5.10.1/IPC/Open2.pm | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/share/perl/5.10.1/IPC/Open2.pm b/beagle/debian-rfs/usr/share/perl/5.10.1/IPC/Open2.pm new file mode 100644 index 0000000..358a21e --- /dev/null +++ b/beagle/debian-rfs/usr/share/perl/5.10.1/IPC/Open2.pm @@ -0,0 +1,39 @@ +package IPC::Open2; + +use strict; +our ($VERSION, @ISA, @EXPORT); + +require 5.000; +require Exporter; + +$VERSION = 1.03; +@ISA = qw(Exporter); +@EXPORT = qw(open2); + +# &open2: tom christiansen, <tchrist@convex.com> +# +# usage: $pid = open2('rdr', 'wtr', 'some cmd and args'); +# or $pid = open2('rdr', 'wtr', 'some', 'cmd', 'and', 'args'); +# +# spawn the given $cmd and connect $rdr for +# reading and $wtr for writing. return pid +# of child, or 0 on failure. +# +# WARNING: this is dangerous, as you may block forever +# unless you are very careful. +# +# $wtr is left unbuffered. +# +# abort program if +# rdr or wtr are null +# a system call fails + +require IPC::Open3; + +sub open2 { + local $Carp::CarpLevel = $Carp::CarpLevel + 1; + return IPC::Open3::_open3('open2', scalar caller, + $_[1], $_[0], '>&STDERR', @_[2 .. $#_]); +} + +1 |
