The "Bind" directive sets a binding address which the outgoing connections

will use.
This commit is contained in:
Robert James Kaes 2002-04-22 19:35:24 +00:00
parent 1953348c90
commit 08077cc9e1

View File

@ -1,4 +1,4 @@
/* $Id: sock.c,v 1.31 2002-04-18 21:54:50 rjkaes Exp $
/* $Id: sock.c,v 1.32 2002-04-22 19:35:24 rjkaes Exp $
*
* Sockets are created and destroyed here. When a new connection comes in from
* a client, we need to copy the socket and the create a second socket to the
@ -111,15 +111,15 @@ opensock(char *ip_addr, uint16_t port)
}
/* Bind to our listening address*/
if (config.ipAddr) {
if (bind_address) {
memset(&bind_addr, 0, sizeof(bind_addr));
bind_addr.sin_family = AF_INET;
bind_addr.sin_addr.s_addr = inet_addr(config.ipAddr);
bind_addr.sin_addr.s_addr = inet_addr(bind_address);
ret = bind(sock_fd, (struct sockaddr *)&bind_addr, sizeof(bind_addr));
if (ret < 0) {
log_message(LOG_ERR, "Could not bind local address \"%\" because of %s",
config.ipAddr,
bind_address,
strerror(errno));
return -1;
}