summaryrefslogtreecommitdiff
path: root/pidl/lib/Parse
diff options
context:
space:
mode:
authorDavid Disseldorp <ddiss@suse.de>2012-01-13 13:51:22 -0800
committerJeremy Allison <jra@samba.org>2012-01-14 00:51:54 +0100
commitb8a8870d276950fa7992047f98181bc137d63066 (patch)
tree7969f32ea6bcfd4138610e5adf9a4b135e0855c9 /pidl/lib/Parse
parent94f925c815586221da10dcc5fcbadf9fb04a98f4 (diff)
downloadsamba-b8a8870d276950fa7992047f98181bc137d63066.tar.gz
samba-b8a8870d276950fa7992047f98181bc137d63066.tar.bz2
samba-b8a8870d276950fa7992047f98181bc137d63066.zip
idl: add to_null property
to_null specifies that character conversion should only occur until the null pointer in an array based string. Signed-off-by: Jeremy Allison <jra@samba.org> Autobuild-User: Jeremy Allison <jra@samba.org> Autobuild-Date: Sat Jan 14 00:51:54 CET 2012 on sn-devel-104
Diffstat (limited to 'pidl/lib/Parse')
-rw-r--r--pidl/lib/Parse/Pidl/NDR.pm9
1 files changed, 8 insertions, 1 deletions
diff --git a/pidl/lib/Parse/Pidl/NDR.pm b/pidl/lib/Parse/Pidl/NDR.pm
index db776ae3ef..ed7fdab94c 100644
--- a/pidl/lib/Parse/Pidl/NDR.pm
+++ b/pidl/lib/Parse/Pidl/NDR.pm
@@ -171,6 +171,7 @@ sub GetElementLevelTable($$$)
my $is_string = 0;
my $is_fixed = 0;
my $is_inline = 0;
+ my $is_to_null = 0;
if ($d eq "*") {
$is_conformant = 1;
@@ -208,6 +209,10 @@ sub GetElementLevelTable($$$)
delete($e->{PROPERTIES}->{string});
}
+ if (has_property($e, "to_null")) {
+ $is_to_null = 1;
+ }
+
push (@$order, {
TYPE => "ARRAY",
SIZE_IS => $size,
@@ -218,7 +223,8 @@ sub GetElementLevelTable($$$)
IS_VARYING => $is_varying,
IS_CONFORMANT => $is_conformant,
IS_FIXED => $is_fixed,
- IS_INLINE => $is_inline
+ IS_INLINE => $is_inline,
+ IS_TO_NULL => $is_to_null
});
}
@@ -1102,6 +1108,7 @@ my %property_list = (
"noheader" => ["ELEMENT"],
"charset" => ["ELEMENT"],
"length_is" => ["ELEMENT"],
+ "to_null" => ["ELEMENT"],
);
#####################################################################