diff options
-rw-r--r-- | source4/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm | 5 | ||||
-rw-r--r-- | source4/pidl/pidl.1.xml | 85 |
2 files changed, 58 insertions, 32 deletions
diff --git a/source4/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm b/source4/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm index d0a3047939..7ba6af3815 100644 --- a/source4/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm +++ b/source4/pidl/lib/Parse/Pidl/Ethereal/Conformance.pm @@ -147,11 +147,12 @@ sub ReadConformance($$) 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"; diff --git a/source4/pidl/pidl.1.xml b/source4/pidl/pidl.1.xml index cf7f560f0d..8641d17e68 100644 --- a/source4/pidl/pidl.1.xml +++ b/source4/pidl/pidl.1.xml @@ -350,29 +350,25 @@ embedded structures in security descriptors and spoolss. <title>COMPATIBILITY WITH MIDL</title> <refsect2> - <title>Asynchronous communication</title> - - <!--FIXME--> - </refsect2> - - <refsect2> - <title>Typelibs (.tlb files)</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>Datagram support</title> - - <para>ncadg is not supported yet.</para> - </refsect2> + <title>Supported properties (attributes is the MIDL term)</title> -<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> + <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> @@ -490,53 +486,71 @@ The following commands are currently supported: <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 @@ The following commands are currently supported: </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 @@ The following commands are currently supported: <refsect1> <title>AUTHOR</title> - &man.credits.samba; - <para>pidl was written by Andrew Tridgell, Stefan Metzmacher, Tim Potter and Jelmer Vernooij. </para> |