From b2f3a85f78dcdb5a14ecefcd02949e528c35988b Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Thu, 8 Sep 2005 22:33:48 +0000 Subject: r10094: Support quoted arguments in conformance files Update pidl manpage (This used to be commit a69e88e7b19b8f05222b54aea88395b51b96c003) --- .../pidl/lib/Parse/Pidl/Ethereal/Conformance.pm | 5 +- 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,10 +147,11 @@ 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})) { 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. COMPATIBILITY WITH MIDL - Asynchronous communication - - - - - - Typelibs (.tlb files) + Missing features in pidl + + The following MIDL features are not (yet) implemented in pidl + or are implemented with an incompatible interface: + - + + Asynchronous communication + Typelibs (.tlb files) + Datagram support (ncadg_*) + - Datagram support - - ncadg is not supported yet. - + Supported properties (attributes is the MIDL term) - - Supported properties (attributes is the MIDL term) - - -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. - + + 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. + @@ -490,59 +486,90 @@ The following commands are currently supported: TYPE name dissector ft_type base_type mask valsstring alignment - FIXME + Register new data type with specified name, what dissector function to call and what properties to give header fields for elements of this type. NOEMIT type - Suppress emitting a dissect_type function for the specified type + Suppress emitting a dissect_type function for the specified type PARAM_VALUE type param - FIXME + Set parameter to specify to dissector function for given type. - HF_FIELD hf title filter ft_type base_type valsstring mask blurb + HF_FIELD hf title filter ft_type base_type valsstring mask description - FIXME + Generate a custom header field with specified properties. HF_RENAME old_hf_name new_hf_name - FIXME + + Force the use of new_hf_name when the parser generator was going to + use old_hf_name. + + + + This can be used in conjunction with HF_FIELD in order to make more then + one element use the same filter name. + + STRIP_PREFIX prefix - FIXME + + Remove the specified prefix from all function names (if present). + PROTOCOL longname shortname filtername - FIXME + + Change the short-, long- and filter-name for the current interface in + Ethereal. + FIELD_DESCRIPTION field desc - FIXME + Change description for the specified header field. + Not implemented yet. IMPORT dissector code... - FIXME + + Code to insert when generating the specified dissector. @HF@ and + @PARAM@ will be substituted. + + + EXAMPLES + + + # Generating an ethereal parser + $ ./pidl --eth-parser --parse -- atsvc.idl + + # Generating a TDR parser + $ ./pidl --tdr-parser --tdr-header --header --parse -- regf.idl + + + + VERSION @@ -559,8 +586,6 @@ The following commands are currently supported: AUTHOR - &man.credits.samba; - pidl was written by Andrew Tridgell, Stefan Metzmacher, Tim Potter and Jelmer Vernooij. -- cgit