summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libsystemd-bus/sd-dns.c34
-rw-r--r--src/libsystemd-bus/test-dns.c21
2 files changed, 30 insertions, 25 deletions
diff --git a/src/libsystemd-bus/sd-dns.c b/src/libsystemd-bus/sd-dns.c
index 8126cb38af..0f90d020ad 100644
--- a/src/libsystemd-bus/sd-dns.c
+++ b/src/libsystemd-bus/sd-dns.c
@@ -229,7 +229,8 @@ static int send_addrinfo_reply(int out_fd, unsigned id, int ret, struct addrinfo
struct addrinfo *k;
for (k = ai; k; k = k->ai_next) {
- if (!(p = serialize_addrinfo(p, k, &resp->header.length, (char*) data + BUFSIZE - (char*) p))) {
+ p = serialize_addrinfo(p, k, &resp->header.length, (char*) data + BUFSIZE - (char*) p);
+ if (!p) {
resp->ret = EAI_MEMORY;
break;
}
@@ -457,8 +458,8 @@ asyncns_t* asyncns_new(unsigned n_proc) {
for (asyncns->valid_workers = 0; asyncns->valid_workers < n_proc; asyncns->valid_workers++) {
int r;
-
- if ((r = pthread_create(&asyncns->workers[asyncns->valid_workers], NULL, thread_worker, asyncns)) != 0) {
+ r = pthread_create(&asyncns->workers[asyncns->valid_workers], NULL, thread_worker, asyncns);
+ if (r) {
errno = r;
goto fail;
}
@@ -532,7 +533,8 @@ static asyncns_query_t *lookup_query(asyncns_t *asyncns, unsigned id) {
asyncns_query_t *q;
assert(asyncns);
- if ((q = asyncns->queries[id % MAX_QUERIES]))
+ q = asyncns->queries[id % MAX_QUERIES];
+ if (q)
if (q->id == id)
return q;
@@ -572,7 +574,8 @@ static const void *unserialize_addrinfo(const void *p, struct addrinfo **ret_ai,
if (*length < l)
return NULL;
- if (!(ai = malloc(sizeof(struct addrinfo))))
+ ai = malloc(sizeof(struct addrinfo));
+ if (!ai)
goto fail;
ai->ai_addr = NULL;
@@ -626,7 +629,8 @@ static int handle_response(asyncns_t *asyncns, const packet_t *packet, size_t le
return 0;
}
- if (!(q = lookup_query(asyncns, resp->id)))
+ q = lookup_query(asyncns, resp->id);
+ if (!q)
return 0;
switch (resp->type) {
@@ -730,7 +734,8 @@ int asyncns_wait(asyncns_t *asyncns, int block) {
return -1;
}
- if (((l = recv(asyncns->fds[RESPONSE_RECV_FD], buf, sizeof(buf), 0)) < 0)) {
+ l = recv(asyncns->fds[RESPONSE_RECV_FD], buf, sizeof(buf), 0);
+ if (l < 0) {
fd_set fds;
if (errno != EAGAIN)
@@ -765,7 +770,6 @@ static asyncns_query_t *alloc_query(asyncns_t *asyncns) {
}
while (asyncns->queries[asyncns->current_index]) {
-
asyncns->current_index++;
asyncns->current_id++;
@@ -773,7 +777,8 @@ static asyncns_query_t *alloc_query(asyncns_t *asyncns) {
asyncns->current_index -= MAX_QUERIES;
}
- if (!(q = asyncns->queries[asyncns->current_index] = malloc(sizeof(asyncns_query_t)))) {
+ q = asyncns->queries[asyncns->current_index] = malloc(sizeof(asyncns_query_t));
+ if (!q) {
errno = ENOMEM;
return NULL;
}
@@ -806,10 +811,10 @@ asyncns_query_t* asyncns_getaddrinfo(asyncns_t *asyncns, const char *node, const
return NULL;
}
- if (!(q = alloc_query(asyncns)))
+ q = alloc_query(asyncns);
+ if (!q)
return NULL;
-
req->node_len = node ? strlen(node)+1 : 0;
req->service_len = service ? strlen(service)+1 : 0;
@@ -892,10 +897,10 @@ asyncns_query_t* asyncns_getnameinfo(asyncns_t *asyncns, const struct sockaddr *
return NULL;
}
- if (!(q = alloc_query(asyncns)))
+ q = alloc_query(asyncns);
+ if (!q)
return NULL;
-
req->header.id = q->id;
req->header.type = q->type = REQUEST_NAMEINFO;
req->header.length = sizeof(nameinfo_request_t) + salen;
@@ -977,7 +982,8 @@ static asyncns_query_t * asyncns_res(asyncns_t *asyncns, query_type_t qtype, con
return NULL;
}
- if (!(q = alloc_query(asyncns)))
+ q = alloc_query(asyncns);
+ if (!q)
return NULL;
req->dname_len = strlen(dname) + 1;
diff --git a/src/libsystemd-bus/test-dns.c b/src/libsystemd-bus/test-dns.c
index 3e326ba071..b4f064f2fd 100644
--- a/src/libsystemd-bus/test-dns.c
+++ b/src/libsystemd-bus/test-dns.c
@@ -56,7 +56,6 @@ int main(int argc, char *argv[]) {
hints.ai_socktype = SOCK_STREAM;
q1 = asyncns_getaddrinfo(asyncns, argc >= 2 ? argv[1] : "www.heise.de", NULL, &hints);
-
if (!q1)
fprintf(stderr, "asyncns_getaddrinfo(): %s\n", strerror(errno));
@@ -66,27 +65,25 @@ int main(int argc, char *argv[]) {
sa.sin_port = htons(80);
q2 = asyncns_getnameinfo(asyncns, (struct sockaddr*) &sa, sizeof(sa), 0, 1, 1);
-
if (!q2)
fprintf(stderr, "asyncns_getnameinfo(): %s\n", strerror(errno));
/* Make a res_query() call */
q3 = asyncns_res_query(asyncns, "_xmpp-client._tcp.gmail.com", C_IN, T_SRV);
-
if (!q3)
fprintf(stderr, "asyncns_res_query(): %s\n", strerror(errno));
/* Wait until the three queries are completed */
- while (!asyncns_isdone(asyncns, q1)
- || !asyncns_isdone(asyncns, q2)
- || !asyncns_isdone(asyncns, q3)) {
- if (asyncns_wait(asyncns, 1) < 0) {
+ while (!asyncns_isdone(asyncns, q1) ||
+ !asyncns_isdone(asyncns, q2) ||
+ !asyncns_isdone(asyncns, q3)) {
+ if (asyncns_wait(asyncns, 1) < 0)
fprintf(stderr, "asyncns_wait(): %s\n", strerror(errno));
- }
}
/* Interpret the result of the name -> addr query */
- if ((ret = asyncns_getaddrinfo_done(asyncns, q1, &ai)))
+ ret = asyncns_getaddrinfo_done(asyncns, q1, &ai);
+ if (ret)
fprintf(stderr, "error: %s %i\n", gai_strerror(ret), ret);
else {
struct addrinfo *i;
@@ -105,13 +102,15 @@ int main(int argc, char *argv[]) {
}
/* Interpret the result of the addr -> name query */
- if ((ret = asyncns_getnameinfo_done(asyncns, q2, host, sizeof(host), serv, sizeof(serv))))
+ ret = asyncns_getnameinfo_done(asyncns, q2, host, sizeof(host), serv, sizeof(serv));
+ if (ret)
fprintf(stderr, "error: %s %i\n", gai_strerror(ret), ret);
else
printf("%s -- %s\n", host, serv);
/* Interpret the result of the SRV lookup */
- if ((ret = asyncns_res_done(asyncns, q3, &srv)) < 0) {
+ ret = asyncns_res_done(asyncns, q3, &srv);
+ if (ret < 0) {
fprintf(stderr, "error: %s %i\n", strerror(errno), ret);
} else if (ret == 0) {
fprintf(stderr, "No reply for SRV lookup\n");