summaryrefslogtreecommitdiffstats
path: root/pidl/lib/Parse/Pidl
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2010-10-11 08:03:18 +0200
committerStefan Metzmacher <metze@samba.org>2011-03-10 14:31:18 +0100
commit91ef69435167f44d1353e15cef2eb4969b53d27c (patch)
tree7081f33286fd0c5aa947b91581e46c36de7b0179 /pidl/lib/Parse/Pidl
parentf383497436dbbadfdcb1062fee0c111eca50df7d (diff)
downloadsamba-91ef69435167f44d1353e15cef2eb4969b53d27c.tar.gz
samba-91ef69435167f44d1353e15cef2eb4969b53d27c.tar.xz
samba-91ef69435167f44d1353e15cef2eb4969b53d27c.zip
pidl:NDR/Client: skip all functions if pipe elements are used
We don't support pipe at the dcerpc level yet. metze
Diffstat (limited to 'pidl/lib/Parse/Pidl')
-rw-r--r--pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm18
1 files changed, 18 insertions, 0 deletions
diff --git a/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm b/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm
index 82dcc1dbec6..8f43702ad57 100644
--- a/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm
+++ b/pidl/lib/Parse/Pidl/Samba4/NDR/Client.pm
@@ -723,6 +723,24 @@ sub ParseFunction($$$)
{
my ($self, $if, $fn) = @_;
+ if ($self->ParseFunctionHasPipes($fn)) {
+ $self->pidl_both("/*");
+ $self->pidl_both(" * The following function is skipped because");
+ $self->pidl_both(" * it uses pipes:");
+ $self->pidl_both(" *");
+ $self->pidl_both(" * dcerpc_$fn->{NAME}_r_send()");
+ $self->pidl_both(" * dcerpc_$fn->{NAME}_r_recv()");
+ $self->pidl_both(" * dcerpc_$fn->{NAME}_r()");
+ $self->pidl_both(" *");
+ $self->pidl_both(" * dcerpc_$fn->{NAME}_send()");
+ $self->pidl_both(" * dcerpc_$fn->{NAME}_recv()");
+ $self->pidl_both(" * dcerpc_$fn->{NAME}()");
+ $self->pidl_both(" */");
+ $self->pidl_both("");
+ warning($fn, "$fn->{NAME}: dcerpc client does not support pipe yet");
+ return;
+ }
+
$self->ParseFunction_r_State($if, $fn, $fn->{NAME});
$self->ParseFunction_r_Send($if, $fn, $fn->{NAME});
$self->ParseFunction_r_Done($if, $fn, $fn->{NAME});