Fix bug 8040 - smbclient segfaults when a Cyrillic netbios name or workgroup is confi...
commitad2e243f8d196a448c2b307feb57a9141c200cd1
authorJeremy Allison <jra@samba.org>
Fri, 25 Mar 2011 21:37:29 +0000 (25 14:37 -0700)
committerJeremy Allison <jra@samba.org>
Fri, 25 Mar 2011 22:25:40 +0000 (25 23:25 +0100)
treea0ebb4662fa83d1e74110c8a3dedf8d65dd60bdb
parent5779460f3ffff0f929d0621b4ea4d1883abb878f
Fix bug 8040 - smbclient segfaults when a Cyrillic netbios name or workgroup is configured.

As discovered by David Disseldorp <ddiss@suse.de>, convert_string_talloc()
doesn't always return consistent results for a zero length string. The
API states an incoming string must *always* contain the terminating null,
but unfotunately too much code expects passing in a zero source length
to return a null terminated string, so at least ensure we return a
correct null string in the required character set and return the
correct length.

Also ensure we cannot return a zero length for a converted string
(we ensure that the returned buffer is always allocated and zero
terminated anyway) as calling code depends on the fact that returning
true from this function will *always* return a non-zero length (as
it must include the terminating null).

Jeremy.

Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Fri Mar 25 23:25:40 CET 2011 on sn-devel-104
source3/lib/charcnv.c