summaryrefslogtreecommitdiff
path: root/pidl/lib/Parse
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2010-10-11 07:53:48 +0200
committerStefan Metzmacher <metze@samba.org>2011-03-10 14:31:17 +0100
commit29bd658634e9afe0037170a2f3ad2512f9106761 (patch)
tree78f395ce65e16b8c0c2caec71180dd33abf1d176 /pidl/lib/Parse
parenteaa7ecdda7938e12db94f5ecbb978e5e7bca5f16 (diff)
downloadsamba-29bd658634e9afe0037170a2f3ad2512f9106761.tar.gz
samba-29bd658634e9afe0037170a2f3ad2512f9106761.tar.bz2
samba-29bd658634e9afe0037170a2f3ad2512f9106761.zip
pidl:Samba3/ClientNDR: don't generate stubs for functions with pipe elements
metze
Diffstat (limited to 'pidl/lib/Parse')
-rw-r--r--pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm11
1 files changed, 11 insertions, 0 deletions
diff --git a/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm b/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm
index 67051a8783..8142b35699 100644
--- a/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm
+++ b/pidl/lib/Parse/Pidl/Samba3/ClientNDR.pm
@@ -14,6 +14,7 @@ use Exporter;
use strict;
use Parse::Pidl qw(fatal warning error);
use Parse::Pidl::Util qw(has_property ParseExpr);
+use Parse::Pidl::NDR qw(ContainsPipe);
use Parse::Pidl::Typelist qw(mapTypeName);
use Parse::Pidl::Samba4 qw(DeclLong);
use Parse::Pidl::Samba4::Header qw(GenerateFunctionInEnv GenerateFunctionOutEnv);
@@ -378,6 +379,16 @@ sub ParseInterface($$)
foreach my $fn (@{$if->{FUNCTIONS}}) {
next if has_property($fn, "noopnum");
next if has_property($fn, "todo");
+
+ my $skip = 0;
+ foreach my $e (@{$fn->{ELEMENTS}}) {
+ if (ContainsPipe($e, $e->{LEVELS}[0])) {
+ $skip = 1;
+ last;
+ }
+ }
+ next if $skip;
+
$self->ParseFunction($if->{NAME}, $fn);
}
$self->pidl_hdr("#endif /* __CLI_$uif\__ */");