summaryrefslogtreecommitdiff
path: root/source4/build/pidl/ndr.pm
diff options
context:
space:
mode:
Diffstat (limited to 'source4/build/pidl/ndr.pm')
-rw-r--r--source4/build/pidl/ndr.pm16
1 files changed, 10 insertions, 6 deletions
diff --git a/source4/build/pidl/ndr.pm b/source4/build/pidl/ndr.pm
index 019300d784..d02d2c402f 100644
--- a/source4/build/pidl/ndr.pm
+++ b/source4/build/pidl/ndr.pm
@@ -1620,6 +1620,8 @@ sub ParseTypedefPrint($)
my $args = $typefamily{$e->{DATA}->{TYPE}}->{PRINT_FN_ARGS}->($e);
+ return unless !util::has_property($e, "noprint");
+
pidl "void ndr_print_$e->{NAME}($args)";
pidl "{";
indent;
@@ -1654,6 +1656,8 @@ sub ParseFunctionPrint($)
{
my($fn) = shift;
+ return unless !util::has_property($fn, "noprint");
+
pidl "void ndr_print_$fn->{NAME}(struct ndr_print *ndr, const char *name, int flags, struct $fn->{NAME} *r)";
pidl "{";
indent;
@@ -1736,6 +1740,8 @@ sub ParseFunctionPush($)
my($fn) = shift;
my $static = fn_prefix($fn);
+ return unless !util::has_property($fn, "nopush");
+
pidl $static . "NTSTATUS ndr_push_$fn->{NAME}(struct ndr_push *ndr, int flags, struct $fn->{NAME} *r)";
pidl "{";
indent;
@@ -1849,6 +1855,8 @@ sub ParseFunctionPull($)
my($fn) = shift;
my $static = fn_prefix($fn);
+ return unless !util::has_property($fn, "nopull");
+
# pull function args
pidl $static . "NTSTATUS ndr_pull_$fn->{NAME}(struct ndr_pull *ndr, int flags, struct $fn->{NAME} *r)";
pidl "{";
@@ -2015,14 +2023,10 @@ sub ParseInterface($)
# Print functions
foreach my $d (@{$data}) {
- if ($d->{TYPE} eq "TYPEDEF" &&
- !util::has_property($d, "noprint")) {
+ ($d->{TYPE} eq "TYPEDEF") &&
ParseTypedefPrint($d);
- }
- if ($d->{TYPE} eq "FUNCTION" &&
- !util::has_property($d, "noprint")) {
+ ($d->{TYPE} eq "FUNCTION") &&
ParseFunctionPrint($d);
- }
}
# Size functions