X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/7170ca8dba0a407cd0c91b41b48163c7b682abb1..c1ff70aa47e11c5b37634479a0facee775a7b6d9:/osx-xattr-nodev.diff diff --git a/osx-xattr-nodev.diff b/osx-xattr-nodev.diff index 08db30c..6c8ee62 100644 --- a/osx-xattr-nodev.diff +++ b/osx-xattr-nodev.diff @@ -8,41 +8,4 @@ To use this patch, run these commands for a successful build: ./configure (optional if already run) make -based-on: 181c9faf928faad08ef095f4667afe460ec3bef6 -diff --git a/flist.c b/flist.c ---- a/flist.c -+++ b/flist.c -@@ -1476,6 +1476,7 @@ static struct file_struct *send_file_name(int f, struct file_list *flist, - #endif - #ifdef SUPPORT_XATTRS - if (preserve_xattrs) { -+ sx.st.st_mode = file->mode; - if (get_xattr(fname, &sx) < 0) { - io_error |= IOERR_GENERAL; - return NULL; -diff --git a/xattrs.c b/xattrs.c ---- a/xattrs.c -+++ b/xattrs.c -@@ -284,6 +284,10 @@ int get_xattr(const char *fname, stat_x *sxp) - { - sxp->xattr = new(item_list); - *sxp->xattr = empty_xattr; -+ -+ if (IS_SPECIAL(sxp->st.st_mode) || IS_DEVICE(sxp->st.st_mode)) -+ return 0; -+ - if (rsync_xal_get(fname, sxp->xattr) < 0) { - free_xattr(sxp); - return -1; -@@ -884,6 +888,11 @@ int set_xattr(const char *fname, const struct file_struct *file, - return -1; - } - -+ if (IS_SPECIAL(sxp->st.st_mode) || IS_DEVICE(sxp->st.st_mode)) { -+ errno = ENOTSUP; -+ return -1; -+ } -+ - ndx = F_XATTR(file); - return rsync_xal_set(fname, lst + ndx, fnamecmp, sxp); - } +based-on: a01e3b490eb36ccf9e704840e1b6683dab867550