home *** CD-ROM | disk | FTP | other *** search
/ PC Welt 2006 November (DVD) / PCWELT_11_2006.ISO / casper / filesystem.squashfs / usr / share / perl / 5.8.8 / IPC / Open2.pm next >
Encoding:
Perl POD Document  |  2006-07-07  |  835 b   |  40 lines

  1. package IPC::Open2;
  2.  
  3. use strict;
  4. our ($VERSION, @ISA, @EXPORT);
  5.  
  6. require 5.000;
  7. require Exporter;
  8.  
  9. $VERSION    = 1.02;
  10. @ISA        = qw(Exporter);
  11. @EXPORT        = qw(open2);
  12.  
  13. # &open2: tom christiansen, <tchrist@convex.com>
  14. #
  15. # usage: $pid = open2('rdr', 'wtr', 'some cmd and args');
  16. #    or  $pid = open2('rdr', 'wtr', 'some', 'cmd', 'and', 'args');
  17. #
  18. # spawn the given $cmd and connect $rdr for
  19. # reading and $wtr for writing.  return pid
  20. # of child, or 0 on failure.  
  21. # WARNING: this is dangerous, as you may block forever
  22. # unless you are very careful.  
  23. # $wtr is left unbuffered.
  24. # abort program if
  25. #    rdr or wtr are null
  26. #     a system call fails
  27.  
  28. require IPC::Open3;
  29.  
  30. sub open2 {
  31.     local $Carp::CarpLevel = $Carp::CarpLevel + 1;
  32.     return IPC::Open3::_open3('open2', scalar caller,
  33.                 $_[1], $_[0], '>&STDERR', @_[2 .. $#_]);
  34. }
  35.  
  36. 1
  37.