OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
Re: [Patch:] restore the native use of isdigit() instead of ap_isdigit() in httpd.

From: Daniel Boulet (dannysavrola.com)
Date: Thu Mar 30 2006 - 17:57:45 CST


I resisted the temptation to add "Blech!" to the end of my last note.

Sigh.

-Danny

P.S. Sorry to pollute this thread with this language-lawyer
nonsense. I'm done now. Please carry on with the "regularly
scheduled programming".

On 30-Mar-2006, at 4:47 PM, Theo de Raadt wrote:

>>> Hmmm. The isdigit man page from the Single Unix Specification on
>>> the
>>> Open Groups' web site (www.unix.org) declares isdigit as follows:
>>>
>>> #include <ctype.h>
>>>
>>> int isdigit(int c);
>>>
>>> This documentation for the isdigit interface would appear to allow
>>> the parameter to be a char since chars can certainly be cast to ints
>>> without any loss of information.
>>
>> Please read the *full* description, especially the following:
>> The c argument is an int, the value of which the application
>> shall
>> ensure is a character representable as an unsigned char or
>> equal to
>> the value of the macro EOF. If the argument has any other
>> value, the
>> behavior is undefined.
>
> And if you are not angry by the time you read to the end of this, then
> you don't understand the full consequences of the horrid place we have
> ended up in.