Re: Problem with permissions

2009-11-28 Thread Matt McCutchen
On Fri, 2009-11-27 at 11:38 -0600, Chris Adams wrote:
 rsync --stats -v -axH --inplace --delete --rsync-path=rsync --fake-super / 
 u...@remote:/backup/root/

 My problem is that there is a local directory that has permissions 0111
 (d--x--x--x), and rsync throws an error trying to set the xattr:
 
 rsync: failed to read xattr user.rsync.%stat for 
 /roach/backup/root/tcb/lib: Permission denied (13)
 
 It appears that rsync knows to create remote files with u+rw, but not
 directories.  Is this a bug, or am I missing something?

Yes, it's a bug.  The fake-super code does add u+rwx to directories, but
then the directory-retouching code wrongly activates and sets the
permissions back to what they were.  Patch forthcoming...

-- 
Matt

-- 
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html


[PATCH] Don't (wrongly) retouch dir permissions with --fake-super.

2009-11-28 Thread Matt McCutchen
---
 generator.c |7 +--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/generator.c b/generator.c
index 8038feb..4abe6a0 100644
--- a/generator.c
+++ b/generator.c
@@ -1892,6 +1892,7 @@ static void touch_up_dirs(struct file_list *flist, int 
ndx)
static int counter = 0;
struct file_struct *file;
char *fname;
+   BOOL retouch_perms;
int i, start, end;
 
if (ndx  0) {
@@ -1912,11 +1913,13 @@ static void touch_up_dirs(struct file_list *flist, int 
ndx)
rprintf(FINFO, touch_up_dirs: %s (%d)\n,
NS(fname), i);
}
+   /* Be sure not to retouch permissions with --fake-super. */
+   retouch_perms = !am_root  !(file-mode  S_IWUSR);
if (!F_IS_ACTIVE(file) || file-flags  FLAG_MISSING_DIR
-|| (!need_retouch_dir_times  file-mode  S_IWUSR))
+|| !(need_retouch_dir_times || retouch_perms))
continue;
fname = f_name(file, NULL);
-   if (!(file-mode  S_IWUSR))
+   if (retouch_perms)
do_chmod(fname, file-mode);
if (need_retouch_dir_times) {
STRUCT_STAT st;
-- 
1.6.5.3.154.gbd911



-- 
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html


RE: rsync of STDIN to a file.

2009-11-28 Thread Mark Young

 On Wed, 2009-11-25 at 12:09 +, Mark Young wrote:
  I believe the rdiff man page is still not correct, even with your
  submitted changes. It states In every case where a filename must be
  specified, - may be used instead to mean either standard input or
  standard output as appropriate..
  
  I've not found that to be the case. For instance:
  
  works:
  $ rdiff signature r96.exe r96.sig
  
  fails:
  $ cat r96.exe | rdiff signature - r96.sig
  rdiff: unknown option: -
  Try `rdiff --help' for more information.
 
 The next sentence of the man page says, Be aware that if you do this,
 you’ll need to terminate your options with -- or rdiff will think you
 are passing it an empty option.  I'll agree that's a really dumb
 option-parsing behavior, but it is properly documented.  You can enter
 an upstream bug to have it changed if you like.

Hi Matt,
I'm sure you are right, but there are still older versions of the man page that 
don't show it. I'm not sure which is the most up to date:
This has your text: http://www.digipedia.pl/man/doc/view/rdiff.1.htmlThis one 
doesn't: http://linux.die.net/man/1/rdiff
The man page in the latest rdiff from cygwin, v0.9.7-2, doesn't have it.
Where is the homepage for rdiff?
Cheers,Mark
  -- 
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

Re: [PATCH] Don't (wrongly) retouch dir permissions with --fake-super.

2009-11-28 Thread Wayne Davison
On Sat, Nov 28, 2009 at 2:17 PM, Matt McCutchen m...@mattmccutchen.netwrote:

 diff --git a/generator.c b/generator.c


Much appreciated.  Applied and tested.

..wayne..
-- 
Please use reply-all for most replies to avoid omitting the mailing list.
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html

[SCM] The rsync repository. branch, master, updated. v3.0.3-286-g24079e9

2009-11-28 Thread Rsync CVS commit messages
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project The rsync repository..

The branch, master has been updated
   via  24079e988fc31af4eba56cd2701fdc5a4154980d (commit)
  from  8a68cad1f77ac40f3834f7449ef794e37cba7914 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -
commit 24079e988fc31af4eba56cd2701fdc5a4154980d
Author: Wayne Davison way...@samba.org
Date:   Sat Nov 28 21:46:42 2009 -0800

Don't (wrongly) retouch dir permissions with --fake-super.
(Patch from Matt.)

---

Summary of changes:
 generator.c |7 +--
 1 files changed, 5 insertions(+), 2 deletions(-)


hooks/post-receive
--
The rsync repository.
___
rsync-cvs mailing list
rsync-cvs@lists.samba.org
https://lists.samba.org/mailman/listinfo/rsync-cvs