This file is indexed.

/usr/share/doc/augeas-doc/lenses/files/hosts_access-aug.html is in augeas-doc 1.2.0-0ubuntu1.3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Hosts_Access - Augeas Documentation</title><link rel="stylesheet" type="text/css" href="../styles/main.css"><script language=JavaScript src="../javascript/main.js"></script><script language=JavaScript src="../javascript/prettify.js"></script><script language=JavaScript src="../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>

<!--  Generated by Natural Docs, version 1.51 -->
<!--  http://www.naturaldocs.org  -->

<!-- saved from url=(0026)http://www.naturaldocs.org -->




<div id=Content><div class="CAugeasModule"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="Hosts_Access"></a>Hosts_Access</h1><div class=CBody><p>Parses /etc/hosts.{allow,deny}</p><p>Author: Raphael Pinson <a href="#" onClick="location.href='mai' + 'lto:' + 'rap' + 'hink' + '@' + 'gmai' + 'l.com'; return false;" class=LEMail>rap<span style="display: none">.nosp@m.</span>hink<span>@</span>gmai<span style="display: none">.nosp@m.</span>l.com</a></p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#Hosts_Access" >Hosts_Access</a></td><td class=SDescription>Parses /etc/hosts.{allow,deny}</td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Hosts_Access.Reference" >Reference</a></td><td class=SDescription>This lens tries to keep as close as possible to `man 5 hosts_access` and `man 5 hosts_options` where possible.</td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Hosts_Access.License" >License</a></td><td class=SDescription>This file is licenced under the LGPL v2+, like the rest of Augeas.</td></tr><tr class="SGeneric SIndent1 SMarked"><td class=SEntry><a href="#Hosts_Access.Lens_Usage" >Lens Usage</a></td><td class=SDescription>To be documented</td></tr><tr class="SGeneric SIndent1"><td class=SEntry><a href="#Hosts_Access.Configuration_files" >Configuration files</a></td><td class=SDescription>This lens applies to /etc/hosts.{allow,deny}. </td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Hosts_Access.USEFUL_PRIMITIVES" >USEFUL PRIMITIVES</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.colon" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">colon</a></td><td class=SDescription></td></tr><tr class="SAugeasVariable SIndent2"><td class=SEntry><a href="#Hosts_Access.comma_sep" id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">comma_sep</a></td><td class=SDescription></td></tr><tr class="SAugeasVariable SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.ws_sep" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">ws_sep</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.list_sep" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">list_sep</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.list_item" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">list_item</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.client_host_item" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">client_host_item</a></td><td class=SDescription>Allows @ for netgroups, supports [ipv6] syntax</td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.client_file_item" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">client_file_item</a></td><td class=SDescription></td></tr><tr class="SAugeasVariable SIndent2"><td class=SEntry><a href="#Hosts_Access.option_kw" id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">option_kw</a></td><td class=SDescription>Since either an option or a shell command can be given, use an explicit list of known options to avoid misinterpreting a command as an option</td></tr><tr class="SAugeasVariable SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.shell_command_rx" id=link9 onMouseOver="ShowTip(event, 'tt9', 'link9')" onMouseOut="HideTip('tt9')">shell_command_rx</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.sto_to_colon" id=link10 onMouseOver="ShowTip(event, 'tt10', 'link10')" onMouseOut="HideTip('tt10')">sto_to_colon</a></td><td class=SDescription>Allows escaped colon sequences</td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.except" id=link11 onMouseOver="ShowTip(event, 'tt11', 'link11')" onMouseOut="HideTip('tt11')">except</a></td><td class=SDescription>The except operator makes it possible to write very compact rules.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Hosts_Access.ENTRY_TYPES" >ENTRY TYPES</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.daemon" id=link12 onMouseOver="ShowTip(event, 'tt12', 'link12')" onMouseOut="HideTip('tt12')">daemon</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.daemon_list" id=link13 onMouseOver="ShowTip(event, 'tt13', 'link13')" onMouseOut="HideTip('tt13')">daemon_list</a></td><td class=SDescription>A list of <a href="#Hosts_Access.daemon" class=LAugeasLens id=link14 onMouseOver="ShowTip(event, 'tt12', 'link14')" onMouseOut="HideTip('tt12')">daemon</a>s</td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.client" id=link15 onMouseOver="ShowTip(event, 'tt14', 'link15')" onMouseOut="HideTip('tt14')">client</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.client_file" id=link16 onMouseOver="ShowTip(event, 'tt15', 'link16')" onMouseOut="HideTip('tt15')">client_file</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.client_list" id=link17 onMouseOver="ShowTip(event, 'tt16', 'link17')" onMouseOut="HideTip('tt16')">client_list</a></td><td class=SDescription>A list of <a href="#Hosts_Access.client" class=LAugeasLens id=link18 onMouseOver="ShowTip(event, 'tt14', 'link18')" onMouseOut="HideTip('tt14')">client</a>s</td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.option" id=link19 onMouseOver="ShowTip(event, 'tt17', 'link19')" onMouseOut="HideTip('tt17')">option</a></td><td class=SDescription>Optional extensions defined in hosts_options(5)</td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.shell_command" id=link20 onMouseOver="ShowTip(event, 'tt18', 'link20')" onMouseOut="HideTip('tt18')">shell_command</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.entry" id=link21 onMouseOver="ShowTip(event, 'tt19', 'link21')" onMouseOut="HideTip('tt19')">entry</a></td><td class=SDescription></td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#Hosts_Access.LENS_AND_FILTER" >LENS AND FILTER</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2 SMarked"><td class=SEntry><a href="#Hosts_Access.lns" id=link22 onMouseOver="ShowTip(event, 'tt20', 'link22')" onMouseOut="HideTip('tt20')">lns</a></td><td class=SDescription></td></tr><tr class="SAugeasLens SIndent2"><td class=SEntry><a href="#Hosts_Access.filter" >filter</a></td><td class=SDescription></td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.Reference"></a>Reference</h3><div class=CBody><p>This lens tries to keep as close as possible to `man 5 hosts_access` and `man 5 hosts_options` where possible.</p></div></div></div>

<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.License"></a>License</h3><div class=CBody><p>This file is licenced under the LGPL v2+, like the rest of Augeas.</p></div></div></div>

<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.Lens_Usage"></a>Lens Usage</h3><div class=CBody><p>To be documented</p></div></div></div>

<div class="CGeneric"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.Configuration_files"></a>Configuration files</h3><div class=CBody><p>This lens applies to /etc/hosts.{allow,deny}.&nbsp; See <a href="#Hosts_Access.filter" class=LAugeasLens >filter</a>.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.USEFUL_PRIMITIVES"></a>USEFUL PRIMITIVES</h3></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.colon"></a>colon</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let colon = del /[ \t]*(\\\\[ \t]*\n[ \t]+)?:[ \t]*(\\\\[ \t]*\n[ \t]+)?/ &quot;: &quot;
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasVariable"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.comma_sep"></a>comma_sep</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let comma_sep = /([ \t]|(\\\\\n))*,([ \t]|(\\\\\n))*/
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasVariable"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.ws_sep"></a>ws_sep</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let ws_sep = / +/
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.list_sep"></a>list_sep</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let list_sep = del ( comma_sep | ws_sep ) &quot;, &quot;
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.list_item"></a>list_item</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let list_item = store ( Rx.word - /EXCEPT/i )
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.client_host_item"></a>client_host_item</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_host_item =
  let client_hostname_rx = /[A-Za-z0-9_.@?*-][A-Za-z0-9_.?*-]*/ in
  let client_ipv6_rx = &quot;[&quot; . /[A-Za-z0-9:?*%]+/ . &quot;]&quot; in
    let client_host_rx = client_hostname_rx | client_ipv6_rx in
    let netmask = [ Util.del_str &quot;/&quot; . label &quot;netmask&quot; . store Rx.word ] in
      store ( client_host_rx - /EXCEPT/i ) . netmask?
</td></tr></table></blockquote><p>Allows @ for netgroups, supports [ipv6] syntax</p></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.client_file_item"></a>client_file_item</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_file_item =
  let client_file_rx = /\/[^ \t\n,:]+/ in
    store ( client_file_rx - /EXCEPT/i )
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasVariable"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.option_kw"></a>option_kw</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let option_kw = &quot;severity&quot;
              | &quot;spawn&quot;
              | &quot;twist&quot;
              | &quot;keepalive&quot;
              | &quot;linger&quot;
              | &quot;rfc931&quot;
              | &quot;banners&quot;
              | &quot;nice&quot;
              | &quot;setenv&quot;
              | &quot;umask&quot;
              | &quot;user&quot;
              | /allow/i
              | /deny/i
</td></tr></table></blockquote><p>Since either an option or a shell command can be given, use an explicit list of known options to avoid misinterpreting a command as an option</p></div></div></div>

<div class="CAugeasVariable"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.shell_command_rx"></a>shell_command_rx</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let shell_command_rx = /[^ \t\n:][^\n]*[^ \t\n]|[^ \t\n:\\\\]/
                         - ( option_kw . /.*/ )
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.sto_to_colon"></a>sto_to_colon</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let sto_to_colon = store /[^ \t\n:=][^\n:]*((\\\\:|\\\\[ \t]*\n[ \t]+)[^\n:]*)*[^ \\\t\n:]|[^ \t\n:\\\\]/
</td></tr></table></blockquote><p>Allows escaped colon sequences</p></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.except"></a>except</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let except (lns:lens) = [ label &quot;except&quot; . Sep.space
                        . del /except/i &quot;EXCEPT&quot;
                        . Sep.space . lns ]
</td></tr></table></blockquote><p>The except operator makes it possible to write very compact rules.</p></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.ENTRY_TYPES"></a>ENTRY TYPES</h3></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.daemon"></a>daemon</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let daemon =
  let host = [ label &quot;host&quot;
             . Util.del_str &quot;@&quot;
             . list_item ] in
   [ label &quot;process&quot;
   . list_item
   . host? ]
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.daemon_list"></a>daemon_list</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let daemon_list = Build.opt_list daemon list_sep
</td></tr></table></blockquote><p>A list of <a href="#Hosts_Access.daemon" class=LAugeasLens id=link23 onMouseOver="ShowTip(event, 'tt12', 'link23')" onMouseOut="HideTip('tt12')">daemon</a>s</p></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.client"></a>client</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client =
  let user = [ label &quot;user&quot;
             . list_item
             . Util.del_str &quot;@&quot; ] in
    [ label &quot;client&quot;
    . user?
    . client_host_item ]
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.client_file"></a>client_file</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_file = [ label &quot;file&quot; . client_file_item ]
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.client_list"></a>client_list</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_list = Build.opt_list ( client | client_file ) list_sep
</td></tr></table></blockquote><p>A list of <a href="#Hosts_Access.client" class=LAugeasLens id=link24 onMouseOver="ShowTip(event, 'tt14', 'link24')" onMouseOut="HideTip('tt14')">client</a>s</p></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.option"></a>option</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let option = [ key option_kw
             . ( del /([ \t]*=[ \t]*|[ \t]+)/ &quot; &quot; . sto_to_colon )? ]
</td></tr></table></blockquote><p>Optional extensions defined in hosts_options(5)</p></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.shell_command"></a>shell_command</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let shell_command = [ label &quot;shell_command&quot;
                    . store shell_command_rx ]
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.entry"></a>entry</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let entry = [ seq &quot;line&quot;
            . daemon_list
            . (except daemon_list)?
            . colon
            . client_list
            . (except client_list)?
            . ( (colon . option)+ | (colon . shell_command)? )
            . Util.eol ]
</td></tr></table></blockquote></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.LENS_AND_FILTER"></a>LENS AND FILTER</h3></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.lns"></a>lns</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let lns = (Util.empty | Util.comment | entry)*
</td></tr></table></blockquote></div></div></div>

<div class="CAugeasLens"><div class=CTopic><h3 class=CTitle><a name="Hosts_Access.filter"></a>filter</h3></div></div>

</div><!--Content-->


<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->


<div id=Menu><div class=MTitle>Augeas Documentation<div class=MSubTitle>Modules</div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Main Site</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MLink><a href="/index.html">Main</a></div></div><div class=MEntry><div class=MLink><a href="/docs/index.html">Documentation</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Specific Modules</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="access-aug.html">Access</a></div></div><div class=MEntry><div class=MFile><a href="activemq_conf-aug.html">ActiveMQ_Conf</a></div></div><div class=MEntry><div class=MFile><a href="activemq_xml-aug.html">ActiveMQ_XML</a></div></div><div class=MEntry><div class=MFile><a href="aliases-aug.html">Aliases</a></div></div><div class=MEntry><div class=MFile><a href="anacron-aug.html">Anacron</a></div></div><div class=MEntry><div class=MFile><a href="approx-aug.html">Approx</a></div></div><div class=MEntry><div class=MFile><a href="apt_update_manager-aug.html">Apt_Update_Manager</a></div></div><div class=MEntry><div class=MFile><a href="aptcacherngsecurity-aug.html">AptCacherNGSecurity</a></div></div><div class=MEntry><div class=MFile><a href="aptconf-aug.html">AptConf</a></div></div><div class=MEntry><div class=MFile><a href="aptpreferences-aug.html">AptPreferences</a></div></div><div class=MEntry><div class=MFile><a href="aptsources-aug.html">Aptsources</a></div></div><div class=MEntry><div class=MFile><a href="authorized_keys-aug.html">Authorized_Keys</a></div></div><div class=MEntry><div class=MFile><a href="automaster-aug.html">Automaster</a></div></div><div class=MEntry><div class=MFile><a href="automounter-aug.html">Automounter</a></div></div><div class=MEntry><div class=MFile><a href="avahi-aug.html">Avahi</a></div></div><div class=MEntry><div class=MFile><a href="backuppchosts-aug.html">BackupPCHosts</a></div></div><div class=MEntry><div class=MFile><a href="bootconf-aug.html">BootConf</a></div></div><div class=MEntry><div class=MFile><a href="cachefilesd-aug.html">Cachefilesd</a></div></div><div class=MEntry><div class=MFile><a href="carbon-aug.html">Carbon</a></div></div><div class=MEntry><div class=MFile><a href="cgconfig-aug.html">Cgconfig</a></div></div><div class=MEntry><div class=MFile><a href="cgrules-aug.html">Cgrules</a></div></div><div class=MEntry><div class=MFile><a href="channels-aug.html">Channels</a></div></div><div class=MEntry><div class=MFile><a href="collectd-aug.html">Collectd</a></div></div><div class=MEntry><div class=MFile><a href="cron-aug.html">Cron</a></div></div><div class=MEntry><div class=MFile><a href="crypttab-aug.html">Crypttab</a></div></div><div class=MEntry><div class=MFile><a href="cups-aug.html">Cups</a></div></div><div class=MEntry><div class=MFile><a href="debctrl-aug.html">Debctrl</a></div></div><div class=MEntry><div class=MFile><a href="desktop-aug.html">Desktop</a></div></div><div class=MEntry><div class=MFile><a href="dhcpd-aug.html">Dhcpd</a></div></div><div class=MEntry><div class=MFile><a href="dovecot-aug.html">Dovecot</a></div></div><div class=MEntry><div class=MFile><a href="dpkg-aug.html">Dpkg</a></div></div><div class=MEntry><div class=MFile><a href="exports-aug.html">Exports</a></div></div><div class=MEntry><div class=MFile><a href="fai_diskconfig-aug.html">FAI_DiskConfig</a></div></div><div class=MEntry><div class=MFile><a href="fonts-aug.html">Fonts</a></div></div><div class=MEntry><div class=MFile><a href="fuse-aug.html">Fuse</a></div></div><div class=MEntry><div class=MFile><a href="grub-aug.html">Grub</a></div></div><div class=MEntry><div class=MFile><a href="gtkbookmarks-aug.html">GtkBookmarks</a></div></div><div class=MEntry><div class=MFile><a href="host_conf-aug.html">Host_Conf</a></div></div><div class=MEntry><div class=MFile><a href="hostname-aug.html">Hostname</a></div></div><div class=MEntry><div class=MFile id=MSelected>Hosts_Access</div></div><div class=MEntry><div class=MFile><a href="htpasswd-aug.html">Htpasswd</a></div></div><div class=MEntry><div class=MFile><a href="inputrc-aug.html">Inputrc</a></div></div><div class=MEntry><div class=MFile><a href="jettyrealm-aug.html">JettyRealm</a></div></div><div class=MEntry><div class=MFile><a href="jmxaccess-aug.html">JMXAccess</a></div></div><div class=MEntry><div class=MFile><a href="jmxpassword-aug.html">JMXPassword</a></div></div><div class=MEntry><div class=MFile><a href="iptables-aug.html">Iptables</a></div></div><div class=MEntry><div class=MFile><a href="kdump-aug.html">Kdump</a></div></div><div class=MEntry><div class=MFile><a href="keepalived-aug.html">Keepalived</a></div></div><div class=MEntry><div class=MFile><a href="koji-aug.html">Koji</a></div></div><div class=MEntry><div class=MFile><a href="ldif-aug.html">Ldif</a></div></div><div class=MEntry><div class=MFile><a href="ldso-aug.html">Ldso</a></div></div><div class=MEntry><div class=MFile><a href="lightdm-aug.html">Lightdm</a></div></div><div class=MEntry><div class=MFile><a href="login_defs-aug.html">Login_defs</a></div></div><div class=MEntry><div class=MFile><a href="lokkit-aug.html">Lokkit</a></div></div><div class=MEntry><div class=MFile><a href="lvm-aug.html">LVM</a></div></div><div class=MEntry><div class=MFile><a href="mcollective-aug.html">MCollective</a></div></div><div class=MEntry><div class=MFile><a href="memcached-aug.html">Memcached</a></div></div><div class=MEntry><div class=MFile><a href="mke2fs-aug.html">Mke2fs</a></div></div><div class=MEntry><div class=MFile><a href="modprobe-aug.html">Modprobe</a></div></div><div class=MEntry><div class=MFile><a href="mongodbserver-aug.html">MongoDBServer</a></div></div><div class=MEntry><div class=MFile><a href="modules-aug.html">Modules</a></div></div><div class=MEntry><div class=MFile><a href="modules_conf-aug.html">Modules_conf</a></div></div><div class=MEntry><div class=MFile><a href="nagioscfg-aug.html">NagiosCfg</a></div></div><div class=MEntry><div class=MFile><a href="nagiosobjects-aug.html">NagiosObjects</a></div></div><div class=MEntry><div class=MFile><a href="netmasks-aug.html">Netmasks</a></div></div><div class=MEntry><div class=MFile><a href="networkmanager-aug.html">NetworkManager</a></div></div><div class=MEntry><div class=MFile><a href="networks-aug.html">Networks</a></div></div><div class=MEntry><div class=MFile><a href="nginx-aug.html">Nginx</a></div></div><div class=MEntry><div class=MFile><a href="nrpe-aug.html">Nrpe</a></div></div><div class=MEntry><div class=MFile><a href="nsswitch-aug.html">Nsswitch</a></div></div><div class=MEntry><div class=MFile><a href="ntpd-aug.html">Ntpd</a></div></div><div class=MEntry><div class=MFile><a href="openshift_config-aug.html">OpenShift_Config</a></div></div><div class=MEntry><div class=MFile><a href="openshift_http-aug.html">OpenShift_Http</a></div></div><div class=MEntry><div class=MFile><a href="openshift_quickstarts-aug.html">OpenShift_Quickstarts</a></div></div><div class=MEntry><div class=MFile><a href="pam-aug.html">Pam</a></div></div><div class=MEntry><div class=MFile><a href="pamconf-aug.html">PamConf</a></div></div><div class=MEntry><div class=MFile><a href="pbuilder-aug.html">Pbuilder</a></div></div><div class=MEntry><div class=MFile><a href="pg_hba-aug.html">Pg_Hba</a></div></div><div class=MEntry><div class=MFile><a href="postfix_transport-aug.html">Postfix_Transport</a></div></div><div class=MEntry><div class=MFile><a href="postfix_virtual-aug.html">Postfix_Virtual</a></div></div><div class=MEntry><div class=MFile><a href="postgresql-aug.html">Postgresql</a></div></div><div class=MEntry><div class=MFile><a href="protocols-aug.html">Protocols</a></div></div><div class=MEntry><div class=MFile><a href="puppetfileserver-aug.html">PuppetFileserver</a></div></div><div class=MEntry><div class=MFile><a href="puppet_auth-aug.html">Puppet_Auth</a></div></div><div class=MEntry><div class=MFile><a href="qpid-aug.html">Qpid</a></div></div><div class=MEntry><div class=MFile><a href="rabbitmq-aug.html">Rabbitmq</a></div></div><div class=MEntry><div class=MFile><a href="redis-aug.html">Redis</a></div></div><div class=MEntry><div class=MFile><a href="reprepro_uploaders-aug.html">Reprepro_Uploaders</a></div></div><div class=MEntry><div class=MFile><a href="resolv-aug.html">Resolv</a></div></div><div class=MEntry><div class=MFile><a href="rsyslog-aug.html">Rsyslog</a></div></div><div class=MEntry><div class=MFile><a href="schroot-aug.html">Schroot</a></div></div><div class=MEntry><div class=MFile><a href="services-aug.html">Services</a></div></div><div class=MEntry><div class=MFile><a href="shells-aug.html">Shells</a></div></div><div class=MEntry><div class=MFile><a href="shellvars-aug.html">Shellvars</a></div></div><div class=MEntry><div class=MFile><a href="simplelines-aug.html">Simplelines</a></div></div><div class=MEntry><div class=MFile><a href="simplevars-aug.html">Simplevars</a></div></div><div class=MEntry><div class=MFile><a href="sip_conf-aug.html">Sip_Conf</a></div></div><div class=MEntry><div class=MFile><a href="smbusers-aug.html">SmbUsers</a></div></div><div class=MEntry><div class=MFile><a href="splunk-aug.html">Splunk</a></div></div><div class=MEntry><div class=MFile><a href="solaris_system-aug.html">Solaris_System</a></div></div><div class=MEntry><div class=MFile><a href="ssh-aug.html">Ssh</a></div></div><div class=MEntry><div class=MFile><a href="sshd-aug.html">Sshd</a></div></div><div class=MEntry><div class=MFile><a href="sssd-aug.html">Sssd</a></div></div><div class=MEntry><div class=MFile><a href="subversion-aug.html">Subversion</a></div></div><div class=MEntry><div class=MFile><a href="sudoers-aug.html">Sudoers</a></div></div><div class=MEntry><div class=MFile><a href="sysconfig_route-aug.html">Sysconfig_Route</a></div></div><div class=MEntry><div class=MFile><a href="sysctl-aug.html">Sysctl</a></div></div><div class=MEntry><div class=MFile><a href="syslog-aug.html">Syslog</a></div></div><div class=MEntry><div class=MFile><a href="systemd-aug.html">Systemd</a></div></div><div class=MEntry><div class=MFile><a href="thttpd-aug.html">Thttpd</a></div></div><div class=MEntry><div class=MFile><a href="up2date-aug.html">Up2date</a></div></div><div class=MEntry><div class=MFile><a href="vmware_config-aug.html">VWware_Config</a></div></div><div class=MEntry><div class=MFile><a href="vfstab-aug.html">Vfstab</a></div></div><div class=MEntry><div class=MFile><a href="xinetd-aug.html">Xinetd</a></div></div><div class=MEntry><div class=MFile><a href="xorg-aug.html">Xorg</a></div></div><div class=MEntry><div class=MFile><a href="xymon_alerting-aug.html">Xymon_Alerting</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Generic Modules</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="build-aug.html">Build</a></div></div><div class=MEntry><div class=MFile><a href="erlang-aug.html">Erlang</a></div></div><div class=MEntry><div class=MFile><a href="inifile-aug.html">IniFile</a></div></div><div class=MEntry><div class=MFile><a href="quote-aug.html">Quote</a></div></div><div class=MEntry><div class=MFile><a href="rx-aug.html">Rx</a></div></div><div class=MEntry><div class=MFile><a href="sep-aug.html">Sep</a></div></div><div class=MEntry><div class=MFile><a href="util-aug.html">Util</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">Tests and Examples</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="tests/test_access-aug.html">Test_Access</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_activemq_conf-aug.html">Test_ActiveMQ_Conf</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_activemq_xml-aug.html">Test_ActiveMQ_XML</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_aliases-aug.html">Test_Aliases</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_anacron-aug.html">Test_Anacron</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_approx-aug.html">Test_Approx</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_apt_update_manager-aug.html">Test_Apt_Update_Manager</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_authorized_keys-aug.html">Test_Authorized_Keys</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_bootconf-aug.html">Test_BootConf</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_build-aug.html">Test_Build</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_carbon-aug.html">Test_Carbon</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_channels-aug.html">Test_Channels</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_collectd-aug.html">Test_Collectd</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_cups-aug.html">Test_Cups</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_dovecot-aug.html">Test_Dovecot</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_erlang-aug.html">Test_Erlang</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_fai_diskconfig-aug.html">Test_FAI_DiskConfig</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_fonts-aug.html">Test_Fonts</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_fuse-aug.html">Test_Fuse</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_gtkbookmarks-aug.html">Test_GtkBookmarks</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_htpasswd-aug.html">Test_Htpasswd</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_inifile-aug.html">Test_IniFile</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_inputrc-aug.html">Test_Inputrc</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_jettyrealm-aug.html">Test_JettyRealm</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_jmxaccess-aug.html">Test_JMXAccess</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_jmxpassword-aug.html">Test_JMXPassword</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_keepalived-aug.html">Test_Keepalived</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_koji-aug.html">Test_Koji</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_ldso-aug.html">Test_Ldso</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_lightdm-aug.html">Test_Lightdm</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_lvm-aug.html">Test_LVM</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_mcollective-aug.html">Test_MCollective</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_memcached-aug.html">Test_Memcached</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_mongodbserver-aug.html">Test_MongoDBServer</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_nagioscfg-aug.html">Test_NagiosCfg</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_networkmanager-aug.html">Test_NetworkManager</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_nginx-aug.html">Test_Nginx</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_ntpd-aug.html">Test_Ntpd</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_openshift_config-aug.html">Test_OpenShift_Config</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_openshift_http-aug.html">Test_OpenShift_Http</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_openshift_quickstarts-aug.html">Test_OpenShift_Quickstarts</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_postfix_transport-aug.html">Test_Postfix_Transport</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_postfix_virtual-aug.html">Test_Postfix_Virtual</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_postgresql-aug.html">Test_Postgresql</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_protocols-aug.html">Test_Protocols</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_puppet_auth-aug.html">Test_Puppet_Auth</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_qpid-aug.html">Test_Qpid</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_quote-aug.html">Test_Quote</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_rabbitmq-aug.html">Test_Rabbitmq</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_redis-aug.html">Test_Redis</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_reprepro_uploaders-aug.html">Test_Reprepro_Uploaders</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_rsyslog-aug.html">Test_Rsyslog</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_simplelines-aug.html">Test_Simplelines</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_simplevars-aug.html">Test_Simplevars</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_smbusers-aug.html">Test_SmbUsers</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_subversion-aug.html">Test_Subversion</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_sysconfig_route-aug.html">Test_Sysconfig_Route</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_sysctl-aug.html">Test_Sysctl</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_systemd-aug.html">Test_Systemd</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_thttpd-aug.html">Test_Thttpd</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_up2date-aug.html">Test_Up2date</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_vmware_config-aug.html">Test_VMware_Config</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_xml-aug.html">Test_Xml</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_yum-aug.html">Test_Yum</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_login_defs-aug.html">Test_login_defs</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_sssd-aug.html">Test_sssd</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_sudoers-aug.html">Test_sudoers</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_ssh-aug.html">Test_ssh</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_sshd-aug.html">Test_sshd</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_shellvars_list-aug.html">Shellvars_list.lns</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_slapd-aug.html">test_slapd.aug</a></div></div><div class=MEntry><div class=MFile><a href="tests/test_xymon_alerting-aug.html">Test_Xymon_Alerting</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../index/AugeasLenses.html">Lenses</a></div></div><div class=MEntry><div class=MIndex><a href="../index/AugeasModules.html">Modules</a></div></div><div class=MEntry><div class=MIndex><a href="../index/AugeasVariables.html">Variables</a></div></div><div class=MEntry><div class=MIndex><a href="../index/AugeasTests.html">Tests</a></div></div><div class=MEntry><div class=MIndex><a href="../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Files.html">Files</a></div></div><div class=MEntry><div class=MIndex><a href="../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="AugeasLenses">Augeas Lenses</option><option value="AugeasModules">Augeas Modules</option><option value="AugeasTests">Augeas Tests</option><option value="AugeasVariables">Augeas Variables</option><option value="Files">Files</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([2], 6);// --></script></div><!--Menu-->



<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let colon = del /[ \t]*(\\\\[ \t]*\n[ \t]+)?:[ \t]*(\\\\[ \t]*\n[ \t]+)?/ &quot;: &quot;
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt2"><div class=CAugeasVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let comma_sep = /([ \t]|(\\\\\n))*,([ \t]|(\\\\\n))*/
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt3"><div class=CAugeasVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let ws_sep = / +/
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt4"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let list_sep = del ( comma_sep | ws_sep ) &quot;, &quot;
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt5"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let list_item = store ( Rx.word - /EXCEPT/i )
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt6"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_host_item =
  let client_hostname_rx = /[A-Za-z0-9_.@?*-][A-Za-z0-9_.?*-]*/ in
  let client_ipv6_rx = &quot;[&quot; . /[A-Za-z0-9:?*%]+/ . &quot;]&quot; in
    let client_host_rx = client_hostname_rx | client_ipv6_rx in
    let netmask = [ Util.del_str &quot;/&quot; . label &quot;netmask&quot; . store Rx.word ] in
      store ( client_host_rx - /EXCEPT/i ) . netmask?
</td></tr></table></blockquote>Allows @ for netgroups, supports [ipv6] syntax</div></div><div class=CToolTip id="tt7"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_file_item =
  let client_file_rx = /\/[^ \t\n,:]+/ in
    store ( client_file_rx - /EXCEPT/i )
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt8"><div class=CAugeasVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let option_kw = &quot;severity&quot;
              | &quot;spawn&quot;
              | &quot;twist&quot;
              | &quot;keepalive&quot;
              | &quot;linger&quot;
              | &quot;rfc931&quot;
              | &quot;banners&quot;
              | &quot;nice&quot;
              | &quot;setenv&quot;
              | &quot;umask&quot;
              | &quot;user&quot;
              | /allow/i
              | /deny/i
</td></tr></table></blockquote>Since either an option or a shell command can be given, use an explicit list of known options to avoid misinterpreting a command as an option</div></div><div class=CToolTip id="tt9"><div class=CAugeasVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let shell_command_rx = /[^ \t\n:][^\n]*[^ \t\n]|[^ \t\n:\\\\]/
                         - ( option_kw . /.*/ )
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt10"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let sto_to_colon = store /[^ \t\n:=][^\n:]*((\\\\:|\\\\[ \t]*\n[ \t]+)[^\n:]*)*[^ \\\t\n:]|[^ \t\n:\\\\]/
</td></tr></table></blockquote>Allows escaped colon sequences</div></div><div class=CToolTip id="tt11"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let except (lns:lens) = [ label &quot;except&quot; . Sep.space
                        . del /except/i &quot;EXCEPT&quot;
                        . Sep.space . lns ]
</td></tr></table></blockquote>The except operator makes it possible to write very compact rules.</div></div><div class=CToolTip id="tt12"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let daemon =
  let host = [ label &quot;host&quot;
             . Util.del_str &quot;@&quot;
             . list_item ] in
   [ label &quot;process&quot;
   . list_item
   . host? ]
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt13"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let daemon_list = Build.opt_list daemon list_sep
</td></tr></table></blockquote>A list of daemons</div></div><div class=CToolTip id="tt14"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client =
  let user = [ label &quot;user&quot;
             . list_item
             . Util.del_str &quot;@&quot; ] in
    [ label &quot;client&quot;
    . user?
    . client_host_item ]
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt15"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_file = [ label &quot;file&quot; . client_file_item ]
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt16"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let client_list = Build.opt_list ( client | client_file ) list_sep
</td></tr></table></blockquote>A list of clients</div></div><div class=CToolTip id="tt17"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let option = [ key option_kw
             . ( del /([ \t]*=[ \t]*|[ \t]+)/ &quot; &quot; . sto_to_colon )? ]
</td></tr></table></blockquote>Optional extensions defined in hosts_options(5)</div></div><div class=CToolTip id="tt18"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let shell_command = [ label &quot;shell_command&quot;
                    . store shell_command_rx ]
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt19"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let entry = [ seq &quot;line&quot;
            . daemon_list
            . (except daemon_list)?
            . colon
            . client_list
            . (except client_list)?
            . ( (colon . option)+ | (colon . shell_command)? )
            . Util.eol ]
</td></tr></table></blockquote></div></div><div class=CToolTip id="tt20"><div class=CAugeasLens><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">let lns = (Util.empty | Util.comment | entry)*
</td></tr></table></blockquote></div></div><!--END_ND_TOOLTIPS-->




<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>


<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>