The branch, v3-3-test has been updated via d7c82997bdcf1acd7ac104efa0ad05e0b94935ea (commit) from ade27d8baa03816b6f5f480096dfb90f3e231e6a (commit)
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-test - Log ----------------------------------------------------------------- commit d7c82997bdcf1acd7ac104efa0ad05e0b94935ea Author: Jeremy Allison <[EMAIL PROTECTED]> Date: Wed Jul 2 11:57:13 2008 -0700 Fix bug #5578, reported by [EMAIL PROTECTED] Bad (non-Samba) use of strlcat gives error. Jeremy. ----------------------------------------------------------------------- Summary of changes: source/client/mount.cifs.c | 3 +++ source/lib/replace/replace.c | 3 +++ 2 files changed, 6 insertions(+), 0 deletions(-) Changeset truncated at 500 lines: diff --git a/source/client/mount.cifs.c b/source/client/mount.cifs.c index ea254b6..72ef9fe 100644 --- a/source/client/mount.cifs.c +++ b/source/client/mount.cifs.c @@ -115,6 +115,9 @@ size_t strlcat(char *d, const char *s, size_t bufsize) size_t ret = len1 + len2; if (len1+len2 >= bufsize) { + if (bufsize < (len1+1)) { + return ret; + } len2 = bufsize - (len1+1); } if (len2 > 0) { diff --git a/source/lib/replace/replace.c b/source/lib/replace/replace.c index 2c3f14c..106c9df 100644 --- a/source/lib/replace/replace.c +++ b/source/lib/replace/replace.c @@ -82,6 +82,9 @@ size_t rep_strlcat(char *d, const char *s, size_t bufsize) size_t ret = len1 + len2; if (len1+len2 >= bufsize) { + if (bufsize < (len1+1)) { + return ret; + } len2 = bufsize - (len1+1); } if (len2 > 0) { -- Samba Shared Repository