Matt McCutchen's Web Site
/
rsync
/
rsync.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Have the spec file put more useful stuff into the doc dir.
[rsync/rsync.git]
/
clientserver.c
diff --git
a/clientserver.c
b/clientserver.c
index
93c90c6
..
5291356
100644
(file)
--- a/
clientserver.c
+++ b/
clientserver.c
@@
-509,15
+509,15
@@
static int rsync_module(int f_in, int f_out, int i, char *addr, char *host)
out_of_memory("rsync_module");
}
out_of_memory("rsync_module");
}
- /* We do a
push
_dir() that doesn't actually call chdir()
+ /* We do a
change
_dir() that doesn't actually call chdir()
* just to make a relative path absolute. */
strlcpy(line, curr_dir, sizeof line);
* just to make a relative path absolute. */
strlcpy(line, curr_dir, sizeof line);
- if (!
push_dir(module_dir, 1
))
+ if (!
change_dir(module_dir, CD_SKIP_CHDIR
))
goto chdir_failed;
if (strcmp(curr_dir, module_dir) != 0
&& (module_dir = strdup(curr_dir)) == NULL)
out_of_memory("rsync_module");
goto chdir_failed;
if (strcmp(curr_dir, module_dir) != 0
&& (module_dir = strdup(curr_dir)) == NULL)
out_of_memory("rsync_module");
-
push_dir(line, 1
); /* Restore curr_dir. */
+
change_dir(line, CD_SKIP_CHDIR
); /* Restore curr_dir. */
if (use_chroot) {
chroot_path = module_dir;
if (use_chroot) {
chroot_path = module_dir;
@@
-533,24
+533,24
@@
static int rsync_module(int f_in, int f_out, int i, char *addr, char *host)
p = lp_filter(i);
parse_rule(&daemon_filter_list, p, MATCHFLG_WORD_SPLIT,
p = lp_filter(i);
parse_rule(&daemon_filter_list, p, MATCHFLG_WORD_SPLIT,
- XFLG_ABS_IF_SLASH);
+ XFLG_ABS_IF_SLASH
| XFLG_DIR2WILD3
);
p = lp_include_from(i);
parse_filter_file(&daemon_filter_list, p, MATCHFLG_INCLUDE,
p = lp_include_from(i);
parse_filter_file(&daemon_filter_list, p, MATCHFLG_INCLUDE,
- XFLG_ABS_IF_SLASH | XFLG_OLD_PREFIXES | XFLG_FATAL_ERRORS);
+ XFLG_ABS_IF_SLASH | XFLG_
DIR2WILD3 | XFLG_
OLD_PREFIXES | XFLG_FATAL_ERRORS);
p = lp_include(i);
parse_rule(&daemon_filter_list, p,
MATCHFLG_INCLUDE | MATCHFLG_WORD_SPLIT,
p = lp_include(i);
parse_rule(&daemon_filter_list, p,
MATCHFLG_INCLUDE | MATCHFLG_WORD_SPLIT,
- XFLG_ABS_IF_SLASH | XFLG_OLD_PREFIXES);
+ XFLG_ABS_IF_SLASH | XFLG_
DIR2WILD3 | XFLG_
OLD_PREFIXES);
p = lp_exclude_from(i);
parse_filter_file(&daemon_filter_list, p, 0,
p = lp_exclude_from(i);
parse_filter_file(&daemon_filter_list, p, 0,
- XFLG_ABS_IF_SLASH | XFLG_OLD_PREFIXES | XFLG_FATAL_ERRORS);
+ XFLG_ABS_IF_SLASH | XFLG_
DIR2WILD3 | XFLG_
OLD_PREFIXES | XFLG_FATAL_ERRORS);
p = lp_exclude(i);
parse_rule(&daemon_filter_list, p, MATCHFLG_WORD_SPLIT,
p = lp_exclude(i);
parse_rule(&daemon_filter_list, p, MATCHFLG_WORD_SPLIT,
- XFLG_ABS_IF_SLASH | XFLG_OLD_PREFIXES);
+ XFLG_ABS_IF_SLASH | XFLG_
DIR2WILD3 | XFLG_
OLD_PREFIXES);
log_init(1);
log_init(1);
@@
-673,12
+673,12
@@
static int rsync_module(int f_in, int f_out, int i, char *addr, char *host)
io_printf(f_out, "@ERROR: chroot failed\n");
return -1;
}
io_printf(f_out, "@ERROR: chroot failed\n");
return -1;
}
- if (!
push_dir(module_dir, 0
))
+ if (!
change_dir(module_dir, CD_NORMAL
))
goto chdir_failed;
if (module_dirlen)
sanitize_paths = 1;
} else {
goto chdir_failed;
if (module_dirlen)
sanitize_paths = 1;
} else {
- if (!
push_dir(module_dir, 0
)) {
+ if (!
change_dir(module_dir, CD_NORMAL
)) {
chdir_failed:
rsyserr(FLOG, errno, "chdir %s failed\n", module_dir);
io_printf(f_out, "@ERROR: chdir failed\n");
chdir_failed:
rsyserr(FLOG, errno, "chdir %s failed\n", module_dir);
io_printf(f_out, "@ERROR: chdir failed\n");