ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/IO-FDPass/FDPass.pm
(Generate patch)

Comparing IO-FDPass/FDPass.pm (file contents):
Revision 1.6 by root, Fri Apr 5 09:15:37 2013 UTC vs.
Revision 1.7 by root, Sat Apr 6 22:10:56 2013 UTC

83and higher). 83and higher).
84 84
85However, windows doesn't support asynchronous file descriptor passing, so 85However, windows doesn't support asynchronous file descriptor passing, so
86the source process must still be around when the destination process wants 86the source process must still be around when the destination process wants
87to receive the file handle. Also, if the target process fails to fetch the 87to receive the file handle. Also, if the target process fails to fetch the
88handle, the handle will leak, so never do that. 88handle for any reason (crashes, fails to call C<recv> etc.), the handle
89will leak, so never do that.
89 90
90Also, on windows, the receiving process must have the PROCESS_DUP_HANDLE 91Also, on windows, the receiving process must have the PROCESS_DUP_HANDLE
91access right on the sender process for this module to work. 92access right on the sender process for this module to work.
92 93
93Cygwin is not supported at the moment, as file descriptor passing in 94Cygwin is not supported at the moment, as file descriptor passing in
96one isn't exposed to programs, and only used for stdin/out/err. Sigh. 97one isn't exposed to programs, and only used for stdin/out/err. Sigh.
97 98
98=head1 OTHER MODULES 99=head1 OTHER MODULES
99 100
100At the time of this writing, the author of this module was aware of two 101At the time of this writing, the author of this module was aware of two
101other file descriptor passing modules on CPAN: L<Linux::FDPasser> and 102other file descriptor passing modules on CPAN: L<File::FDPasser> and
102L<AnyEvent::FDPasser>. 103L<AnyEvent::FDPasser>.
103 104
104The former hasn't seen any release for over a decade, isn't 64 bit clean 105The former hasn't seen any release for over a decade, isn't 64 bit clean
105and it's author didn't respond to my mail with the fix. It does, however, 106and it's author didn't respond to my mail with the fix, so doesn't work on
106support a number of pre-standard unices. 107many 64 bit machines. It does, however, support a number of pre-standard
108unices, basically everything of relevance at the time it was written.
107 109
108The latter seems to have similar support for antique unices, and doesn't 110The latter seems to have similar support for antique unices, and doesn't
109seem to suffer from 64 bit bugs, but inexplicably has a large perl part, 111seem to suffer from 64 bit bugs, but inexplicably has a large perl part,
110and requires AnyEvent. Presumably that makes it much more user friendly 112and requires AnyEvent. Presumably that makes it much more user friendly
111than this module. 113than this module (skimming the manpage shows that a lot of thought has
114gone into it, and you are well advised to read it and maybe use it before
115trying a low-level module such as this one).
112 116
113Neither seems to support native win32 perls. 117Neither seems to support native win32 perls.
114 118
115=head1 AUTHOR 119=head1 AUTHOR
116 120

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines