X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/4ed886ae6ef86b4eba3a2a92e441261c42969cbf..04d8e8b25f14316e8a87f387870e8f1a89b802cc:/tls.c diff --git a/tls.c b/tls.c index 2deaabf3..cd6dec05 100644 --- a/tls.c +++ b/tls.c @@ -70,11 +70,14 @@ static void list_file (const char *fname) failed ("stat", fname); /* On some BSD platforms the mode bits of a symlink are - * undefined. The size of a link is also somewhat shaky. */ - if (S_ISLNK(buf.st_mode)) { + * undefined. */ + if (S_ISLNK(buf.st_mode)) buf.st_mode &= ~0777; + + /* The size of anything but a regular file is probably not + * worth thinking about. */ + if (!S_ISREG(buf.st_mode)) buf.st_size = 0; - } permstring(permbuf, buf.st_mode);