summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-10-04 01:43:24 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:39:22 -0500
commit3a7e251f277c9eb203b470ec6635a3ad2fc028f0 (patch)
tree9ba54a98115ce96d03aef5e86745a0321861ff34 /source4
parent2c3e4bdadfea9fb29f83e0be9a9cf9a239f3a081 (diff)
downloadsamba-3a7e251f277c9eb203b470ec6635a3ad2fc028f0.tar.gz
samba-3a7e251f277c9eb203b470ec6635a3ad2fc028f0.tar.bz2
samba-3a7e251f277c9eb203b470ec6635a3ad2fc028f0.zip
r10705: fixed a crash bug in the getdcname irpc server for winbind. The
problem was that the return string was declared as: [out] astring dcname which means "this is a non-NULL string". The server code sometimes returned NULL however (on getdc lookup failure), which caused the NDR marshalling code to crash. When you declare a non-pointer return value you are promising that the value can never be NULL. The trivial fix is to use: [out] astring *dcname which leaves the API alone, but includes a pointer in the wire format, which in turn means it is valid to send a NULL string as a response. (This used to be commit e39bac61960f6ce8957f148a482e39499a8e9096)
Diffstat (limited to 'source4')
-rw-r--r--source4/librpc/idl/irpc.idl2
1 files changed, 1 insertions, 1 deletions
diff --git a/source4/librpc/idl/irpc.idl b/source4/librpc/idl/irpc.idl
index 1c4b8d2c53..34998d57a7 100644
--- a/source4/librpc/idl/irpc.idl
+++ b/source4/librpc/idl/irpc.idl
@@ -59,7 +59,7 @@
[in] astring my_accountname,
[in] uint32 account_control,
[in,ref] dom_sid *domain_sid,
- [out] astring dcname
+ [out] astring *dcname
);
/******************************************************