X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/654175798bdbdd6403e10c8fa74e8586b3612ea1..716baed7ff23f949861f0eb369c013408e17f984:/main.c diff --git a/main.c b/main.c index bc587ccc..900cd64e 100644 --- a/main.c +++ b/main.c @@ -36,7 +36,7 @@ static void report(int f) extern int do_stats; if (am_daemon) { - log_exit(0); + log_exit(0, __FILE__, __LINE__); if (f == -1 || !am_sender) return; } @@ -171,7 +171,10 @@ static char *get_local_name(struct file_list *flist,char *name) if (verbose > 2) rprintf(FINFO,"get_local_name count=%d %s\n", - flist->count, name); + flist->count, NS(name)); + + if (!name) + return NULL; if (do_stat(name,&st) == 0) { if (S_ISDIR(st.st_mode)) { @@ -192,9 +195,6 @@ static char *get_local_name(struct file_list *flist,char *name) if (flist->count == 1) return name; - if (!name) - return NULL; - if (do_mkdir(name,0777 & ~orig_umask) != 0) { rprintf(FERROR,"mkdir %s : %s (1)\n",name,strerror(errno)); exit_cleanup(RERR_FILEIO); @@ -464,6 +464,7 @@ static int start_client(int argc, char *argv[]) extern int local_server; extern int am_sender; extern char *shell_cmd; + extern int rsync_port; if (strncasecmp(URL_PREFIX, argv[0], strlen(URL_PREFIX)) == 0) { char *host, *path; @@ -476,6 +477,11 @@ static int start_client(int argc, char *argv[]) } else { path=""; } + p = strchr(host,':'); + if (p) { + rsync_port = atoi(p+1); + *p = 0; + } return start_socket_client(host, path, argc-1, argv+1); }