Proposed addition of malloc_size_np()

Poul-Henning Kamp phk at phk.freebsd.dk
Sat Mar 25 08:19:30 UTC 2006


In message <20060325081037.GC703 at turion.vk2pj.dyndns.org>, Peter Jeremy writes:
>On Sat, 2006-Mar-25 08:46:36 +0100, Poul-Henning Kamp wrote:
>>In message <44247DF1.8000002 at FreeBSD.org>, Jason Evans writes:
>>>=== Proposal ===
>>>Add malloc_size_np() to libc, and provide the prototype in malloc_np.h:
>>>
>>>	size_t
>>>	malloc_size_np(const void *ptr);
>>
>>I'm for the concept, but wonder if it would be smarter to make it
>>
>>	void *
>>	malloc_np(size_t, size_t *)
>>
>>so we can do it in one go ?
>
>That restricts its use to malloc() wrappers.  I can also see the
>benefit in a function trying to validate the size of an arbitrary
>piece of memory that has been passed to it.

No you can't, because you cannot be certain that the pointer passed
to you is actually an unadultered malloc pointer.

-- 
Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG         | TCP/IP since RFC 956
FreeBSD committer       | BSD since 4.3-tahoe    
Never attribute to malice what can adequately be explained by incompetence.


More information about the freebsd-arch mailing list