librpc/ndr: let ndr_push_string() let s_len == 0 result in d_len = 0
authorStefan Metzmacher <metze@samba.org>
Wed, 3 Nov 2021 12:57:50 +0000 (13:57 +0100)
committerJule Anger <janger@samba.org>
Sun, 30 Jan 2022 09:15:13 +0000 (09:15 +0000)
commit0544a3a3c9c7e51c80428965a6f37cc486d2538d
treecb64f91beedc78a31fef2e687fd4f4789639fc39
parent1d7e27ffa68013d4bdf879b25f3d3570d1873326
librpc/ndr: let ndr_push_string() let s_len == 0 result in d_len = 0

convert_string_talloc_handle() tries to play an the safe side
and always returns a null terminated array.

But for NDR we need to be correct on the wire...

BUG: https://bugzilla.samba.org/show_bug.cgi?id=14956

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
(cherry picked from commit 43648e95a514020da4c7efa62df55d0882e3db85)
librpc/ndr/ndr_string.c
selftest/knownfail.d/blackbox.ndrdump [new file with mode: 0644]
selftest/knownfail.d/ndr_string [deleted file]