diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2005-03-06 12:33:44 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:10:58 -0500 |
commit | 348fa3f9f663fc83ee8d9442366a3b36a82a2724 (patch) | |
tree | f0691e2269d4c8eb8b26be1f0375949f2210b8d7 /source4/build/pidl | |
parent | 42031bc4be2516872ccf832b6b09d141cb13c76b (diff) | |
download | samba-348fa3f9f663fc83ee8d9442366a3b36a82a2724.tar.gz samba-348fa3f9f663fc83ee8d9442366a3b36a82a2724.tar.bz2 samba-348fa3f9f663fc83ee8d9442366a3b36a82a2724.zip |
r5669: Couple of minor clearifications, simplifications.
(This used to be commit 09a9222b600d58271f42ee0870e0c933d2e105d0)
Diffstat (limited to 'source4/build/pidl')
-rw-r--r-- | source4/build/pidl/README | 6 | ||||
-rw-r--r-- | source4/build/pidl/ndr_client.pm (renamed from source4/build/pidl/client.pm) | 2 | ||||
-rw-r--r-- | source4/build/pidl/ndr_header.pm | 11 | ||||
-rwxr-xr-x | source4/build/pidl/pidl.pl | 8 |
4 files changed, 12 insertions, 15 deletions
diff --git a/source4/build/pidl/README b/source4/build/pidl/README index 4b675ce210..e087888840 100644 --- a/source4/build/pidl/README +++ b/source4/build/pidl/README @@ -18,12 +18,12 @@ dump.pm - Converts the parse tree back to an IDL file validator.pm - Validates the parse tree -- DCE/RPC+NDR -- -client.pm - Generates client call functions in C +ndr_client.pm - Generates client call functions in C using the NDR parser eparser.pm - Generates a parser for the ethereal network sniffer by applying regexes to the output of parser.pm swig.pm - Generates SWIG interface files (.i) -header.pm - Generates a header file with structures -parser.pm - Generates pull/push functions for parsing +ndr_header.pm - Generates a header file with structures +ndr.pm - Generates pull/push functions for parsing NDR server.pm - Generates server side implementation in C template.pm - Generates stubs in C for server implementation diff --git a/source4/build/pidl/client.pm b/source4/build/pidl/ndr_client.pm index 1be895208f..e5d4cc1569 100644 --- a/source4/build/pidl/client.pm +++ b/source4/build/pidl/ndr_client.pm @@ -3,7 +3,7 @@ # Copyright tridge@samba.org 2003 # released under the GNU GPL -package IdlClient; +package NdrClient; use strict; diff --git a/source4/build/pidl/ndr_header.pm b/source4/build/pidl/ndr_header.pm index c928ee1db3..3e673466e0 100644 --- a/source4/build/pidl/ndr_header.pm +++ b/source4/build/pidl/ndr_header.pm @@ -61,15 +61,12 @@ sub HeaderElement($) HeaderType($element, $element->{TYPE}, ""); pidl " "; if ($element->{POINTERS} && $element->{TYPE} ne "string") { - my($n) = $element->{POINTERS}; - for (my($i)=$n; $i > 0; $i--) { + for (my($i)=$element->{POINTERS}; $i > 0; $i--) { pidl "*"; } - } - if (defined $element->{ARRAY_LEN} && - !util::is_constant($element->{ARRAY_LEN}) && - !$element->{POINTERS}) { - # conformant arrays are ugly! I choose to implement them with + } elsif (NdrParser::is_surrounding_array($element) || + defined $element->{ARRAY_LEN} && !util::is_constant($element->{ARRAY_LEN})) { + # surrounding arrays are ugly! I choose to implement them with # pointers instead of the [1] method pidl "*"; } diff --git a/source4/build/pidl/pidl.pl b/source4/build/pidl/pidl.pl index f7b213dcb0..6bbb2ec78c 100755 --- a/source4/build/pidl/pidl.pl +++ b/source4/build/pidl/pidl.pl @@ -15,10 +15,10 @@ use Getopt::Long; use File::Basename; use idl; use dump; +use ndr_client; use ndr_header; use ndr; use server; -use client; use dcom_proxy; use dcom_stub; use com_header; @@ -75,9 +75,9 @@ sub ShowHelp() --output OUTNAME put output in OUTNAME.* --parse parse a idl file to a .pidl file --dump dump a pidl file back to idl - --header create a C header file + --header create a C NDR header file --parser create a C NDR parser - --client create a C client + --client create a C NDR client --server create server boilerplate --template print a template for a pipe --eparser create an ethereal parser @@ -213,7 +213,7 @@ sub process_file($) $res .= "#include \"$h_filename\"\n\n"; foreach my $x (@{$pidl}) { - $res .= IdlClient::ParseInterface($x); + $res .= NdrClient::ParseInterface($x); } util::FileSave($client, $res); |