There is a Metrowerks compiler for NetWare. It is actually a
cross-compiler that runs on a Win32 platform and then uses a different
linker to create the libraries. As near as I know, "__NETWARE__" is not
defined when compiling. Hence, we use the "OPENSSL_SYSNAME_NETWARE" that
has been set up for use with OpenSSL in general.

I hope this answers the question.

Verdon Walker
(801) 861-2633
[EMAIL PROTECTED]
Novell, Inc., the leading provider of information solutions
http://www.novell.com 


>>> Andy Polyakov <[EMAIL PROTECTED]> 3/12/2004 4:49:47 PM >>>
crypto/md32_common.h currently reads:

# if 0 /* defined(_MSC_VER) */
#  define ROTATE(a,n)   _lrotl(a,n)
# elif defined(__MWERKS__)
#  if defined(__POWERPC__)
#   define ROTATE(a,n)  __rlwinm(a,n,0,31)
#  elif defined(OPENSSL_SYSNAME_NETWARE)
#   define ROTATE(a,n)  _lrotl(a,n)
...

First #if was zapped with "_lrotl() is a call to the C runtime
library!
By ulf." comment. Well, _lrotl is a call only as long as optimization
for speed is off. As we compile with /Ox, _lrotl is treated as
intrinsic
and *is* compiled as inline instruction.

As for OPENSSL_SYSNAME_NETWARE in __MWERKS__ context. I didn't know
that
there is/was Metrowerks compiler for Netware... But in either case
current Metrowerks documentation doesn't mention _lrotl, but __rol on
Intel platform(s). Then if you google for "+_lrotl +metrowerks," you
find a statement that Metrowerks defines _MSC_VER, but not _lrotl.
Note
that current Metrowerks documentation doesn't mention _MSC_VER macro
either. So I'm lost... Also note that other #if-s in __MWERKS__
section
rely on compiler predefines, which is preferred. Is there a
Netware-specific predefine?

Where am I heading? If __NETWARE__ was Netware-specific prefefine,
wouldn't following be more appropriate:

#if defined(__MWERKS__)
# if defined(__NETWARE__)
#  define ROTATE(a,n) _lrotl(a,n)
# elif
#  ...
# endif
#elif defined(_MSC_VER)
# define ROTATE(a,n) _lrotl(a,n)
...

A.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to