From bac6f7d7b6dd2189a9225112eafe245e58a17c42 Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Mon, 9 Jun 2008 17:16:44 +0200 Subject: [PATCH] Set the right owner and group if possible. --- src/csync_propagate.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/csync_propagate.c b/src/csync_propagate.c index ee208aff13..927f462d52 100644 --- a/src/csync_propagate.c +++ b/src/csync_propagate.c @@ -221,6 +221,9 @@ static int _csync_push_file(CSYNC *ctx, csync_file_stat_t *st) { goto out; } + /* set owner and group if possible */ + csync_vio_chown(ctx, duri, st->uid, st->gid); + /* sync time */ times[0].tv_sec = times[1].tv_sec = st->modtime; times[0].tv_usec = times[1].tv_usec = 0; @@ -362,6 +365,9 @@ static int _csync_new_dir(CSYNC *ctx, csync_file_stat_t *st) { /* The chmod is needed here cause the directory could already exist. */ csync_vio_chmod(ctx, uri, st->mode); + /* set owner and group if possible */ + csync_vio_chown(ctx, uri, st->uid, st->gid); + times[0].tv_sec = times[1].tv_sec = st->modtime; times[0].tv_usec = times[1].tv_usec = 0; @@ -409,6 +415,9 @@ static int _csync_sync_dir(CSYNC *ctx, csync_file_stat_t *st) { ctx->replica = dest; + /* set owner and group if possible */ + csync_vio_chown(ctx, uri, st->uid, st->gid); + times[0].tv_sec = times[1].tv_sec = st->modtime; times[0].tv_usec = times[1].tv_usec = 0;