diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2004-09-28 19:20:00 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 12:59:27 -0500 |
commit | b79602fab5ad67aaff4492afd90b52e3292c7ef1 (patch) | |
tree | 0f90535b7c443472e49b5c11899e33ed40b56ac1 /source4/build/pidl/validator.pm | |
parent | c567d64d66e1548ef5afc3ba784f8fa8972e3674 (diff) | |
download | samba-b79602fab5ad67aaff4492afd90b52e3292c7ef1.tar.gz samba-b79602fab5ad67aaff4492afd90b52e3292c7ef1.tar.bz2 samba-b79602fab5ad67aaff4492afd90b52e3292c7ef1.zip |
r2735: More DCOM updates:
- Several updates to the interface definitions after reading some more of the
specs
- Add Remote Activation interface
- Add body extension uuids
- Add oxidresolve torture test to list
- Make pidl complain about object interfaces that don't inherit from IUnknown
(This used to be commit 1bb471832830d73f0c7290e2ec12878518598379)
Diffstat (limited to 'source4/build/pidl/validator.pm')
-rw-r--r-- | source4/build/pidl/validator.pm | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/source4/build/pidl/validator.pm b/source4/build/pidl/validator.pm index c4720a737f..c9b717434f 100644 --- a/source4/build/pidl/validator.pm +++ b/source4/build/pidl/validator.pm @@ -114,10 +114,16 @@ sub ValidInterface($) my($interface) = shift; my($data) = $interface->{DATA}; - if (util::has_property($interface, "object") && - util::has_property($interface, "version") && - $interface->{PROPERTIES}->{version} != 0) { - fatal "Object interfaces must have version 0.0\n"; + if (util::has_property($interface, "object")) { + if(util::has_property($interface, "version") && + $interface->{PROPERTIES}->{version} != 0) { + fatal "Object interfaces must have version 0.0 ($interface->{NAME})\n"; + } + + if(!defined($interface->{BASE}) && + not ($interface->{NAME} eq "IUnknown")) { + fatal "Object interfaces must all derive from IUnknown ($interface->{NAME})\n"; + } } foreach my $d (@{$data}) { |