1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 2 3<html> 4 <head> 5 <meta name="generator" content="HTML Tidy, see www.w3.org"> 6 <title>Fixing Bad Control Files and Metacharacters</title> 7 <meta name="GENERATOR" content= 8 "Modular DocBook HTML Stylesheet Version 1.7"> 9 <link rel="HOME" title=" LPRng Reference Manual" href= 10 "index.htm"> 11 <link rel="UP" title="lpr - Job Spooler Program" href= 12 "lpr.htm"> 13 <link rel="PREVIOUS" title= 14 "Restrict Queue Use to Group Members " href="rg.htm"> 15 <link rel="NEXT" title="Minimum Spool Queue Free Space " href= 16 "minfree.htm"> 17 </head> 18 19 <body class="SECT1" bgcolor="#FFFFFF" text="#000000" link= 20 "#0000FF" vlink="#840084" alink="#0000FF"> 21 <div class="NAVHEADER"> 22 <table summary="Header navigation table" width="100%" border= 23 "0" cellpadding="0" cellspacing="0"> 24 <tr> 25 <th colspan="3" align="center">LPRng Reference Manual: 5 26 Sep 2003 (For LPRng-3.8.22)</th> 27 </tr> 28 29 <tr> 30 <td width="10%" align="left" valign="bottom"><a href= 31 "rg.htm" accesskey="P">Prev</a></td> 32 33 <td width="80%" align="center" valign="bottom">Chapter 6. 34 <b class="APPLICATION">lpr</b> - Job Spooler Program</td> 35 36 <td width="10%" align="right" valign="bottom"><a href= 37 "minfree.htm" accesskey="N">Next</a></td> 38 </tr> 39 </table> 40 <hr align="LEFT" width="100%"> 41 </div> 42 43 <div class="SECT1"> 44 <h1 class="SECT1"><a name="SAFECHARS">6.12. Fixing Bad 45 Control Files and Metacharacters</a></h1> 46 47 <p>Options used:</p> 48 49 <ul> 50 <li> 51 <p><var class="LITERAL">safe_chars=</var><span class= 52 "emphasis"><i class="EMPHASIS">additional safe characters 53 for control file</i></span></p> 54 </li> 55 </ul> 56 <br> 57 <br> 58 59 <p>RFC1179 defines a simple protocol and standard for print 60 jobs to be interchanged between print spooling systems. 61 Unfortunately, there were some major mistakes in not 62 specifying the exact form that text would take when placed in 63 the control file.</p> 64 65 <p>By default, <b class="APPLICATION">LPRng</b> will brutally 66 convert a non-conforming RFC1179 control file into one that 67 is acceptable to most, if not all, existing RFC1179 68 implementations. In order to prevent problems with <b class= 69 "APPLICATION">LPRng</b> ruthlessly purges all characters but 70 upper and lower case letters, spaces, tabs, and <var class= 71 "LITERAL">-_.@/:()=,+-%</var> from the control file, 72 replacing suspicious characters with underscore (<var class= 73 "LITERAL">_</var>). In addition, <b class= 74 "APPLICATION">LPRng</b> will ruthlessly regenerate control 75 file entries and data file names so that they are compliant 76 with all known RFC1179 implementations.</p> 77 78 <p>For some installations, the default set of safe characters 79 may be overly restrictive. For example, <span class= 80 "emphasis"><i class="EMPHASIS">vintage</i></span> software 81 may generate files with <var class="LITERAL">#</var> 82 characters in the <var class="LITERAL">J</var> line of the 83 control file. The replacement of this character by underscore 84 (<var class="LITERAL">_</var>) may cause other applications 85 which use the control file information to stop working. The 86 <var class="LITERAL">:safe_chars</var> option allows the user 87 to specify an additional set of safe characters in the <tt 88 class="FILENAME">lpd.conf</tt> configuration file(s).</p> 89 90 <p>For example, <var class="LITERAL">:safe_chars=#"</var> 91 would allow the <var class="LITERAL">#</var> and <var class= 92 "LITERAL">"</var> characters to appear in the control 93 file.</p> 94 </div> 95 96 <div class="NAVFOOTER"> 97 <hr align="LEFT" width="100%"> 98 99 <table summary="Footer navigation table" width="100%" border= 100 "0" cellpadding="0" cellspacing="0"> 101 <tr> 102 <td width="33%" align="left" valign="top"><a href= 103 "rg.htm" accesskey="P">Prev</a></td> 104 105 <td width="34%" align="center" valign="top"><a href= 106 "index.htm" accesskey="H">Home</a></td> 107 108 <td width="33%" align="right" valign="top"><a href= 109 "minfree.htm" accesskey="N">Next</a></td> 110 </tr> 111 112 <tr> 113 <td width="33%" align="left" valign="top">Restrict Queue 114 Use to Group Members</td> 115 116 <td width="34%" align="center" valign="top"><a href= 117 "lpr.htm" accesskey="U">Up</a></td> 118 119 <td width="33%" align="right" valign="top">Minimum Spool 120 Queue Free Space</td> 121 </tr> 122 </table> 123 </div> 124 </body> 125</html> 126 127