- Timestamp:
- May 20, 2009, 6:46:53 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/samba-3.2.x/docs/htmldocs/Samba3-Developers-Guide/parsing.html
r149 r204 1 <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 11. The smb.conf file</title><link rel="stylesheet" href="../samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.73.1"><link rel="start" href="index.html" title="SAMBA Developers Guide"><link rel="up" href="pt03.html" title="Part III. Samba Subsystems"><link rel="prev" href="vfs.html" title="Chapter 10. VFS Modules"><link rel="next" href="wins.html" title="Chapter 12. Samba WINS Internals"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 11. The smb.conf file</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="vfs.html">Prev</a> </td><th width="60%" align="center">Part III. Samba Subsystems</th><td width="20%" align="right"> <a accesskey="n" href="wins.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="parsing"></a>Chapter 11. The smb.conf file</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Chris</span> <span class="surname">Hertel</span></h3></div></div><div><p class="pubdate">November 1997</p></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="parsing.html#id25528 67">Lexical Analysis</a></span></dt><dd><dl><dt><span class="sect2"><a href="parsing.html#id2552942">Handling of Whitespace</a></span></dt><dt><span class="sect2"><a href="parsing.html#id2552988">Handling of Line Continuation</a></span></dt><dt><span class="sect2"><a href="parsing.html#id2553041">Line Continuation Quirks</a></span></dt></dl></dd><dt><span class="sect1"><a href="parsing.html#id2553122">Syntax</a></span></dt><dd><dl><dt><span class="sect2"><a href="parsing.html#id2553181">About params.c</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2552867"></a>Lexical Analysis</h2></div></div></div><p>1 <html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Chapter 11. The smb.conf file</title><link rel="stylesheet" href="../samba.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.73.1"><link rel="start" href="index.html" title="SAMBA Developers Guide"><link rel="up" href="pt03.html" title="Part III. Samba Subsystems"><link rel="prev" href="vfs.html" title="Chapter 10. VFS Modules"><link rel="next" href="wins.html" title="Chapter 12. Samba WINS Internals"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Chapter 11. The smb.conf file</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="vfs.html">Prev</a> </td><th width="60%" align="center">Part III. Samba Subsystems</th><td width="20%" align="right"> <a accesskey="n" href="wins.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="parsing"></a>Chapter 11. The smb.conf file</h2></div><div><div class="author"><h3 class="author"><span class="firstname">Chris</span> <span class="surname">Hertel</span></h3></div></div><div><p class="pubdate">November 1997</p></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="parsing.html#id2552871">Lexical Analysis</a></span></dt><dd><dl><dt><span class="sect2"><a href="parsing.html#id2552946">Handling of Whitespace</a></span></dt><dt><span class="sect2"><a href="parsing.html#id2552992">Handling of Line Continuation</a></span></dt><dt><span class="sect2"><a href="parsing.html#id2553045">Line Continuation Quirks</a></span></dt></dl></dd><dt><span class="sect1"><a href="parsing.html#id2553126">Syntax</a></span></dt><dd><dl><dt><span class="sect2"><a href="parsing.html#id2553185">About params.c</a></span></dt></dl></dd></dl></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2552871"></a>Lexical Analysis</h2></div></div></div><p> 2 2 Basically, the file is processed on a line by line basis. There are 3 3 four types of lines that are recognized by the lexical analyzer … … 26 26 (loadparm.c). Parameter names and values are divided from one 27 27 another by an equal sign: '='. 28 </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id255294 2"></a>Handling of Whitespace</h3></div></div></div><p>28 </p><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2552946"></a>Handling of Whitespace</h3></div></div></div><p> 29 29 Whitespace is defined as all characters recognized by the isspace() 30 30 function (see ctype(3C)) except for the newline character ('\n') … … 41 41 </p></li><li><p> 42 42 Leading and trailing whitespace is removed from names and values. 43 </p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id25529 88"></a>Handling of Line Continuation</h3></div></div></div><p>43 </p></li></ol></div></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2552992"></a>Handling of Line Continuation</h3></div></div></div><p> 44 44 Long section header and parameter lines may be extended across 45 45 multiple lines by use of the backslash character ('\\'). Line … … 64 64 of comments. They are *only* recognized within section and parameter 65 65 lines. 66 </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id255304 1"></a>Line Continuation Quirks</h3></div></div></div><p>Note the following example:</p><pre class="programlisting">66 </p></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2553045"></a>Line Continuation Quirks</h3></div></div></div><p>Note the following example:</p><pre class="programlisting"> 67 67 param name = parameter value string \ 68 68 \ … … 88 88 [section name] 89 89 param name = value 90 </pre></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id255312 2"></a>Syntax</h2></div></div></div><p>The syntax of the smb.conf file is as follows:</p><pre class="programlisting">90 </pre></div></div><div class="sect1" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="id2553126"></a>Syntax</h2></div></div></div><p>The syntax of the smb.conf file is as follows:</p><pre class="programlisting"> 91 91 <file> :== { <section> } EOF 92 92 <section> :== <section header> { <parameter line> } … … 107 107 equal sign on the line separates the NAME from the VALUE. The 108 108 VALUE is terminated by a newline character (NL = '\n'). 109 </p></li></ol></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id255318 1"></a>About params.c</h3></div></div></div><p>109 </p></li></ol></div><div class="sect2" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id2553185"></a>About params.c</h3></div></div></div><p> 110 110 The parsing of the config file is a bit unusual if you are used to 111 111 lex, yacc, bison, etc. Both lexical analysis (scanning) and parsing
Note:
See TracChangeset
for help on using the changeset viewer.