X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/82306bf6d644ceca9ef07b4989fb317fc8a613e5..684b4e31132b2b8df6b4feddeb006239b989793c:/rsync.c diff --git a/rsync.c b/rsync.c index 80bc59a1..6e7f936a 100644 --- a/rsync.c +++ b/rsync.c @@ -416,6 +416,7 @@ void recv_generator(char *fname,struct file_list *flist,int i,int f_out) if (fd == -1) { fprintf(FERROR,"failed to open %s : %s\n",fname,strerror(errno)); + fprintf(FERROR,"skipping %s\n",fname); return; } @@ -802,6 +803,11 @@ off_t send_files(struct file_list *flist,int f_out,int f_in) if (file->dir) { strncpy(fname,file->dir,MAXPATHLEN-1); fname[MAXPATHLEN-1] = 0; + if (strlen(fname) == MAXPATHLEN-1) { + fprintf(FERROR, "send_files failed on long-named directory %s\n", + fname); + return -1; + } strcat(fname,"/"); } strncat(fname,file->name,MAXPATHLEN-strlen(fname));