[patch] burncd: honour for envar SPEED

Alexander Best alexbestms at wwu.de
Tue Nov 10 16:17:41 UTC 2009


Nate Eldredge schrieb am 2009-11-10:
> On Tue, 10 Nov 2009, Alexander Best wrote:

> >ps: would be nice if strcasecmp could protect itself from segfault
> >with one or
> >both of the args being NULL.

> I disagree.  What do you think it should do instead?  Return 0?  If
> it did, would you have found your bug?

> The same argument could be made for any of the string.h functions,
> but I don't think it actually holds water.  Such checks add
> overhead, and only provide an illusion of safety.  Sure, strcasecmp
> could avoid causing the segfault itself, but at the cost of letting
> a broken program continue and possibly cause more damage.  It could
> call abort(), but then you'd just have the same result (program
> terminates) with a different signal, and doing your check in
> software rather than letting the MMU hardware do it. It could print
> a message, but that pollutes the program's output, and 15 seconds
> debugging the core dump will reveal the problem anyway.

> Having a library function "protect itself" in this manner is not
> actually helpful, IMHO.

> --

> Nate Eldredge
> nate at thatsmathematics.com

you're right. hundreds of functions cause segfaults when arg or args are NULL.
either we add safety checks for all of them (massive overhead) or just leave
them the way they are. also: these functions aren't being used by regular
users, but developers and it's hard finding a developer who isn't experienced
with dealing with NULL pointers. ;) so problems with NULL pointers are usually
fixed very quickly.

alex


More information about the freebsd-hackers mailing list