X-Git-Url: https://git.distorted.org.uk/~mdw/disorder/blobdiff_plain/0227f67dfe89db21ec0262bc054e50f38c2102fb..440af55d72c65f5c149718dc52abd00f512ffb71:/lib/client-common.c diff --git a/lib/client-common.c b/lib/client-common.c index d269129..2c63934 100644 --- a/lib/client-common.c +++ b/lib/client-common.c @@ -18,14 +18,10 @@ * USA */ -#include -#include "types.h" +#include "common.h" -#include -#include #include #include -#include #include #include @@ -36,11 +32,13 @@ #include "mem.h" /** @brief Figure out what address to connect to + * @param c Configuration to honor * @param sap Where to store pointer to sockaddr * @param namep Where to store socket name * @return Socket length, or (socklen_t)-1 */ -socklen_t find_server(struct sockaddr **sap, char **namep) { +socklen_t find_server(struct config *c, + struct sockaddr **sap, char **namep) { struct sockaddr *sa; struct sockaddr_un su; struct addrinfo *res = 0; @@ -48,23 +46,19 @@ socklen_t find_server(struct sockaddr **sap, char **namep) { socklen_t len; static const struct addrinfo pref = { - 0, - PF_INET, - SOCK_STREAM, - IPPROTO_TCP, - 0, - 0, - 0, - 0 + .ai_flags = 0, + .ai_family = PF_INET, + .ai_socktype = SOCK_STREAM, + .ai_protocol = IPPROTO_TCP, }; - if(config->connect.n) { - res = get_address(&config->connect, &pref, &name); + if(c->connect.n) { + res = get_address(&c->connect, &pref, &name); if(!res) return -1; sa = res->ai_addr; len = res->ai_addrlen; } else { - name = config_get_file("socket"); + name = config_get_file2(c, "socket"); if(strlen(name) >= sizeof su.sun_path) { error(errno, "socket path is too long"); return -1;