From: Richard W.M. Jones Date: Wed, 9 Mar 2011 11:37:35 +0000 (+0000) Subject: docs: Document that SIGPIPE should not be masked when running virt-what. X-Git-Tag: 1.10~5 X-Git-Url: http://git.annexia.org/?a=commitdiff_plain;h=b12933e28ac504f461dc1a2f9d4682c72f538d0e;p=virt-what.git docs: Document that SIGPIPE should not be masked when running virt-what. --- diff --git a/virt-what.pod b/virt-what.pod index 156406e..99547c0 100644 --- a/virt-what.pod +++ b/virt-what.pod @@ -179,6 +179,24 @@ whether C managed detection "correctly" (which is basically unknowable given the large variety of virtualization systems out there and that some systems deliberately emulate others). +=head1 RUNNING VIRT-WHAT FROM OTHER PROGRAMS + +C is designed so that you can easily run it from +other programs or wrap it up in a library. + +Your program should check the exit status (see the section above). + +Some programming languages (notably Python: issue 1652) erroneously +mask the C signal and do not restore it when executing +subprocesses. C is a shell script and some shell commands +do not work correctly when you do this. You may see warnings from +C similar to this: + + echo: write error: Broken pipe + +The solution is to set the C signal handler back to C +before running C. + =head1 IMPORTANT NOTE Most of the time, using this program is the I thing to do.