diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-01-21 06:46:07 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:09:01 -0500 |
commit | e0d2080219c7d52559a5bbcc7294995fccbd5e52 (patch) | |
tree | af6f408f2aae45a64a4cdd20c7d0619ac22d21e9 /source4/build/pidl/needed.pm | |
parent | 84b5890a960a74462ca593fcc4d113e96a77a051 (diff) | |
download | samba-e0d2080219c7d52559a5bbcc7294995fccbd5e52.tar.gz samba-e0d2080219c7d52559a5bbcc7294995fccbd5e52.tar.bz2 samba-e0d2080219c7d52559a5bbcc7294995fccbd5e52.zip |
r4884: - 2nd part of support ndr_size_ generation on unions as well as structures
- added "nopull" and "nopush" flags, to allow for externally written parsers for sub-structures
(This used to be commit f65f239978425de795a0e188aaad3d5d1167da32)
Diffstat (limited to 'source4/build/pidl/needed.pm')
-rw-r--r-- | source4/build/pidl/needed.pm | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source4/build/pidl/needed.pm b/source4/build/pidl/needed.pm index 2f42ce6703..37edbef83b 100644 --- a/source4/build/pidl/needed.pm +++ b/source4/build/pidl/needed.pm @@ -31,6 +31,13 @@ sub NeededTypedef($) $needed{"push_$t->{NAME}"} = 1; } + if (util::has_property($t, "nopull")) { + $needed{"pull_$t->{NAME}"} = 0; + } + if (util::has_property($t, "nopush")) { + $needed{"push_$t->{NAME}"} = 0; + } + if ($t->{DATA}->{TYPE} eq "STRUCT") { if (util::has_property($t, "gensize")) { $needed{"ndr_size_$t->{NAME}"} = 1; @@ -47,6 +54,10 @@ sub NeededTypedef($) } } if ($t->{DATA}->{TYPE} eq "UNION") { + if (util::has_property($t, "gensize")) { + $needed{"ndr_size_$t->{NAME}"} = 1; + } + for my $e (@{$t->{DATA}->{DATA}}) { $e->{PARENT} = $t->{DATA}; if ($e->{TYPE} eq "UNION_ELEMENT") { |