summaryrefslogtreecommitdiff
path: root/pidl
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2017-06-21 15:05:35 +0200
committerStefan Metzmacher <metze@samba.org>2017-06-26 08:47:14 +0200
commitb922472fd683235fde3abc69ee09d9d8bfdb8644 (patch)
treed95e8528774699b058a97a98bcaffa9bd0f1020c /pidl
parent3bc6b55385894691792962ecc15978a3b158eca4 (diff)
downloadsamba-b922472fd683235fde3abc69ee09d9d8bfdb8644.tar.gz
pidl:NDR/Parser: add "skip_noinit" element
In future "skip" will be changed to initialize the element with ZERO_STRUCT() on ndr_pull_*. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
Diffstat (limited to 'pidl')
-rw-r--r--pidl/lib/Parse/Pidl/NDR.pm1
-rw-r--r--pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm12
2 files changed, 7 insertions, 6 deletions
diff --git a/pidl/lib/Parse/Pidl/NDR.pm b/pidl/lib/Parse/Pidl/NDR.pm
index 4659e312691..003156e3a11 100644
--- a/pidl/lib/Parse/Pidl/NDR.pm
+++ b/pidl/lib/Parse/Pidl/NDR.pm
@@ -1104,6 +1104,7 @@ my %property_list = (
"nopython" => ["FUNCTION", "TYPEDEF", "STRUCT", "UNION", "ENUM", "BITMAP"],
"todo" => ["FUNCTION"],
"skip" => ["ELEMENT"],
+ "skip_noinit" => ["ELEMENT"],
# union
"switch_is" => ["ELEMENT"],
diff --git a/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm b/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
index eff5a1f139a..a32e9eb4a0d 100644
--- a/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
+++ b/pidl/lib/Parse/Pidl/Samba4/NDR/Parser.pm
@@ -721,7 +721,7 @@ sub ParseElementPush($$$$$$)
my $var_name = $env->{$e->{NAME}};
- if (has_property($e, "skip")) {
+ if (has_property($e, "skip") or has_property($e, "skip_noinit")) {
$self->pidl("/* [skip] '$var_name' */");
return;
}
@@ -1126,7 +1126,7 @@ sub ParseElementPullLevel
my $ndr_flags = CalcNdrFlags($l, $primitives, $deferred);
my $array_length = undef;
- if (has_property($e, "skip")) {
+ if (has_property($e, "skip") or has_property($e, "skip_noinit")) {
$self->pidl("/* [skip] '$var_name' */");
return;
}
@@ -1655,7 +1655,7 @@ sub DeclarePtrVariables($$)
{
my ($self,$e) = @_;
- if (has_property($e, "skip")) {
+ if (has_property($e, "skip") or has_property($e, "skip_noinit")) {
return;
}
@@ -1676,7 +1676,7 @@ sub DeclareArrayVariables($$;$)
{
my ($self,$e,$pull) = @_;
- if (has_property($e, "skip")) {
+ if (has_property($e, "skip") or has_property($e, "skip_noinit")) {
return;
}
@@ -1698,7 +1698,7 @@ sub DeclareArrayVariablesNoZero($$$)
{
my ($self,$e,$env) = @_;
- if (has_property($e, "skip")) {
+ if (has_property($e, "skip") or has_property($e, "skip_noinit")) {
return;
}
@@ -1719,7 +1719,7 @@ sub DeclareMemCtxVariables($$)
{
my ($self,$e) = @_;
- if (has_property($e, "skip")) {
+ if (has_property($e, "skip") or has_property($e, "skip_noinit")) {
return;
}