<div dir="ltr">When I ported OI to a few dozen OSes back in the early 1990s,<div>realloc behaved correctly. We used it in the pre-template / STL</div><div>days of C++ to implement variable length arrays. Any misbehavior</div><div>predated this.</div><div><br></div><div>The systems were HP/UX, AIX, AUX, OSF/1 (Digital Unix), SunOS 4,</div><div>Solaris, Linux, FreeBSD, IRIX, and Apollo's Unix.</div><div><br></div><div>Warner</div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Sep 11, 2015 at 12:21 AM, Rudi Blom <span dir="ltr"><<a href="mailto:rudi.j.blom@gmail.com" target="_blank">rudi.j.blom@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I never used realloc(), only malloc() and calloc().<br>
<br>
Checking a few unixes I have access to all reallocs() seem to state<br>
either nothing on contents of memory added or state explicitly<br>
'undefined'.<br>
<br>
The only function which zeroes allocated memory is calloc() it seems.<br>
Unixes checks: SCO UNIX 3.2V4.2, Digital Unix 4.0G, Tru64 Unix V5.1B,<br>
HP-UX 11.23, HP-UX 11.31<br>
<br>
Cheers<br>
<br>
On 9/11/15, <a href="mailto:tuhs-request@minnie.tuhs.org">tuhs-request@minnie.tuhs.org</a> <<a href="mailto:tuhs-request@minnie.tuhs.org">tuhs-request@minnie.tuhs.org</a>> wrote:<br>
> Send TUHS mailing list submissions to<br>
>       <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a><br>
><br>
> To subscribe or unsubscribe via the World Wide Web, visit<br>
>       <a href="https://minnie.tuhs.org/mailman/listinfo/tuhs" rel="noreferrer" target="_blank">https://minnie.tuhs.org/mailman/listinfo/tuhs</a><br>
> or, via email, send a message with subject or body 'help' to<br>
>       <a href="mailto:tuhs-request@minnie.tuhs.org">tuhs-request@minnie.tuhs.org</a><br>
><br>
> You can reach the person managing the list at<br>
>       <a href="mailto:tuhs-owner@minnie.tuhs.org">tuhs-owner@minnie.tuhs.org</a><br>
><br>
> When replying, please edit your Subject line so it is more specific<br>
> than "Re: Contents of TUHS digest..."<br>
><br>
><br>
> Today's Topics:<br>
><br>
>    1. Did realloc ever zero the new memory? (David)<br>
>    2. Re: Did realloc ever zero the new memory? (Jim Capp)<br>
>    3. Re: Did realloc ever zero the new memory? (David)<br>
>    4. Re: Did realloc ever zero the new memory? (Larry McVoy)<br>
>    5. Re: Did realloc ever zero the new memory? (David)<br>
>    6. Re: Did realloc ever zero the new memory? (Larry McVoy)<br>
>    7. Re: Did realloc ever zero the new memory? (Clem Cole)<br>
>    8. Re: Did realloc ever zero the new memory? (Dave Horsfall)<br>
><br>
><br>
> ----------------------------------------------------------------------<br>
><br>
> Message: 1<br>
> Date: Thu, 10 Sep 2015 12:52:45 -0700<br>
> From: David <<a href="mailto:david@kdbarto.org">david@kdbarto.org</a>><br>
> To: <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a><br>
> Subject: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID: <<a href="mailto:E798E102-2C50-4AB2-92CC-188D05AA951F@kdbarto.org">E798E102-2C50-4AB2-92CC-188D05AA951F@kdbarto.org</a>><br>
> Content-Type: text/plain; charset=utf-8<br>
><br>
> I?ve just had a discussion with my boss about this and he claimed that it<br>
> did at one point and I said it hasn?t in all the unix versions I?ve ever<br>
> played with (v6, v7, sys III, V, BSD 2, 3, 4, SunOS and Solaris).<br>
><br>
> My question to this illustrious group is: Did any Unix or Unix like OS ever<br>
> zero fill on realloc?<br>
><br>
>       David<br>
><br>
><br>
><br>
> ------------------------------<br>
><br>
> Message: 2<br>
> Date: Thu, 10 Sep 2015 16:10:41 -0400 (EDT)<br>
> From: Jim Capp <<a href="mailto:jcapp@anteil.com">jcapp@anteil.com</a>><br>
> To: <a href="mailto:david@kdbarto.org">david@kdbarto.org</a><br>
> Cc: <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a><br>
> Subject: Re: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID: <5962857.12872.1441915841364.JavaMail.root@zimbraanteil><br>
> Content-Type: text/plain; charset="utf-8"<br>
><br>
> On every system that I've ever used, I believe that realloc did not do a<br>
> zero fill. There might have been a time when malloc did a zero fill, but I<br>
> never counted on it. I always performed a memset or bzero after a malloc.<br>
> I'm pretty sure that I counted on realloc to NOT perform a zero fill.<br>
><br>
><br>
> $.02<br>
><br>
><br>
><br>
> From: "David" <<a href="mailto:david@kdbarto.org">david@kdbarto.org</a>><br>
> To: <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a><br>
> Sent: Thursday, September 10, 2015 3:52:45 PM<br>
> Subject: [TUHS] Did realloc ever zero the new memory?<br>
><br>
> I?ve just had a discussion with my boss about this and he claimed that it<br>
> did at one point and I said it hasn?t in all the unix versions I?ve ever<br>
> played with (v6, v7, sys III, V, BSD 2, 3, 4, SunOS and Solaris).<br>
><br>
> My question to this illustrious group is: Did any Unix or Unix like OS ever<br>
> zero fill on realloc?<br>
><br>
> David<br>
><br>
> _______________________________________________<br>
> TUHS mailing list<br>
> <a href="mailto:TUHS@minnie.tuhs.org">TUHS@minnie.tuhs.org</a><br>
> <a href="https://minnie.tuhs.org/mailman/listinfo/tuhs" rel="noreferrer" target="_blank">https://minnie.tuhs.org/mailman/listinfo/tuhs</a><br>
> -------------- next part --------------<br>
> An HTML attachment was scrubbed...<br>
> URL:<br>
> <<a href="http://minnie.tuhs.org/pipermail/tuhs/attachments/20150910/f4857c45/attachment-0001.html" rel="noreferrer" target="_blank">http://minnie.tuhs.org/pipermail/tuhs/attachments/20150910/f4857c45/attachment-0001.html</a>><br>
><br>
> ------------------------------<br>
><br>
> Message: 3<br>
> Date: Thu, 10 Sep 2015 13:22:33 -0700<br>
> From: David <<a href="mailto:david@kdbarto.org">david@kdbarto.org</a>><br>
> To: Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>><br>
> Cc: <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a><br>
> Subject: Re: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID: <<a href="mailto:395F25EB-77F3-4830-A1AF-C27E43550C04@kdbarto.org">395F25EB-77F3-4830-A1AF-C27E43550C04@kdbarto.org</a>><br>
> Content-Type: text/plain; charset=us-ascii<br>
><br>
> Buggy, sure.<br>
><br>
> Zero (less) filling, that is the question.<br>
><br>
> Realloc has had a difficult history, and I try to avoid it if at all<br>
> possible.<br>
><br>
>       David<br>
><br>
>> On Sep 10, 2015, at 1:21 PM, Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>> wrote:<br>
>><br>
>> Am I the only one that remembers realloc() being buggy on some systems?<br>
><br>
><br>
><br>
> ------------------------------<br>
><br>
> Message: 4<br>
> Date: Thu, 10 Sep 2015 13:27:23 -0700<br>
> From: Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>><br>
> To: David <<a href="mailto:david@kdbarto.org">david@kdbarto.org</a>><br>
> Cc: <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a><br>
> Subject: Re: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID: <<a href="mailto:20150910202723.GI8154@mcvoy.com">20150910202723.GI8154@mcvoy.com</a>><br>
> Content-Type: text/plain; charset=us-ascii<br>
><br>
> Good, glad to know it wasn't just me.  I've finally let my team use it<br>
> but we avoided it when we supported more odd ball platforms.<br>
><br>
> On zero fill, I doubt many did that.  Many really early on when memory<br>
> was small.<br>
><br>
> What you might be thinking of is modern systems implement malloc()<br>
> as an mmap of /dev/zero and the initial data comes through as zeroed.<br>
> But counting on that would be a mistake.<br>
><br>
> On Thu, Sep 10, 2015 at 01:22:33PM -0700, David wrote:<br>
>> Buggy, sure.<br>
>><br>
>> Zero (less) filling, that is the question.<br>
>><br>
>> Realloc has had a difficult history, and I try to avoid it if at all<br>
>> possible.<br>
>><br>
>>      David<br>
>><br>
>> > On Sep 10, 2015, at 1:21 PM, Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>> wrote:<br>
>> ><br>
>> > Am I the only one that remembers realloc() being buggy on some systems?<br>
><br>
> --<br>
> ---<br>
> Larry McVoy                        lm at <a href="http://mcvoy.com" rel="noreferrer" target="_blank">mcvoy.com</a><br>
> <a href="http://www.mcvoy.com/lm" rel="noreferrer" target="_blank">http://www.mcvoy.com/lm</a><br>
><br>
><br>
> ------------------------------<br>
><br>
> Message: 5<br>
> Date: Thu, 10 Sep 2015 13:29:16 -0700<br>
> From: David <<a href="mailto:david@kdbarto.org">david@kdbarto.org</a>><br>
> To: Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>><br>
> Cc: <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a><br>
> Subject: Re: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID: <<a href="mailto:FF64BDD6-C57E-4959-B0D1-2F97FF909EA9@kdbarto.org">FF64BDD6-C57E-4959-B0D1-2F97FF909EA9@kdbarto.org</a>><br>
> Content-Type: text/plain; charset=utf-8<br>
><br>
> I mentioned the /dev/zero malloc and, no, he was quite sure that it was<br>
> realloc doing the zero fills.<br>
><br>
> Glad to know that I?m sitting on the right side of history on this one.<br>
><br>
>       David<br>
><br>
>> On Sep 10, 2015, at 1:27 PM, Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>> wrote:<br>
>><br>
>> Good, glad to know it wasn't just me.  I've finally let my team use it<br>
>> but we avoided it when we supported more odd ball platforms.<br>
>><br>
>> On zero fill, I doubt many did that.  Many really early on when memory<br>
>> was small.<br>
>><br>
>> What you might be thinking of is modern systems implement malloc()<br>
>> as an mmap of /dev/zero and the initial data comes through as zeroed.<br>
>> But counting on that would be a mistake.<br>
>><br>
>> On Thu, Sep 10, 2015 at 01:22:33PM -0700, David wrote:<br>
>>> Buggy, sure.<br>
>>><br>
>>> Zero (less) filling, that is the question.<br>
>>><br>
>>> Realloc has had a difficult history, and I try to avoid it if at all<br>
>>> possible.<br>
>>><br>
>>>     David<br>
>>><br>
>>>> On Sep 10, 2015, at 1:21 PM, Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>> wrote:<br>
>>>><br>
>>>> Am I the only one that remembers realloc() being buggy on some systems?<br>
>><br>
>> --<br>
>> ---<br>
>> Larry McVoy                       lm at <a href="http://mcvoy.com" rel="noreferrer" target="_blank">mcvoy.com</a><br>
>> <a href="http://www.mcvoy.com/lm" rel="noreferrer" target="_blank">http://www.mcvoy.com/lm</a><br>
><br>
><br>
><br>
> ------------------------------<br>
><br>
> Message: 6<br>
> Date: Thu, 10 Sep 2015 13:21:15 -0700<br>
> From: Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>><br>
> To: Jim Capp <<a href="mailto:jcapp@anteil.com">jcapp@anteil.com</a>><br>
> Cc: <a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a>, <a href="mailto:david@kdbarto.org">david@kdbarto.org</a><br>
> Subject: Re: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID: <<a href="mailto:20150910202115.GH8154@mcvoy.com">20150910202115.GH8154@mcvoy.com</a>><br>
> Content-Type: text/plain; charset=us-ascii<br>
><br>
> Am I the only one that remembers realloc() being buggy on some systems?<br>
><br>
><br>
> ------------------------------<br>
><br>
> Message: 7<br>
> Date: Thu, 10 Sep 2015 16:41:26 -0400<br>
> From: Clem Cole <<a href="mailto:clemc@ccc.com">clemc@ccc.com</a>><br>
> To: Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>><br>
> Cc: <a href="mailto:david@kdbarto.org">david@kdbarto.org</a>, TUHS main list <<a href="mailto:tuhs@minnie.tuhs.org">tuhs@minnie.tuhs.org</a>><br>
> Subject: Re: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID:<br>
>       <<a href="mailto:CAC20D2P_Gw-YKP8EHASFToTe_W0nfdcJabQ6_aJYnX0BhnPvng@mail.gmail.com">CAC20D2P_Gw-YKP8EHASFToTe_W0nfdcJabQ6_aJYnX0BhnPvng@mail.gmail.com</a>><br>
> Content-Type: text/plain; charset="utf-8"<br>
><br>
> below<br>
><br>
> On Thu, Sep 10, 2015 at 4:21 PM, Larry McVoy <<a href="mailto:lm@mcvoy.com">lm@mcvoy.com</a>> wrote:<br>
><br>
>> Am I the only one that remembers realloc() being buggy on some systems?<br>
>><br>
>><br>
> ?Amen...   it was rarely useful.   I always found realloc to one of the<br>
> part I could never trust.  I do remember  what you got back from any of the<br>
> malloc calls could vary widely.  Particularly pre-ANSI C and working on<br>
> non-UNIX systems.<br>
><br>
><br>
> Malloc in general was always a tarbaby because there were (are) so many<br>
> implementations "in the wild."   I used to advise our application people to<br>
> create something that was application specific and then call the local<br>
> malloc under the covers, but the chances that a general malloc<br>
> implementation would be optimal for your code was low.?<br>
><br>
> Clem<br>
> -------------- next part --------------<br>
> An HTML attachment was scrubbed...<br>
> URL:<br>
> <<a href="http://minnie.tuhs.org/pipermail/tuhs/attachments/20150910/25a3e14c/attachment-0001.html" rel="noreferrer" target="_blank">http://minnie.tuhs.org/pipermail/tuhs/attachments/20150910/25a3e14c/attachment-0001.html</a>><br>
><br>
> ------------------------------<br>
><br>
> Message: 8<br>
> Date: Fri, 11 Sep 2015 10:13:41 +1000 (EST)<br>
> From: Dave Horsfall <<a href="mailto:dave@horsfall.org">dave@horsfall.org</a>><br>
> To: The Eunuchs Hysterical Society <<a href="mailto:tuhs@tuhs.org">tuhs@tuhs.org</a>><br>
> Subject: Re: [TUHS] Did realloc ever zero the new memory?<br>
> Message-ID: <<a href="mailto:alpine.BSF.2.11.1509111005190.42450@aneurin.horsfall.org">alpine.BSF.2.11.1509111005190.42450@aneurin.horsfall.org</a>><br>
> Content-Type: text/plain; charset="utf-8"<br>
><br>
> On Thu, 10 Sep 2015, David wrote:<br>
><br>
>> I?ve just had a discussion with my boss about this and he claimed that<br>
>> it did at one point and I said it hasn?t in all the unix versions I?ve<br>
>> ever played with (v6, v7, sys III, V, BSD 2, 3, 4, SunOS and Solaris).<br>
><br>
> Only V6?  I did V5...  Tell that to the young kids of today, and they<br>
> won't believe you.<br>
><br>
>> My question to this illustrious group is: Did any Unix or Unix like OS<br>
>> ever zero fill on realloc?<br>
><br>
> Never in my lifetime, which meant that you got inspect someone's private<br>
> messages and there's someone knocking at my door and<br>
><br>
> #$%^&*\{{{<br>
><br>
> NO CARRIER<br>
><br>
> ------------------------------<br>
><br>
> _______________________________________________<br>
> TUHS mailing list<br>
> <a href="mailto:TUHS@minnie.tuhs.org">TUHS@minnie.tuhs.org</a><br>
> <a href="https://minnie.tuhs.org/mailman/listinfo/tuhs" rel="noreferrer" target="_blank">https://minnie.tuhs.org/mailman/listinfo/tuhs</a><br>
><br>
><br>
> End of TUHS Digest, Vol 128, Issue 1<br>
> ************************************<br>
><br>
_______________________________________________<br>
TUHS mailing list<br>
<a href="mailto:TUHS@minnie.tuhs.org">TUHS@minnie.tuhs.org</a><br>
<a href="https://minnie.tuhs.org/mailman/listinfo/tuhs" rel="noreferrer" target="_blank">https://minnie.tuhs.org/mailman/listinfo/tuhs</a><br>
</blockquote></div><br></div></div>