This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][BZ #1349] Return requested size for malloc_usable_sizewhen MALLOC_CHECK_ > 0


On 09/04/2012 04:40 PM, Siddhesh Poyarekar wrote:
hi,

ping?

http://sourceware.org/ml/libc-alpha/2012-08/msg00639.html

with the updated patch here:

http://sourceware.org/ml/libc-alpha/2012-08/msg00642.html

Thanks, this looks fine.


Andreas

Regards,
Siddhesh

On Fri, 31 Aug 2012 18:32:07 +0530, Siddhesh wrote:

On Fri, 31 Aug 2012 14:38:22 +0200, Andreas wrote:
+  memset (p, 0, malloc_usable_size (p));
+  free (p);
+  return 0;

In this case malloc_usable_size () should return >= 7, so I suggest to check for that value as well. The memset/free is a good idea!

When MALLOC_CHECK_ is exported as a positive value (which I am doing for this test), malloc_usable_size should return exactly 7, since the malloc_check code adds a magic number at p[7] if p is the mem pointer. Anything greater than that and the user may risk writing over the magic value and tripping an assertion during free.

But I get your point; I will add a check to ensure that usable_size ==
7, lest it returns a value less than 7 due to some future bug. Updated
patch attached.

Regards,
Siddhesh



--
 Andreas Jaeger aj@{suse.com,opensuse.org} Twitter/Identica: jaegerandi
  SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
   GF: Jeff Hawn,Jennifer Guild,Felix Imendörffer,HRB16746 (AG Nürnberg)
    GPG fingerprint = 93A3 365E CE47 B889 DF7F  FED1 389A 563C C272 A126


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]