summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2004-09-28 01:11:40 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:59:24 -0500
commit8925932e81227103bb81f9638cb5996c4f48f7ed (patch)
tree73fa7b3092074af46ccc08cb2f08ca043b2829f2
parent322d1ccd9f40b838911a7c076ebf3fb754b2550c (diff)
downloadsamba-8925932e81227103bb81f9638cb5996c4f48f7ed.tar.gz
samba-8925932e81227103bb81f9638cb5996c4f48f7ed.tar.bz2
samba-8925932e81227103bb81f9638cb5996c4f48f7ed.zip
r2704: Complain about 'object interfaces' that don't have version 0.0 (the standard
doesn't allow them to! I think the idea is that you just create a new interface that inherits your old interface, thus ensuring backwards-compatibility) Re-enable to validator (This used to be commit e364e46a88e5a222c94cdb9cf8e7a124e43f0bcf)
-rwxr-xr-xsource4/build/pidl/pidl.pl2
-rw-r--r--source4/build/pidl/validator.pm6
2 files changed, 7 insertions, 1 deletions
diff --git a/source4/build/pidl/pidl.pl b/source4/build/pidl/pidl.pl
index 5c3f8e5054..fddd11bd8d 100755
--- a/source4/build/pidl/pidl.pl
+++ b/source4/build/pidl/pidl.pl
@@ -118,7 +118,7 @@ sub process_file($)
if ($opt_parse) {
$pidl = IdlParse($idl_file);
defined $pidl || die "Failed to parse $idl_file";
-# IdlValidator::Validate($pidl);
+ IdlValidator::Validate($pidl);
if ($opt_keep && !util::SaveStructure($pidl_file, $pidl)) {
die "Failed to save $pidl_file\n";
}
diff --git a/source4/build/pidl/validator.pm b/source4/build/pidl/validator.pm
index ee1c33ef4c..c4720a737f 100644
--- a/source4/build/pidl/validator.pm
+++ b/source4/build/pidl/validator.pm
@@ -114,6 +114,12 @@ 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";
+ }
+
foreach my $d (@{$data}) {
($d->{TYPE} eq "TYPEDEF") &&
ValidTypedef($d);