Author: jelmer
Date: 2005-09-08 22:33:48 +0000 (Thu, 08 Sep 2005)
New Revision: 10094

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10094

Log:
Support quoted arguments in conformance files
Update pidl manpage

Modified:
   branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm
   branches/SAMBA_4_0/source/pidl/pidl.1.xml


Changeset:
Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm
===================================================================
--- branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm       
2005-09-08 21:59:40 UTC (rev 10093)
+++ branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm       
2005-09-08 22:33:48 UTC (rev 10094)
@@ -147,11 +147,12 @@
                        next;
                }
 
-               my @fields = split(/ /);
+               my @fields = split(/([^ ]+|"[^"]+")/);
 
-               my $cmd = $fields[0];
+               my $cmd = $fields[1];
 
                shift @fields;
+               shift @fields;
 
                if (not defined($field_handlers{$cmd})) {
                        print "$f:$ln: Warning: Unknown command `$cmd'\n";

Modified: branches/SAMBA_4_0/source/pidl/pidl.1.xml
===================================================================
--- branches/SAMBA_4_0/source/pidl/pidl.1.xml   2005-09-08 21:59:40 UTC (rev 
10093)
+++ branches/SAMBA_4_0/source/pidl/pidl.1.xml   2005-09-08 22:33:48 UTC (rev 
10094)
@@ -350,30 +350,26 @@
        <title>COMPATIBILITY WITH MIDL</title>
 
        <refsect2>
-               <title>Asynchronous communication</title>
+               <title>Missing features in pidl</title>
+               <para>
+                       The following MIDL features are not (yet) implemented 
in pidl 
+                       or are implemented with an incompatible interface:
+               </para>
 
-               <!--FIXME-->
+               <simplelist>
+                       <member>Asynchronous communication</member>
+                       <member>Typelibs (.tlb files)</member>
+                       <member>Datagram support (ncadg_*)</member>
+               </simplelist>
        </refsect2>
 
        <refsect2>
-               <title>Typelibs (.tlb files)</title>
+               <title>Supported properties (attributes is the MIDL 
term)</title>
 
-               <!-- FIXME -->
-       </refsect2>
+               <para>
+                       in, out, ref, length_is, switch_is, size_is, uuid, 
case, default, string, unique, ptr, pointer_default, v1_enum, object, 
helpstring, range, local, call_as, endpoint, switch_type, progid, coclass, 
iid_is.
+               </para>
 
-       <refsect2>
-               <title>Datagram support</title>
-
-               <para>ncadg is not supported yet.</para>
-       </refsect2>
-
-<refsect2>
-       <title>Supported properties (attributes is the MIDL term)</title>
-
-       <para>
-in, out, ref, length_is, switch_is, size_is, uuid, case, default, string, 
unique, ptr, pointer_default, v1_enum, object, helpstring, range, local, 
call_as, endpoint, switch_type, progid, coclass, iid_is.
-       </para>
-
 </refsect2>
 
 <refsect2>
@@ -490,53 +486,71 @@
 
 <varlistentry>
        <term>TYPE name dissector ft_type base_type mask valsstring 
alignment</term>
-       <listitem><para>FIXME</para></listitem>
+       <listitem><para>Register new data type with specified name, what 
dissector function to call and what properties to give header fields for 
elements of this type.</para></listitem>
 </varlistentry>
 
 <varlistentry>
        <term>NOEMIT type</term>
        <listitem><para>
-                       Suppress emitting a dissect_type function for the 
specified type
+       Suppress emitting a dissect_type function for the specified type
        </para></listitem>
 </varlistentry>
 
 <varlistentry>
        <term>PARAM_VALUE type param</term>
        <listitem><para>
-               FIXME
+       Set parameter to specify to dissector function for given type.
        </para></listitem>
 </varlistentry>
 
 <varlistentry>
-       <term>HF_FIELD hf title filter ft_type base_type valsstring mask 
blurb</term>
+       <term>HF_FIELD hf title filter ft_type base_type valsstring mask 
description</term>
        <listitem><para>
-       FIXME
+       Generate a custom header field with specified properties.
        </para></listitem>
 </varlistentry>
 
 <varlistentry>
        <term>HF_RENAME old_hf_name new_hf_name</term>
-       <listitem><para>FIXME</para></listitem>
+       <listitem><para>
+       Force the use of new_hf_name when the parser generator was going to 
+       use old_hf_name.
+       </para>
+
+       <para>
+       This can be used in conjunction with HF_FIELD in order to make more 
then 
+       one element use the same filter name.
+       </para>
+       </listitem>
 </varlistentry>
 
 <varlistentry>
        <term>STRIP_PREFIX prefix</term>
-       <listitem><para>        FIXME</para></listitem>
+       <listitem><para>
+       Remove the specified prefix from all function names (if present).
+       </para></listitem>
 </varlistentry>
        
 <varlistentry>
        <term>PROTOCOL longname shortname filtername</term>
-       <listitem><para>FIXME</para></listitem>
+       <listitem><para>
+       Change the short-, long- and filter-name for the current interface in
+       Ethereal.
+       </para></listitem>
 </varlistentry>
 
 <varlistentry>
        <term>FIELD_DESCRIPTION field desc</term>
-       <listitem><para>FIXME</para></listitem>
+       <listitem><para>Change description for the specified header field. 
+       Not implemented yet.</para></listitem>
 </varlistentry>
 
 <varlistentry>
        <term>IMPORT dissector code...</term>
-       <listitem><para>FIXME</para></listitem>
+       <listitem><para>
+       Code to insert when generating the specified dissector. @HF@ and 
+       @PARAM@ will be substituted.
+       </para></listitem>
 </varlistentry>
 
 </variablelist>
@@ -544,6 +558,19 @@
 </refsect1>
 
 <refsect1>
+       <title>EXAMPLES</title>
+
+       <programlisting>
+       # Generating an ethereal parser
+       $ ./pidl --eth-parser --parse -- atsvc.idl
+       
+       # Generating a TDR parser
+       $ ./pidl --tdr-parser --tdr-header --header --parse -- regf.idl
+       </programlisting>
+
+</refsect1>
+
+<refsect1>
        <title>VERSION</title>
 
        <para>This man page is correct for version 4.0 of the Samba 
suite.</para>
@@ -559,8 +586,6 @@
 <refsect1>
        <title>AUTHOR</title>
 
-       &man.credits.samba;
-
        <para>pidl was written by Andrew Tridgell, Stefan Metzmacher, Tim 
                Potter and Jelmer Vernooij. </para>
 

Reply via email to