Groups | Search | Server Info | Login | Register


Groups > comp.os.linux.misc > #69147

Re: VMS

From candycanearter07 <candycanearter07@candycanearter07.nomail.afraid>
Newsgroups comp.os.linux.misc
Subject Re: VMS
Date 2025-06-27 06:00 +0000
Organization the-candyden-of-code
Message-ID <slrn105sci1.1ibsg.candycanearter07@candydeb.host.invalid> (permalink)
References (12 earlier) <1034pj8$a74s$1@dont-email.me> <mbmm2nFdsgcU2@mid.individual.net> <slrn105cajs.4vj.spamtrap42@one.localnet> <slrn105g20l.3q8n7.candycanearter07@candydeb.host.invalid> <slrn105k75h.h13.spamtrap42@one.localnet>

Show all headers | View raw


Robert Riches <spamtrap42@jacob21819.net> wrote at 03:34 this Tuesday (GMT):
> On 2025-06-22, candycanearter07 <candycanearter07@candycanearter07.nomail.afraid> wrote:
>> Robert Riches <spamtrap42@jacob21819.net> wrote at 03:43 this Saturday (GMT):
>>> On 2025-06-21, rbowman <bowman@montana.com> wrote:
>>>> On Fri, 20 Jun 2025 23:07:20 -0000 (UTC), Rich wrote:
>>>>
>>>>> Very likely, but the idea was to protect the typical programmer from
>>>>> their own common mistakes (of not carefully checking error return codes
>>>>> or buffer lengths, etc.).  I.e. the typical 9-5 contract programmer, not
>>>>> the Dennis Ritchie's of the world.
>>>>
>>>> I'm paranoid enough that I check the return of malloc and try to log the 
>>>> problem even though I'm probably screwed at that point. It has pointed out 
>>>> errors for calloc if you've manged to come up with a negative size.
>>>>
>>>> I have worked with programmers that assumed nothing bad would ever happen. 
>>>> Sadly, some had years of experience.
>>>
>>> Some years ago, I heard of a bug related to use of malloc.  The
>>> code had _intended_ to dynamically allocate storage for a string
>>> and the terminating null byte.  It was _intended_ to do this:
>>>
>>>         dest = malloc(strlen(src)+1);
>>>
>>> Instead, a paren was misplaced:
>>>
>>>         dest = malloc(strlen(src))+1;
>>>
>>> IIUC, the next line copied the src string into the newly-
>>> allocated destination.
>>
>> Aren't you supposed to multiply by sizeof as well?
>
> Multiply by sizeof what?  sizeof(char)?  This was in the
> pre-Unicode days.  Even now with Unicode, IIUC sizeof(char) is
> still always 1.

I still multiply by sizeof(char), half because of habit and half to make
it clear to myself I'm making a char array, even if its "redundant". I
kinda thought that was the "cannonical" way to do that, since you could
have a weird edge case with a system defining char as something else?

>>> Those who had worked on that project longer said the bug had been
>>> latent in the code for several years, most likely with alignment
>>> padding masking the bug from being discovered.  Curiously, the
>>> bug made itself manifest immediately upon changing from a 32-bit
>>> build environment to a 64-bit build environment.
>>
>>
>> I'm more surprised it didn't segfault. Any idea what caused it to not?
>> I know strlen doesn't account for the terminating character, but it
>> seems like it should've been TWO bytes shorter...
>
> IIUC, heap-based malloc _usually_ returns a larger allocation
> block than you really asked for.  As long as malloc gave you at
> least 2 extra bytes, you'd never see any misbehavior.  Even if it
> didn't give you 2 or more extra bytes, it's fairly likely you'd
> just get lucky and never see the program crash or otherwise
> misbehavior in a significant way.  For example, if you stomped on
> the header of the next allocation block, as long as nothing ever
> read and acted upon the data in said header, you'd never see it.


Oh, so it was some poorly written code being covered up by a weird quirk
in the 32b version of the compiler? Always interesting hearing about
"accidentilly working" programs.
-- 
user <candycane> is generated from /dev/urandom

Back to comp.os.linux.misc | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

VMS c186282 <c186282@nnada.net> - 2025-06-14 01:15 -0400
  Re: VMS Bobbie Sellers <bliss-sf4ever@dslextreme.com> - 2025-06-14 10:05 -0700
    Re: VMS Andreas Eder <a_eder_muc@web.de> - 2025-06-14 20:30 +0200
      Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-14 23:27 +0000
        Re: VMS rbowman <bowman@montana.com> - 2025-06-15 00:57 +0000
          Re: VMS c186282 <c186282@nnada.net> - 2025-06-14 23:32 -0400
            Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-15 08:26 +0100
              Re: VMS c186282 <c186282@nnada.net> - 2025-06-15 21:12 -0400
                Re: VMS Charlie Gibbs <cgibbs@kltpzyxm.invalid> - 2025-06-16 18:15 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-17 23:20 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-18 04:14 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-18 02:34 -0400
            Re: VMS rbowman <bowman@montana.com> - 2025-06-15 18:49 +0000
              Re: VMS c186282 <c186282@nnada.net> - 2025-06-15 22:45 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-16 04:35 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-16 01:35 -0400
        Re: VMS c186282 <c186282@nnada.net> - 2025-06-14 23:03 -0400
          Re: VMS candycanearter07 <candycanearter07@candycanearter07.nomail.afraid> - 2025-06-18 05:30 +0000
            Re: VMS c186282 <c186282@nnada.net> - 2025-06-18 02:09 -0400
              Re: VMS candycanearter07 <candycanearter07@candycanearter07.nomail.afraid> - 2025-06-18 19:00 +0000
                Re: VMS Rich <rich@example.invalid> - 2025-06-18 20:23 +0000
                Re: VMS Charlie Gibbs <cgibbs@kltpzyxm.invalid> - 2025-06-18 20:30 +0000
                Re: VMS rbowman <bowman@montana.com> - 2025-06-18 23:09 +0000
              Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-19 08:40 +0100
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-20 00:43 -0400
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-20 09:00 +0100
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-20 10:19 +0100
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-20 15:15 +0100
                Re: VMS Rich <rich@example.invalid> - 2025-06-20 13:36 +0000
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-20 16:15 +0100
                Re: VMS Rich <rich@example.invalid> - 2025-06-20 23:07 +0000
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-21 01:07 +0100
                Re: VMS rbowman <bowman@montana.com> - 2025-06-21 03:09 +0000
                Re: VMS Robert Riches <spamtrap42@jacob21819.net> - 2025-06-21 03:43 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 01:36 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-21 05:53 +0000
                Re: VMS candycanearter07 <candycanearter07@candycanearter07.nomail.afraid> - 2025-06-22 13:50 +0000
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-22 15:27 +0100
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-22 15:56 +0100
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-23 00:18 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-22 19:23 +0000
                Re: VMS candycanearter07 <candycanearter07@candycanearter07.nomail.afraid> - 2025-06-23 18:10 +0000
                Re: VMS rbowman <bowman@montana.com> - 2025-06-23 19:27 +0000
                Re: VMS Robert Riches <spamtrap42@jacob21819.net> - 2025-06-24 03:34 +0000
                Re: VMS Charlie Gibbs <cgibbs@kltpzyxm.invalid> - 2025-06-24 04:52 +0000
                Re: VMS rbowman <bowman@montana.com> - 2025-06-24 05:14 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-24 01:36 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-24 06:49 +0000
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-24 10:31 +0100
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-25 01:36 -0400
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-25 07:31 +0100
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-25 03:08 -0400
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-24 08:56 +0100
                Re: VMS Robert Riches <spamtrap42@jacob21819.net> - 2025-06-25 03:01 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-25 01:59 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-25 06:52 +0000
                Re: VMS John Ames <commodorejohn@gmail.com> - 2025-06-25 09:32 -0700
                Re: VMS John Ames <commodorejohn@gmail.com> - 2025-06-25 09:44 -0700
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-25 19:01 -0400
                Re: VMS candycanearter07 <candycanearter07@candycanearter07.nomail.afraid> - 2025-06-27 06:00 +0000
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-27 08:37 +0100
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-27 08:45 +0100
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-27 08:14 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-27 13:27 -0400
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-27 19:13 +0100
                Re: VMS Chris Ahlstrom <OFeem1987@teleworm.us> - 2025-06-28 09:16 -0400
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-27 13:24 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-27 17:40 +0000
                Re: VMS Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2025-06-27 18:20 +0000
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-27 23:03 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-28 01:13 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-28 06:10 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-27 18:16 -0400
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-28 08:52 +0100
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-28 23:16 -0400
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-29 08:18 +0100
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-29 19:09 -0400
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-30 08:36 +0100
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-30 08:51 +0100
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-30 08:59 +0100
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-30 08:33 +0000
                Re: VMS John Ames <commodorejohn@gmail.com> - 2025-06-30 09:08 -0700
                Re: VMS jayjwa <jayjwa@atr2.ath.cx.invalid> - 2025-06-30 22:18 -0400
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-30 09:00 +0100
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-30 09:24 +0100
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-30 08:34 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-30 23:30 -0400
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-30 23:26 -0400
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-07-01 10:49 +0100
                Re: VMS Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2025-07-01 12:44 +0000
                Re: VMS Charlie Gibbs <cgibbs@kltpzyxm.invalid> - 2025-07-02 01:13 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-07-01 21:46 -0400
                Re: VMS Lew Pitcher <lew.pitcher@digitalfreehold.ca> - 2025-07-02 16:03 +0000
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-30 07:54 +0000
                Re: VMS rbowman <bowman@montana.com> - 2025-06-30 18:10 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-30 23:12 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-07-01 04:02 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-07-01 12:42 -0400
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-30 08:56 +0100
                Re: VMS Rich <rich@example.invalid> - 2025-06-27 19:40 +0000
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-20 21:19 +0100
                Re: VMS Rich <rich@example.invalid> - 2025-06-20 23:17 +0000
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-21 08:42 +0100
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-21 07:02 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 03:23 -0400
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 01:27 -0400
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 01:10 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-21 05:59 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 02:10 -0400
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-20 10:12 +0100
                Re: VMS Rich <rich@example.invalid> - 2025-06-20 13:39 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 01:23 -0400
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-21 06:57 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 03:07 -0400
                Re: VMS Richard Kettlewell <invalid@invalid.invalid> - 2025-06-21 08:45 +0100
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-22 02:32 -0400
                Re: VMS Rich <rich@example.invalid> - 2025-06-20 13:30 +0000
                Re: VMS The Natural Philosopher <tnp@invalid.invalid> - 2025-06-20 16:14 +0100
                Re: VMS Lawrence D'Oliveiro <ldo@nz.invalid> - 2025-06-20 08:57 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-21 01:17 -0400
    Re: VMS c186282 <c186282@nnada.net> - 2025-06-14 22:57 -0400
      Re: VMS Rich <rich@example.invalid> - 2025-06-15 14:24 +0000
        Re: VMS c186282 <c186282@nnada.net> - 2025-06-15 22:26 -0400
          Re: VMS rbowman <bowman@montana.com> - 2025-06-16 04:30 +0000
            Re: VMS c186282 <c186282@nnada.net> - 2025-06-16 01:31 -0400
            Re: VMS Rich <rich@example.invalid> - 2025-06-18 17:40 +0000
              Re: VMS rbowman <bowman@montana.com> - 2025-06-18 23:06 +0000
              Re: VMS c186282 <c186282@nnada.net> - 2025-06-18 19:43 -0400
                Re: VMS Rich <rich@example.invalid> - 2025-06-19 01:08 +0000
                Re: VMS c186282 <c186282@nnada.net> - 2025-06-19 00:46 -0400
                Re: VMS rbowman <bowman@montana.com> - 2025-06-19 06:36 +0000

csiph-web