From f8f6d39b8866e419e450974d6d8b78efd7177f80 Mon Sep 17 00:00:00 2001 From: Jan Zeleny Date: Jan 22 2010 22:11:11 +0000 Subject: fixed buffer overflow when using long file names (#557916) --- diff --git a/rsync-3.0.7-buf-overflow.patch b/rsync-3.0.7-buf-overflow.patch new file mode 100644 index 0000000..c93077f --- /dev/null +++ b/rsync-3.0.7-buf-overflow.patch @@ -0,0 +1,13 @@ +--- rsync-3.0.7/flist.c.orig 2010-01-22 22:39:40.000000000 +0100 ++++ rsync-3.0.7/flist.c 2010-01-22 22:45:27.618262042 +0100 +@@ -3025,6 +3025,10 @@ char *f_name(const struct file_struct *f + + if (f->dirname) { + int len = strlen(f->dirname); ++ if (len >= MAXPATHLEN) { ++ rprintf(FWARNING,"Path too long!\n"); ++ return NULL; ++ } + memcpy(fbuf, f->dirname, len); + fbuf[len] = '/'; + strlcpy(fbuf + len + 1, f->basename, MAXPATHLEN - (len + 1));