rem: if (strlcpy(p, dname, MAXPATHLEN - len) < MAXPATHLEN - len) {
add: if (strlcpy(p, dname, remainder) < remainder) {
context: static void send_directory(int f, struct file_list *flist,			   char *fbuf, unsigned int len){	struct dirent *di;	char *p;	DIR *d;	if (!(d = opendir(fbuf))) {		io_error |= IOERR_GENERAL;		rsyserr(FERROR, errno, "opendir %s failed", full_fname(fbuf));		return;	}	p = fbuf + len;	if (len != 1 || *fbuf != '/')		*p++ = '/';	*p = '\0';	for (errno = 0, di = readdir(d); di; errno = 0, di = readdir(d)) {		char *dname = d_name(di);		if (dname[0] == '.' && (dname[1] == '\0'		    || (dname[1] == '.' && dname[2] == '\0')))			continue;		if (strlcpy(p, dname, MAXPATHLEN - len) < MAXPATHLEN - len) {			int do_subdirs = recurse >= 1 ? recurse-- : recurse;			send_file_name(f, flist, fbuf, do_subdirs, 0);		} else {			io_error |= IOERR_GENERAL;			rprintf(FINFO,				"cannot send long-named file %s\n",				full_fname(fbuf));		}	}	if (errno) {		io_error |= IOERR_GENERAL;		*p = '\0';		rsyserr(FERROR, errno, "readdir(%s)", full_fname(fbuf));	}	closedir(d);}