[master] 4d11c0726 Fix VTCP_my_suckaddr() refactor

Nils Goroll nils.goroll at uplex.de
Fri Jan 8 17:27:06 UTC 2021


commit 4d11c0726445c5abfc032c191da0be98f6cdc5a9
Author: Nils Goroll <nils.goroll at uplex.de>
Date:   Fri Jan 8 18:20:02 2021 +0100

    Fix VTCP_my_suckaddr() refactor
    
    Before c1352b0b0ece8028317c838751d9042a55347cd5, the function asserted
    that getsockname() succeed. We now restore this behaviour in a way which
    Flexelint understands (we are returning the memory which we allocated).

diff --git a/lib/libvarnish/vtcp.c b/lib/libvarnish/vtcp.c
index 9f2629de6..78a093738 100644
--- a/lib/libvarnish/vtcp.c
+++ b/lib/libvarnish/vtcp.c
@@ -106,8 +106,11 @@ VTCP_name(const struct suckaddr *addr, char *abuf, unsigned alen,
 struct suckaddr *
 VTCP_my_suckaddr(int sock)
 {
-	return (VSA_getsockname(sock,
-	    malloc(vsa_suckaddr_len), vsa_suckaddr_len));
+	struct suckaddr *r;
+
+	r = malloc(vsa_suckaddr_len);
+	AN(VSA_getsockname(sock, r, vsa_suckaddr_len));
+	return (r);
 }
 
 /*--------------------------------------------------------------------*/


More information about the varnish-commit mailing list