"Romberg, Kathy" wrote:
> 
> Folks,
> 
> I am in the process building OpenSSL (0.9.6b) on the Tru64 Unix
> (Compaq/Digital Unix) platform and have a few questions for you
> regarding the 64-bit safeness of the product.
> 
> There are two options that I use on the Compaq C compiler when checking
> the code for potential problems. The first option is -warnprotos, to
> catch any missing or incorrectly specified function prototypes.  I found
> a few issues here, mostly void functions that need to have 'void'
> specified in the prototype and have made the appropriate changes. If
> you're interested, I'd be happy to send the files I modified back to
> you.
> 
> The second option is the -msg_enable 64bit.  This option catches things
> like assigning long ints (64 bits) to ints (32 bits). This is where I
> run into the most questions.  There are a lot of places flagged as being
> potential problems.  In some instances there are explicit casts to the
> smaller data type.  In others, there is no cast.  There are also
> instances where the result of a strlen is assigned to an int, rather
> than to a size_t, which on Tru64 is a long int.
> 
> My questions are:
> 1. How safe is it to assume that the explicit casts from longs are
> truely never going to be more than 32 bits?
> 2. How much should I worry about the implicit casts?

Casts, implicit or explicit, are evil. But its difficult to make any
general statement about them. I'd be kinda interested in fixing the
problems since I have a long-term mission to eliminate as many casts as
I can...

Cheers,

Ben.

--
http://www.apache-ssl.org/ben.html

"There is no limit to what a man can do or how far he can go if he
doesn't mind who gets the credit." - Robert Woodruff
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to