samba unix风格的配置文件配置信息读取C代码.(3) * types: section-name, parameter-name, parameter-value, and * end-of-file. Comments and line continuation are handled * internally. * * The entry point to the module is function pm_process(). This * function opens the source file, calls the Parse() function to parse * the input, and then closes the file when either the EOF is reached * or a fatal error is encountered. * * A sample parameter file might look like this: * * [section one] * parameter one = value string * parameter two = another value * [section two] * new parameter = some value or t'other * * The parameter file is divided into sections by section headers: * section names enclosed in square brackets (eg. [section one]). * Each section contains parameter lines, each of which consist of a * parameter name and value delimited by an equal sign. Roughly, the * syntax is: * * <file> :== { <section> } EOF * * <section> :== <section header> { <parameter line> } * * <section header> :== '[' NAME ']' * * <parameter line> :== NAME '=' VALUE '\n' * * Blank lines and comment lines are ignored. Comment lines are lines * beginning with either a semicolon (';') or a pound sign ('#'). * * All whitespace in section names and parameter names is compressed * to single spaces. Leading and trailing whitespace is stipped from