diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/IO/dpi.c | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/IO/dpi.c b/src/IO/dpi.c index 6f46b2ba..4b5a5aa2 100644 --- a/src/IO/dpi.c +++ b/src/IO/dpi.c @@ -614,10 +614,10 @@ static int Dpi_get_server_port(const char *server_name) * We have to ask 'dpid' (dpi daemon) for the port of the target dpi server. * Once we have it, then the proper file descriptor is returned (-1 on error). */ -static int Dpi_connect_socket(const char *server_name, int retry) +static int Dpi_connect_socket(const char *server_name) { struct sockaddr_in sin; - int sock_fd, err, dpi_port, ret=-1; + int sock_fd, dpi_port, ret = -1; char *cmd = NULL; /* Query dpid for the port number for this server */ @@ -636,16 +636,7 @@ static int Dpi_connect_socket(const char *server_name, int retry) if ((sock_fd = Dpi_make_socket_fd()) == -1) { perror("[dpi::socket]"); } else if (connect(sock_fd, (void*)&sin, sizeof(sin)) == -1) { - err = errno; - sock_fd = -1; MSG("[dpi::connect] errno:%d %s\n", errno, dStrerror(errno)); - if (retry) { - switch (err) { - case ECONNREFUSED: case EBADF: case ENOTSOCK: case EADDRNOTAVAIL: - sock_fd = Dpi_connect_socket(server_name, FALSE); - break; - } - } /* send authentication Key (the server closes sock_fd on error) */ } else if (!(cmd = a_Dpip_build_cmd("cmd=%s msg=%s", "auth", SharedKey))) { @@ -677,7 +668,7 @@ void a_Dpi_ccc(int Op, int Branch, int Dir, ChainLink *Info, switch (Op) { case OpStart: if ((st = Dpi_blocking_start_dpid()) == 0) { - SockFD = Dpi_connect_socket(Data1, TRUE); + SockFD = Dpi_connect_socket(Data1); if (SockFD != -1) { int *fd = dNew(int, 1); *fd = SockFD; @@ -798,7 +789,7 @@ char *a_Dpi_send_blocking_cmd(const char *server_name, const char *cmd) return ret; } - if ((sock_fd = Dpi_connect_socket(server_name, TRUE)) == -1) { + if ((sock_fd = Dpi_connect_socket(server_name)) == -1) { MSG_ERR("[a_Dpi_send_blocking_cmd] Can't connect to server.\n"); } else if (Dpi_blocking_write(sock_fd, cmd, strlen(cmd)) == -1) { MSG_ERR("[a_Dpi_send_blocking_cmd] Can't send message.\n"); |