<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 14 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">Since it is being set by reading a file in the first place you could use “—passphrase-file” to specify the file instead of doing the cat you’re doing in your
 “reliable” method.&nbsp;&nbsp; At least it saves having one pipe in the middle so reduces a bit of the work load.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">The man page on CentOS5 shows this:<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">--passphrase-file file<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Read the passphrase from file file.&nbsp; Only the first line will<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; be&nbsp; read&nbsp; from&nbsp; file file.&nbsp; This can only be used if only one<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; passphrase is supplied.&nbsp; Obviously, a passphrase stored in&nbsp; a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; file is of questionable security if other users can read this<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; file.&nbsp; Don’t use this option if you can avoid it.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1F497D"><o:p>&nbsp;</o:p></span></p>
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">From:</span></b><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> ale-bounces@ale.org [mailto:ale-bounces@ale.org]
<b>On Behalf Of </b>Neal Rhodes<br>
<b>Sent:</b> Monday, November 18, 2013 10:50 AM<br>
<b>To:</b> Atlanta Linux Enthusiasts<br>
<b>Subject:</b> Re: [ale] FD 3 on gpg?<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
<p class="MsoNormal">yes, indeed the wily script has this buried: <br>
<br>
&nbsp;&nbsp;&nbsp; exec 3&lt;/home/&lt;i-cant-tell-you&gt;/k_file.asc<br>
<br>
And this is apparently a one-shot trick;&nbsp;&nbsp; Run that gpg command once, and it has eaten the response.&nbsp;&nbsp; run again, and there ain't no response there no mo.
<br>
<br>
<br>
<br>
On Mon, 2013-11-18 at 13:55 &#43;0000, Lightner, Jeff wrote: <o:p></o:p></p>
<p class="MsoNormal" style="margin-bottom:12.0pt">File descriptors are just ways to keep track of open files.&nbsp;&nbsp; (Remember everything in Linux/UNIX is really a “file” just not necessarily a “regular file”.)<br>
<br>
&nbsp;<br>
<br>
There’s a good discussion of ways to set and use FDs other than 0-2 at:<br>
<br>
<a href="http://www.tldp.org/LDP/abs/html/io-redirection.html">http://www.tldp.org/LDP/abs/html/io-redirection.html</a><br>
<br>
&nbsp;<br>
<br>
Additionally I notice the man page for gpg has other options to SET file descriptors.<br>
<br>
&nbsp;<br>
<br>
You might look at the rest of the script (or whatever calls it) to see if it is setting a FD before it gets to the line below.<br>
<br>
&nbsp;<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</blockquote>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="mso-margin-top-alt:5.0pt;margin-right:.5in;margin-bottom:12.0pt;margin-left:.5in">
&nbsp;<br>
<br>
&nbsp;<o:p></o:p></p>
</blockquote>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="mso-margin-top-alt:5.0pt;margin-right:.5in;margin-bottom:12.0pt;margin-left:.5in">
<b>From:</b> <a href="mailto:ale-bounces@ale.org">ale-bounces@ale.org</a> [<a href="mailto:ale-bounces@ale.org">mailto:ale-bounces@ale.org</a>]
<b>On Behalf Of </b>Neal Rhodes<br>
<b>Sent:</b> Sunday, November 17, 2013 11:57 PM<br>
<b>To:</b> Atlanta Linux Enthusiasts<br>
<b>Subject:</b> [ale] FD 3 on gpg?<br>
<br>
<o:p></o:p></p>
</blockquote>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="mso-margin-top-alt:5.0pt;margin-right:.5in;margin-bottom:12.0pt;margin-left:.5in">
&nbsp;<br>
<br>
Here is a boiled down script buried in the bowels of a system which uploads data from pharmacies:
<br>
<br>
CMD=&quot;gpg --homedir $HOME_DIR/.gnupg --batch --passphrase-fd 3 --decrypt $HOLD 2&gt; /tmp/gpg.err.$$ | /usr/local/bin/$PARSER&nbsp; 2&gt;&gt; $LOG_FILE&quot;<br>
eval &quot;$CMD&quot;<br>
<br>
<br>
Which actually works.&nbsp;&nbsp;&nbsp; I cannot fathom how.&nbsp;&nbsp;&nbsp; The FM says it will read the passphrase from file descriptor 3.&nbsp; Uh...Stdin, Stdout, Stderr,&nbsp; There goes 0, 1, 2.&nbsp;&nbsp;&nbsp; uh, that would be a file defined within gpg?
<br>
<br>
Well, it sorta works.&nbsp;&nbsp; If you wiggle it, or jiggle it, modify it various ways, it stops working and typically says &quot;Bad passphrase&quot;.
<br>
<br>
This:<br>
<br>
CMD=&quot;cat something-something-icanttellyou/k_file.asc | gpg --homedir $HOME_DIR/.gnupg --batch --passphrase-fd 0 --decrypt $HOLD 2&gt; /tmp/gpg.err.$$ | /usr/local/bin/$PARSER 2&gt;&gt; $LOG_FILE&quot;<br>
eval &quot;$CMD&quot;<br>
<br>
<br>
Does work reliably under various combinations. <br>
<br>
Maybe there is some magic about FD 3 here, but I'm not finding it.&nbsp; Something about gpg-agent?
<br>
<br>
Neal Rhodes<br>
MNOP Ltd <br>
<br>
<o:p></o:p></p>
</blockquote>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<p class="MsoNormal" style="mso-margin-top-alt:5.0pt;margin-right:.5in;margin-bottom:12.0pt;margin-left:.5in">
&nbsp;<br>
<br>
&nbsp;<br>
<br>
<span style="font-size:10.0pt">Athena</span><span style="font-size:7.5pt">®</span><span style="font-size:10.0pt">, Created for the Cause</span><span style="font-size:7.5pt">™</span><br>
<br>
<span style="font-size:10.0pt">Making a Difference in the Fight Against Breast Cancer</span><br>
<br>
&nbsp;<br>
<br>
&nbsp;<br>
<br>
<b><span style="font-size:10.0pt">How and Why I Should Support Bottled Water!</span></b><br>
<span style="font-size:10.0pt">Do not relinquish your right to choose bottled water as a healthy alternative to beverages that contain sugar, calories, etc. Your support of bottled water will make a difference! Your signatures count! Go to
</span><a href="http://www.bottledwatermatters.org/luv-bottledwater-iframe/dswaters"><span style="font-size:10.0pt">http://www.bottledwatermatters.org/luv-bottledwater-iframe/dswaters</span></a><span style="font-size:10.0pt"> and sign a petition to support
 your right to always choose bottled water. Help fight federal and state issues, such as bottle deposits (or taxes) and organizations that want to ban the sale of bottled water. Support community curbside recycling programs. Support bottled water as a healthy
 way to maintain proper hydration. Our goal is 50,000 signatures. Share this petition with your friends and family today!</span><br>
<br>
&nbsp;<br>
<br>
---------------------------------<br>
CONFIDENTIALITY NOTICE: This e-mail may contain privileged or confidential information and is for the sole use of the intended recipient(s). If you are not the intended recipient, any disclosure, copying, distribution, or use of the contents of this information
 is prohibited and may be unlawful. If you have received this electronic transmission in error, please reply immediately to the sender that you have received the message in error, and delete it. Thank you.<br>
----------------------------------<br>
<br>
&nbsp;<o:p></o:p></p>
<pre><o:p>&nbsp;</o:p></pre>
<pre style="mso-margin-top-alt:0in;margin-right:.5in;margin-bottom:0in;margin-left:.5in;margin-bottom:.0001pt">_______________________________________________<o:p></o:p></pre>
<pre style="mso-margin-top-alt:0in;margin-right:.5in;margin-bottom:0in;margin-left:.5in;margin-bottom:.0001pt">Ale mailing list<o:p></o:p></pre>
<pre><a href="mailto:Ale@ale.org">Ale@ale.org</a><o:p></o:p></pre>
<pre><a href="http://mail.ale.org/mailman/listinfo/ale">http://mail.ale.org/mailman/listinfo/ale</a><o:p></o:p></pre>
<pre style="mso-margin-top-alt:0in;margin-right:.5in;margin-bottom:0in;margin-left:.5in;margin-bottom:.0001pt">See JOBS, ANNOUNCE and SCHOOLS lists at<o:p></o:p></pre>
<pre><a href="http://mail.ale.org/mailman/listinfo">http://mail.ale.org/mailman/listinfo</a><o:p></o:p></pre>
</blockquote>
<p class="MsoNormal"><o:p>&nbsp;</o:p></p>
</div>
</body>
</html>