X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/dcd08dc51cb77e9ab796d1bdb5739436c90a6ad4..32cbfe7b17ba8ec661fc27fd773909709d100e8a:/socket.c diff --git a/socket.c b/socket.c index 29fb2dcd..4e6ef60f 100644 --- a/socket.c +++ b/socket.c @@ -90,7 +90,7 @@ static int establish_proxy_connection(int fd, char *host, int port, if (*cp == '\r') *cp = '\0'; if (strncmp(buffer, "HTTP/", 5) != 0) { - rprintf(FERROR, "bad response from proxy - %s\n", + rprintf(FERROR, "bad response from proxy -- %s\n", buffer); return -1; } @@ -98,7 +98,7 @@ static int establish_proxy_connection(int fd, char *host, int port, while (*cp == ' ') cp++; if (*cp != '2') { - rprintf(FERROR, "bad response from proxy - %s\n", + rprintf(FERROR, "bad response from proxy -- %s\n", buffer); return -1; } @@ -455,7 +455,7 @@ void start_accept_loop(int port, int (*fn)(int, int)) #ifdef INET6 if (errno == EADDRINUSE && i > 0) { rprintf(FINFO, - "Try using --ipv4 or --ipv6 to avoid this listen() error."); + "Try using --ipv4 or --ipv6 to avoid this listen() error.\n"); } #endif exit_cleanup(RERR_SOCKETIO); @@ -506,8 +506,8 @@ void start_accept_loop(int port, int (*fn)(int, int)) int ret; for (i = 0; sp[i] >= 0; i++) close(sp[i]); - /* open log file in child before possibly giving - * up privileges */ + /* Re-open log file in child before possibly giving + * up privileges (see log_close() above). */ log_open(); ret = fn(fd, fd); close_all(); @@ -525,7 +525,6 @@ void start_accept_loop(int port, int (*fn)(int, int)) close(fd); } } - free(sp); } @@ -620,7 +619,7 @@ void set_socket_options(int fd, char *options) case OPT_ON: if (got_value) - rprintf(FERROR,"syntax error - %s does not take a value\n",tok); + rprintf(FERROR,"syntax error -- %s does not take a value\n",tok); { int on = socket_options[i].value; @@ -654,14 +653,12 @@ void become_daemon(void) /* detach from the terminal */ #ifdef HAVE_SETSID setsid(); -#else -#ifdef TIOCNOTTY +#elif defined TIOCNOTTY i = open("/dev/tty", O_RDWR); if (i >= 0) { ioctl(i, (int)TIOCNOTTY, (char *)0); close(i); } -#endif /* TIOCNOTTY */ #endif /* make sure that stdin, stdout an stderr don't stuff things * up (library functions, for example) */ @@ -697,7 +694,7 @@ static int socketpair_tcp(int fd[2]) goto failed; memset(&sock2, 0, sizeof sock2); -#if HAVE_SOCKADDR_IN_LEN +#ifdef HAVE_SOCKADDR_IN_LEN sock2.sin_len = sizeof sock2; #endif sock2.sin_family = PF_INET; @@ -727,14 +724,16 @@ static int socketpair_tcp(int fd[2]) goto failed; close(listener); + listener = -1; + + set_blocking(fd[1]); + if (connect_done == 0) { if (connect(fd[1], (struct sockaddr *)&sock, sizeof sock) != 0 && errno != EISCONN) goto failed; } - set_blocking(fd[1]); - /* all OK! */ return 0;