|
Message-ID: <9a9f93674d04ac477e556a307b91ac54@poolp.org> Date: Sat, 23 Nov 2019 16:31:35 +0000 From: gilles@...lp.org To: "Florian Weimer" <fw@...eb.enyo.de> Cc: musl@...ts.openwall.com Subject: Re: freeaddrinfo() comments and questions November 23, 2019 5:05 PM, "Florian Weimer" <fw@...eb.enyo.de> wrote: > * gilles: > >> In these other implementations, it is possible to write a custom >> struct addrinfo allocator and use freeaddrinfo() on it, just like it >> is possible to use getaddrinfo() and use a custom release function on >> it. This is not a very common use-case, granted, but it is one >> nonetheless, and one that works and has worked in a portable way for a >> long time across a wide variety of systems. > > I think this is clearly undefined. There is no way to know how > storage for ai_addr and ai_canonname is managed. These pointers could > point to separate allocations, made with malloc. They could be > interior pointers to the same top-level allocation at which start the > struct addrinfo object is allocated. Nothing even needs to use > malloc, including the outer struct addrinfo object. Fair enough for this use-case, I think you are right and it works by accident. What is your opinion on the other comments ?
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.