From b42f358d511096689916d75584583bd4dd08e41b Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Wed, 24 Aug 2005 11:17:28 +0000 Subject: r9576: Couple of small fixes. Generate notice indicating that the parsers were autogenerated. (This used to be commit a37e2134e61eb38e9cbc54f8533113622f013037) --- source4/pidl/lib/Parse/Pidl/Ethereal/NDR.pm | 23 ++++++++++++++++++----- source4/pidl/pidl | 26 +++++++++++++------------- 2 files changed, 31 insertions(+), 18 deletions(-) (limited to 'source4/pidl') diff --git a/source4/pidl/lib/Parse/Pidl/Ethereal/NDR.pm b/source4/pidl/lib/Parse/Pidl/Ethereal/NDR.pm index 72ff819b68..f61ce89ee8 100644 --- a/source4/pidl/lib/Parse/Pidl/Ethereal/NDR.pm +++ b/source4/pidl/lib/Parse/Pidl/Ethereal/NDR.pm @@ -542,7 +542,7 @@ sub RegisterInterface($) # in epan/dissctors are deleted. my $name = "\"" . uc($x->{NAME}) . " (pidl)\""; - my $short_name = $x->{NAME}; + my $short_name = uc($x->{NAME}); my $filter_name = $x->{NAME}; if (has_property($x, "helpstring")) { @@ -697,16 +697,29 @@ sub Initialize($) ##################################################################### # Generate ethereal parser and header code -sub Parse($$) +sub Parse($$$$) { - my($ndr,$h_filename,$cnf_file) = @_; + my($ndr,$idl_file,$h_filename,$cnf_file) = @_; Initialize($cnf_file); $tabs = ""; %res = (code=>"",def=>"",hdr=>""); - pidl_hdr "/* header auto-generated by pidl */"; + my $notice = +"/* DO NOT EDIT + This filter was automatically generated + from $idl_file and $cnf_file. + + Pidl is a perl based IDL compiler for DCE/RPC idl files. + It is maintained by the Samba team, not the Ethereal team. + Instructions on how to download and install Pidl can be + found at http://wiki.ethereal.com/Pidl +*/ + +"; + + pidl_hdr $notice; $res{headers} = "\n"; $res{headers} .= "#ifdef HAVE_CONFIG_H\n"; @@ -733,7 +746,7 @@ sub Parse($$) $res{ett} = DumpEttDeclaration(); $res{hf} = DumpHfDeclaration(); - my $parser = "/* parser auto-generated by pidl */"; + my $parser = $notice; $parser.= $res{headers}; $parser.=$res{ett}; $parser.=$res{hf}; diff --git a/source4/pidl/pidl b/source4/pidl/pidl index 1cc2ee44cb..a8631043b2 100755 --- a/source4/pidl/pidl +++ b/source4/pidl/pidl @@ -101,26 +101,26 @@ Generic Options: --parse parse a idl file to a .pidl file --dump dump a pidl file back to idl --diff run diff on the idl and dumped output - --keep[=OUTFILE] keep the .pidl file + --keep[=OUTFILE] keep the .pidl file [BASENAME.pidl] --odl accept ODL input --warn-compat warn about incompatibility with other compilers --quiet be quiet --verbose be verbose Samba 4 output: - --header[=OUTFILE] create generic header file + --header[=OUTFILE] create generic header file [BASENAME.h] --uint-enums don't use C enums, instead use uint* types - --ndr-header[=OUTFILE] create a C NDR-specific header file - --ndr-parser[=OUTFILE] create a C NDR parser - --client[=OUTFILE] create a C NDR client - --tdr-header[=OUTFILE] create a C TDR header file - --tdr-parser[=OUTFILE] create a C TDR parser - --ejs[=OUTFILE] create ejs wrapper file - --swig[=OUTFILE] create swig wrapper file - --server[=OUTFILE] create server boilerplate + --ndr-header[=OUTFILE] create a C NDR-specific header file [ndr_BASENAME.h] + --ndr-parser[=OUTFILE] create a C NDR parser [ndr_BASENAME.c] + --client[=OUTFILE] create a C NDR client [ndr_BASENAME_c.c] + --tdr-header[=OUTFILE] create a C TDR header file [tdr_BASENAME.h] + --tdr-parser[=OUTFILE] create a C TDR parser [tdr_BASENAME.c] + --ejs[=OUTFILE] create ejs wrapper file [BASENAME_ejs.c] + --swig[=OUTFILE] create swig wrapper file [BASENAME.i] + --server[=OUTFILE] create server boilerplate [ndr_BASENAME_s.c] --template print a template for a pipe - --dcom-proxy[=OUTFILE] create DCOM proxy (implies --odl) - --com-header[=OUTFILE] create header for COM interfaces (implies --odl) + --dcom-proxy[=OUTFILE] create DCOM proxy (implies --odl) [ndr_BASENAME_p.c] + --com-header[=OUTFILE] create header for COM (implies --odl) [com_BASENAME.h] Ethereal parsers: --eth-parser[=OUTFILE] create ethereal parser and header @@ -325,7 +325,7 @@ $dcom my $cnffile = $idl_file; $cnffile =~ s/\.idl$/\.cnf/; - my ($dp, $dh) = Parse::Pidl::Ethereal::NDR::Parse($ndr, $eheader, $cnffile); + my ($dp, $dh) = Parse::Pidl::Ethereal::NDR::Parse($ndr, $idl_file, $eheader, $cnffile); FileSave($eparser, $dp); FileSave($eheader, $dh); } -- cgit