fix connect error path
Use syslog() and do not check for EINPROGRESS on the second connect() call.master
parent
24f629178d
commit
388a3c1f45
11
src/main.c
11
src/main.c
|
@ -303,11 +303,9 @@ static void tip_client_connect_cb(struct ev_loop *loop, struct ev_io *io, int ev
|
|||
len = sizeof(cli->addr);
|
||||
ret = connect(cli->io.fd, (struct sockaddr *)&cli->addr, len);
|
||||
if (ret < 0) {
|
||||
if (errno != EINPROGRESS) {
|
||||
perror("connect");
|
||||
tip_client_error(cli);
|
||||
return;
|
||||
}
|
||||
syslog(LOG_ERR, "failed to connect to server to fetch %s", filename);
|
||||
tip_client_error(cli);
|
||||
return;
|
||||
}
|
||||
|
||||
if (cli->state == TIP_CLIENT_NOTIFY_REDIRECT)
|
||||
|
@ -362,7 +360,8 @@ static int tip_client_connect(const char *addr)
|
|||
len = sizeof(cli->addr);
|
||||
ret = connect(remote_fd, (struct sockaddr *)&cli->addr, len);
|
||||
if (ret < 0 && errno != EINPROGRESS) {
|
||||
perror("connect");
|
||||
syslog(LOG_ERR, "failed to connect to server to fetch %s", filename);
|
||||
tip_client_error(cli);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue