From 045f4c96d5d9c0528661499ce0e5cc729df9713d Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Fri, 13 Aug 2010 17:29:07 +0200 Subject: pidl: fix printing of server side ndr request debug messages The macros NDR_PRINT_IN_DEBUG and NDR_PRINT_OUT_DEBUG are made for the client side. For the server side, the NDR_SET_VALUES flag needs to be added for the OUT struct and not for the IN struct, otherwise, the OUT part can print uninitialized data and the IN part may recalculate string lengths illegally. --- pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'pidl/lib/Parse/Pidl/Samba3') diff --git a/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm b/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm index 1f6641522c..1cbf187601 100644 --- a/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm +++ b/pidl/lib/Parse/Pidl/Samba3/ServerNDR.pm @@ -171,7 +171,7 @@ sub ParseFunction($$) pidl "}"; pidl ""; pidl "if (DEBUGLEVEL >= 10) {"; - pidl "\tNDR_PRINT_IN_DEBUG($fn->{NAME}, r);"; + pidl "\tNDR_PRINT_FUNCTION_DEBUG($fn->{NAME}, NDR_IN, r);"; pidl "}"; pidl ""; @@ -190,7 +190,7 @@ sub ParseFunction($$) pidl "}"; pidl ""; pidl "if (DEBUGLEVEL >= 10) {"; - pidl "\tNDR_PRINT_OUT_DEBUG($fn->{NAME}, r);"; + pidl "\nNDR_PRINT_FUNCTION_DEBUG($fn->{NAME}, NDR_OUT | NDR_SET_VALUES, r);"; pidl "}"; pidl ""; pidl "push = ndr_push_init_ctx(r);"; -- cgit