summaryrefslogtreecommitdiff
path: root/source4/pidl
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2005-08-24 11:17:28 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:34:30 -0500
commitb42f358d511096689916d75584583bd4dd08e41b (patch)
tree79cc75c1704eefc5a26014ea54ec16bd6234cedc /source4/pidl
parent26bae69bb973853fd98d30e9fef9a76cb0146262 (diff)
downloadsamba-b42f358d511096689916d75584583bd4dd08e41b.tar.gz
samba-b42f358d511096689916d75584583bd4dd08e41b.tar.bz2
samba-b42f358d511096689916d75584583bd4dd08e41b.zip
r9576: Couple of small fixes. Generate notice indicating
that the parsers were autogenerated. (This used to be commit a37e2134e61eb38e9cbc54f8533113622f013037)
Diffstat (limited to 'source4/pidl')
-rw-r--r--source4/pidl/lib/Parse/Pidl/Ethereal/NDR.pm23
-rwxr-xr-xsource4/pidl/pidl26
2 files changed, 31 insertions, 18 deletions
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);
}