|
|
Message-ID: <20150320020645.GA650@openwall.com>
Date: Fri, 20 Mar 2015 05:06:45 +0300
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: Re: [GSoC] building JtR for MIC
On Fri, Mar 20, 2015 at 08:28:38AM +0800, Lei Zhang wrote:
> icc -mmic -DAC_BUILT -no-opt-prefetch -c -g -O2 -DARCH_LITTLE_ENDIAN=1 -D_GNU_SOURCE -fopenmp -pthread -I/home/zhanglei/mic/include jumbo.c -o jumbo.o
> In file included from jumbo.c(14):
> jumbo.h(80): warning #1224: #warning directive: Using 32-bit fseek(). Files larger than 2GB will be handled unreliably
> # warning Using 32-bit fseek(). Files larger than 2GB will be handled unreliably
> ^
>
> In file included from jumbo.c(14):
> jumbo.h(122): warning #1224: #warning directive: Using 32-bit ftell(). Files larger than 2GB will be handled unreliably
> # warning Using 32-bit ftell(). Files larger than 2GB will be handled unreliably
> ^
It's weird that/if they don't use 64-bit versions of these by default
since the target platform is 64-bit. I guess we should build with
"-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE" if so.
Or is this possibly a side-effect of -D_GNU_SOURCE? Do these warnings
appear without -D_GNU_SOURCE?
> In file included from jumbo.h(29),
> from os-autoconf.h(29),
> from os.h(20),
> from memdbg.h(20),
> from jumbo.c(27):
> /usr/linux-k1om-4.7/linux-k1om/usr/include/string.h(459): error: expected a type specifier
> extern void bzero (void *__s, size_t __n) __THROW __nonnull ((1));
> ^
We have our own bzero() as a macro in jumbo.h. We should get rid of it,
and of all uses of bzero() in jumbo if there are any (I think not).
> jumbo.c(257): warning #147: declaration is incompatible with "int strcasecmp(const char *, const char *)" (declared at line 225 of "jumbo.h")
> int strcasecmp(char *dst, char *src) {
> ^
>
>
> jumbo.c(265): error: expected an expression
> return return(f - l);
> ^
>
>
> jumbo.c(270): warning #147: declaration is incompatible with "int strncasecmp(const char *, const char *, size_t={unsigned long})" (declared at line 246 of "jumbo.h")
> int strncasecmp(char *dst, char *src, size_t count) {
> ^
strcasecmp() in jumbo.c is obviously buggy (won't compile, so probably
never tested - we should fix and test it), and besides it shouldn't be
enabled for this build. Please investigate what caused it to be enabled.
Thanks!
Alexander
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.