rsync raising an IO error for an excluded file

Dave Dykstra dwd at bell-labs.com
Thu Apr 25 14:26:42 EST 2002


On Thu, Mar 28, 2002 at 11:37:31AM +0100, Martin Bene wrote:
> Hi,
> 
> when syncing from windows NT/cygwin to linux usimg rsync 2.5.2 I get the
> following error:
> 
> readlink pagefile.sys: Permission denied
> IO error encountered - skipping file deletion
> 
> pagefile.sys is however in the exclude-list, so I think rsync shouldn't
> care that it can't stat the file.
> 
> The code fragment responsible is
> 
>         if (readlink_stat(fname, &st, linkbuf) != 0) {
>                 int save_errno = errno;
>                 if ((errno == ENOENT) && copy_links && !noexcludes) {
>                         /* symlink pointing nowhere, see if excluded */
>                         memset((char *) &st, 0, sizeof(st));
>                         if (check_exclude_file(f, fname, &st)) {
>                                 /* file is excluded anyway, ignore silently */
>                                 return NULL;
>                         }
>                 }
>                 io_error = 1;
>                 rprintf(FERROR, "readlink %s: %s\n",
>                         fname, strerror(save_errno));
>                 return NULL;
>         }
> 
> Shouldn't/couldn't the "ignore silently if excluded" be specified less
> strictly to cover the above "permission denied" error as well?


I think you're right.  Martin Pool, what do you think?  Martin Bene, could
you please try coding and testing a patch that will do what you want?

- Dave Dykstra




More information about the rsync mailing list