Subject: Re: strlen on a NULL
From: [email-masked] (Guy Gascoigne - Piggford)

14 May 1998 06:09:02 -0700
Message-ID: <[email-masked]>
References: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
To: [email-masked] (Carsten Roedel K8/DIC2 Tel. 4276)
Cc: [email-masked]

At 08:14 AM 5/13/98 +0200, you wrote:
>I discovered the same behaviour, on most UNIX systems you'll receive a 
>Signal (Bus Error e.g.). Better check all vectors before doing something
>with them, like 'strlen'. By the way, in 'free' it's getting worse,
>because you must also check not for pointing to a 'Zero', this causes a
crash. 

void * p = 0;
free(p);

This is completely valid (though somewhat contrived), and defined to be
safe by the ANSI C standard.  However all of the mem... and str... require
valid, readable (and for many functions, writable) pointers. On NT and a
fair number of Unixs 0 is not readable or writable.

Guy

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".