summaryrefslogtreecommitdiff
path: root/source4/pidl/lib/Parse/Pidl/Samba3/Client.pm
diff options
context:
space:
mode:
Diffstat (limited to 'source4/pidl/lib/Parse/Pidl/Samba3/Client.pm')
-rw-r--r--source4/pidl/lib/Parse/Pidl/Samba3/Client.pm12
1 files changed, 7 insertions, 5 deletions
diff --git a/source4/pidl/lib/Parse/Pidl/Samba3/Client.pm b/source4/pidl/lib/Parse/Pidl/Samba3/Client.pm
index 83762719ea..d79aede138 100644
--- a/source4/pidl/lib/Parse/Pidl/Samba3/Client.pm
+++ b/source4/pidl/lib/Parse/Pidl/Samba3/Client.pm
@@ -25,11 +25,13 @@ sub ParseFunction($$)
{
my ($if,$fn) = @_;
- my $args = "";
+ my $inargs = "";
my $defargs = "";
foreach (@{$fn->{ELEMENTS}}) {
$defargs .= ", " . DeclLong($_);
- $args .= ", $_->{NAME}";
+ if (grep(/in/, @{$_->{DIRECTION}})) {
+ $inargs .= ", $_->{NAME}";
+ }
}
my $uif = uc($if->{NAME});
@@ -47,13 +49,13 @@ sub ParseFunction($$)
pidl "";
pidl "/* Marshall data and send request */";
pidl "";
- pidl "init_$if->{NAME}_q_$fn->{NAME}(&q$args);";
+ pidl "init_$if->{NAME}_q_$fn->{NAME}(&q$inargs);";
pidl "";
pidl "CLI_DO_RPC(cli, mem_ctx, PI_$uif, $ufn,";
pidl "\tq, r,";
pidl "\tqbuf, rbuf, ";
- pidl "\t$if->{NAME}_q_$fn->{NAME},";
- pidl "\t$if->{NAME}_r_$fn->{NAME},";
+ pidl "\t$if->{NAME}_io_q_$fn->{NAME},";
+ pidl "\t$if->{NAME}_io_r_$fn->{NAME},";
pidl "\tNT_STATUS_UNSUCCESSFUL);";
pidl "";
pidl "/* Return result */";