The Samba-Bugzilla – Attachment 6289 Details for
Bug 8005
smbtorture4 BASE-TCONDEV fails when tested on Samba
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Fix for 3.5.next.
0001-Fix-bug-8005-smbtorture4-BASE-TCONDEV-fails-when-tes.patch (text/plain), 2.13 KB, created by
Jeremy Allison
on 2011-03-14 23:22:55 UTC
(
hide
)
Description:
Fix for 3.5.next.
Filename:
MIME Type:
Creator:
Jeremy Allison
Created:
2011-03-14 23:22:55 UTC
Size:
2.13 KB
patch
obsolete
>From d31926fd3063918de30eb8ddfe31d7de5051db3d Mon Sep 17 00:00:00 2001 >From: Jeremy Allison <jra@samba.org> >Date: Mon, 14 Mar 2011 16:12:31 -0700 >Subject: [PATCH] Fix bug #8005 - smbtorture4 BASE-TCONDEV fails when tested on Samba > >When pulling non-aligned ucs2 strings, we neglected to add in the >pad byte to the buffer length we've eaten. This caused the device >string in TCONX (which seems to be one of the few places that uses >non-aligned ucs2 strings) to be incorrectly read. > >Volker please check. > >Jeremy. >(cherry picked from commit e59a950c049679f0394ea41b463dbb9837eb5e63) >--- > source3/lib/charcnv.c | 8 ++++++-- > 1 files changed, 6 insertions(+), 2 deletions(-) > >diff --git a/source3/lib/charcnv.c b/source3/lib/charcnv.c >index 9ac9930..718f810 100644 >--- a/source3/lib/charcnv.c >+++ b/source3/lib/charcnv.c >@@ -1342,6 +1342,7 @@ bool push_utf8_talloc(TALLOC_CTX *ctx, char **dest, const char *src, > size_t pull_ucs2(const void *base_ptr, char *dest, const void *src, size_t dest_len, size_t src_len, int flags) > { > size_t ret; >+ size_t ucs2_align_len = 0; > > if (dest_len == (size_t)-1) { > /* No longer allow dest_len of -1. */ >@@ -1359,6 +1360,7 @@ size_t pull_ucs2(const void *base_ptr, char *dest, const void *src, size_t dest_ > src = (const void *)((const char *)src + 1); > if (src_len != (size_t)-1) > src_len--; >+ ucs2_align_len = 1; > } > > if (flags & STR_TERMINATE) { >@@ -1394,7 +1396,7 @@ size_t pull_ucs2(const void *base_ptr, char *dest, const void *src, size_t dest_ > dest[0] = 0; > } > >- return src_len; >+ return src_len + ucs2_align_len; > } > > /** >@@ -1420,6 +1422,7 @@ size_t pull_ucs2_base_talloc(TALLOC_CTX *ctx, > { > char *dest; > size_t dest_len; >+ size_t ucs2_align_len = 0; > > *ppdest = NULL; > >@@ -1438,6 +1441,7 @@ size_t pull_ucs2_base_talloc(TALLOC_CTX *ctx, > src = (const void *)((const char *)src + 1); > if (src_len != (size_t)-1) > src_len--; >+ ucs2_align_len = 1; > } > > if (flags & STR_TERMINATE) { >@@ -1503,7 +1507,7 @@ size_t pull_ucs2_base_talloc(TALLOC_CTX *ctx, > } > > *ppdest = dest; >- return src_len; >+ return src_len + ucs2_align_len; > } > > size_t pull_ucs2_fstring(char *dest, const void *src) >-- >1.7.3.1 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Flags:
vl
:
review+
Actions:
View
Attachments on
bug 8005
: 6289