Ethereal-dev: RE: [ethereal-dev] New release of tcpdump / lipbpcap for Win32

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: "Farley, Tim (ISSAtlanta)" <TFarley@xxxxxxx>
Date: Mon, 3 Apr 2000 13:46:59 -0400
>	the standard Ethereal link causes complaints about "__tolower",
>	or something such as that, being redefined;
>
>	if I put in "/NODEFAULTLIB:libc", as I infer the linker is
>	suggesting I should do, I instead get complaints about "_errno"
>	not being defined.

Is it possible you are referencing errno in a module, without including
<errno.h> or <stdlib.h> in that module?  That would cause the symptoms you
are describing.  I have the 0.8.4 release here on my disk, and I couldn't
locate an instance of this, but naturally you've got changes I don't.

It *is* possible to build correct multi-threaded programs in Microsoft C
which use errno, but you have to be aware that errno will be a preprocessor
macro that calls a function in these programs.

You also need to set the switches that tell the compiler your program is
multi-threaded.  It doesn't matter that you actually don't spawn any
threads, but it causes it to compile and link with some settings that will
bring in the right libraries and such.  (You incur a bit of overhead on
certain things, but generally it doesn't affect you too much).

=====================================
Tim Farley
Software Engineer
tfarley@xxxxxxx

Internet Security Systems, Inc.
(678) 443-6000 / Direct Dial (678) 443-6189 / fax (678) 443-6479
http://www.iss.net
=====================================