]> granicus.if.org Git - pgbouncer/commitdiff
Add missing error checks
authorMarko Kreen <markokr@gmail.com>
Wed, 9 Jan 2013 10:31:48 +0000 (12:31 +0200)
committerMarko Kreen <markokr@gmail.com>
Wed, 20 Feb 2013 21:22:51 +0000 (23:22 +0200)
src/dnslookup.c
src/objects.c

index 0c0efe97bcc691b43369d415d6fb2184e08ccb26..403fe85b8f8b6f01d7febe3cd8723a9ece99cc2f 100644 (file)
@@ -522,12 +522,15 @@ static void udns_result_a4(struct dns_ctx *ctx, struct dns_rr_a4 *a4, void *data
        struct addrinfo *res = NULL;
        int err;
 
-
        err = dns_status(ctx);
-       if (a4) {
+       if (err < 0) {
+               log_warning("udns_result_a4: %s: query failed [%d]", req->name, err);
+       } else if (a4) {
                log_noise("udns_result_a4: %s: %d ips", req->name, a4->dnsa4_nrr);
                res = convert_ipv4_result(a4->dnsa4_addr, a4->dnsa4_nrr);
                free(a4);
+       } else {
+               log_warning("udns_result_a4: %s: missing result", req->name);
        }
        got_result_gai(0, res, req);
 }
index aa4a93c88319585688837218fe219b7b931a0f09..b1ec5b947a641fbbc4e20d95a3973a2a0dad594a 100644 (file)
@@ -1137,6 +1137,8 @@ void forward_cancel_request(PgSocket *server)
        Assert(server->state == SV_LOGIN);
 
        SEND_CancelRequest(res, server, req->cancel_key);
+       if (!res)
+               log_warning("sending cancel request failed: %s", strerror(errno));
 
        change_client_state(req, CL_JUSTFREE);
 }