git.samba.org
/
samba.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
75aeb61
)
pidl: allow foo being on the wire after [length_is(foo)] uint8 *buffer
author
Stefan Metzmacher
<metze@samba.org>
Mon, 27 Jul 2009 15:34:37 +0000
(17:34 +0200)
committer
Karolin Seeger
<kseeger@samba.org>
Sat, 7 Apr 2012 14:25:57 +0000
(16:25 +0200)
metze
(cherry picked from commit
92791ce9a8439ac06a22afdbeb0d0fc66c32cb31
)
pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
patch
|
blob
|
history
diff --git
a/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
b/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
index c4e3eb7d88ca4c5ba595eba209ecdce59a9bfc51..a05f2851786e4715d1fb0c9a2b701f67d55b63ee 100644
(file)
--- a/
pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
+++ b/
pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
@@
-1069,6
+1069,10
@@
sub ParseElementPullLevel
my $counter = "cntr_$e->{NAME}_$l->{LEVEL_INDEX}";
my $array_name = $var_name;
+ if ($l->{IS_VARYING}) {
+ $length = "ndr_get_array_length($ndr, " . get_pointer_to($var_name) .")";
+ }
+
$var_name = get_array_element($var_name, $counter);
$self->ParseMemCtxPullStart($e, $l, $ndr, $array_name);