int child_listening_sock (uint16_t port)
{
- listenfd = listen_sock (port);
+ listenfd = listen_sock (config.ipAddr, port);
return listenfd;
}
* Start listening on a socket. Create a socket with the selected port.
* The socket fd is returned upon success, -1 upon error.
*/
-int listen_sock (uint16_t port)
+int listen_sock (const char *addr, uint16_t port)
{
struct addrinfo hints, *result, *rp;
char portstr[6];
snprintf (portstr, sizeof (portstr), "%d", port);
- if (getaddrinfo (config.ipAddr, portstr, &hints, &result) != 0) {
+ if (getaddrinfo (addr, portstr, &hints, &result) != 0) {
log_message (LOG_ERR,
"Unable to getaddrinfo() because of %s",
strerror (errno));
#define MAXLINE (1024 * 4)
extern int opensock (const char *host, int port, const char *bind_to);
-extern int listen_sock (uint16_t port);
+extern int listen_sock (const char *addr, uint16_t port);
extern int socket_nonblocking (int sock);
extern int socket_blocking (int sock);