diff options
author | Andrew Tridgell <tridge@samba.org> | 2000-03-27 12:38:45 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 2000-03-27 12:38:45 +0000 |
commit | 18bc76a0c6830358a137b4198e17b1b7ce92b9bf (patch) | |
tree | 80ddeebfb47c978607be5c708ec5e81d10b91d6a /source3/libsmb/namequery.c | |
parent | 6570b48d73d4d6597cf8f17040cb57e8b16394dd (diff) | |
download | samba-18bc76a0c6830358a137b4198e17b1b7ce92b9bf.tar.gz samba-18bc76a0c6830358a137b4198e17b1b7ce92b9bf.tar.bz2 samba-18bc76a0c6830358a137b4198e17b1b7ce92b9bf.zip |
changed the definition of dos_PutUniCode
the previous definition could result is us overflowing a buffer. The
null termination was always added yet the size returned did not
include the null termination.
the new function takes a BOOL null_terminate, and always returns the
total number of bytes consumed by the string.
(This used to be commit 426c90433396a95033eefcc4af97603abc934221)
Diffstat (limited to 'source3/libsmb/namequery.c')
-rw-r--r-- | source3/libsmb/namequery.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/source3/libsmb/namequery.c b/source3/libsmb/namequery.c index 08f26f10d5..290a91f7b5 100644 --- a/source3/libsmb/namequery.c +++ b/source3/libsmb/namequery.c @@ -759,8 +759,7 @@ BOOL lookup_pdc_name(const char *srcname, const char *domain, struct in_addr *pd mailslot_name = bufp; bufp += (strlen(bufp) + 1); bufp = align2(bufp, buffer); - dos_PutUniCode(bufp, srcname, sizeof(buffer) - (bufp - buffer) - 1); - bufp = skip_unicode_string(bufp, 1); + bufp += dos_PutUniCode(bufp, srcname, sizeof(buffer) - (bufp - buffer) - 1, True); SIVAL(bufp,0,1); SSVAL(bufp,4,0xFFFF); SSVAL(bufp,6,0xFFFF); |