diff options
author | Stefan Metzmacher <metze@samba.org> | 2005-05-30 09:07:21 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:17:16 -0500 |
commit | 2a20e42c2637a6d53d74f3c68a4f420f8cb77a27 (patch) | |
tree | cec1b76d704f47c085b4a1f645350b0e6848e7f2 /source4/build/pidl/validator.pm | |
parent | 9ab8ed3bab065afb0ba98277b7e4728b24caabe0 (diff) | |
download | samba-2a20e42c2637a6d53d74f3c68a4f420f8cb77a27.tar.gz samba-2a20e42c2637a6d53d74f3c68a4f420f8cb77a27.tar.bz2 samba-2a20e42c2637a6d53d74f3c68a4f420f8cb77a27.zip |
r7098: - make use of the NDR table instead of the IDL table in the client and server generation
- add 'noid' property to allow functions to be not present in the function table,
and not generate client and server functions for them
- print out a warning about [id()] not being correctly supported yet
metze
(This used to be commit 189730d1430e7f728d62dd5dc52f2a90c1a556d7)
Diffstat (limited to 'source4/build/pidl/validator.pm')
-rw-r--r-- | source4/build/pidl/validator.pm | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/source4/build/pidl/validator.pm b/source4/build/pidl/validator.pm index bb86fcca50..647a906878 100644 --- a/source4/build/pidl/validator.pm +++ b/source4/build/pidl/validator.pm @@ -17,6 +17,13 @@ sub fatal($$) die("$pos->{FILE}:$pos->{LINE}:$s\n"); } +sub nonfatal($$) +{ + my $pos = shift; + my $s = shift; + warn ("$pos->{FILE}:$pos->{LINE}:warning:$s\n"); +} + sub el_name($) { my $e = shift; @@ -56,6 +63,7 @@ my %property_list = ( # function "id" => {},# what is that? --metze + "noid" => {}, "in" => {}, "out" => {}, @@ -251,6 +259,14 @@ sub ValidFunction($) ValidProperties($fn); + if (util::has_property($fn, "id")) { + nonfatal $fn, "[id()] is not correctly supported yet ($fn->{NAME})"; + } + + if (util::has_property($fn, "id") and util::has_property($fn, "noid")) { + fatal $fn, "function can't have [id()] and [noid] property ($fn->{NAME})"; + } + foreach my $e (@{$fn->{ELEMENTS}}) { $e->{PARENT} = $fn; if (util::has_property($e, "ref") && !$e->{POINTERS}) { |