diff options
Diffstat (limited to 'tls.c')
| -rw-r--r-- | tls.c | 9 | 
1 files changed, 8 insertions, 1 deletions
| @@ -32,6 +32,13 @@  #include "radsecproxy.h"  #include "tls.h" +static struct addrinfo *srcres = NULL; + +void tlssetsrcres(char *source) { +    if (!srcres) +	srcres = resolve_hostport_addrinfo(RAD_TLS, source); +} +  int tlsconnect(struct server *server, struct timeval *when, int timeout, char *text) {      struct timeval now;      time_t elapsed; @@ -76,7 +83,7 @@ int tlsconnect(struct server *server, struct timeval *when, int timeout, char *t  	debug(DBG_WARN, "tlsconnect: trying to open TLS connection to %s port %s", server->conf->host, server->conf->port);  	if (server->sock >= 0)  	    close(server->sock); -	if ((server->sock = connecttcp(server->conf->addrinfo, getsrcprotores(RAD_TLS))) < 0) { +	if ((server->sock = connecttcp(server->conf->addrinfo, srcres)) < 0) {  	    debug(DBG_ERR, "tlsconnect: connecttcp failed");  	    continue;  	} | 
