I've prepared a new bug-fix release of Nettle, a low-level
cryptographics library, to fix bugs in the RSA decryption functions. The
bugs cause crashes on certain invalid inputs, which could be used
for denial of service attacks on applications using these functions.
More details in NEWS file below.
Upgrading is strongly recommended.
The Nettle home page can be found at
https://www.lysator.liu.se/~nisse/nettle/, and the manual at
https://www.lysator.liu.se/~nisse/nettle/nettle.html.
The …
[View More]release can be downloaded from
https://ftp.gnu.org/gnu/nettle/nettle-3.7.3.tar.gzftp://ftp.gnu.org/gnu/nettle/nettle-3.7.3.tar.gzhttps://www.lysator.liu.se/~nisse/archive/nettle-3.7.3.tar.gz
Regards,
/Niels
NEWS for the Nettle 3.7.3 release
This is bugfix release, fixing bugs that could make the RSA
decryption functions crash on invalid inputs.
Upgrading to the new version is strongly recommended. For
applications that want to support older versions of Nettle,
the bug can be worked around by adding a check that the RSA
ciphertext is in the range 0 < ciphertext < n, before
attempting to decrypt it.
Thanks to Paul Schaub and Justus Winter for reporting these
problems.
The new version is intended to be fully source and binary
compatible with Nettle-3.6. The shared library names are
libnettle.so.8.4 and libhogweed.so.6.4, with sonames
libnettle.so.8 and libhogweed.so.6.
Bug fixes:
* Fix crash for zero input to rsa_sec_decrypt and
rsa_decrypt_tr. Potential denial of service vector.
* Ensure that all of rsa_decrypt_tr and rsa_sec_decrypt return
failure for out of range inputs, instead of either crashing,
or silently reducing input modulo n. Potential denial of
service vector.
* Ensure that rsa_decrypt returns failure for out of range
inputs, instead of silently reducing input modulo n.
* Ensure that rsa_sec_decrypt returns failure if the message
size is too large for the given key. Unlike the other bugs,
this would typically be triggered by invalid local
configuration, rather than by processing untrusted remote
data.
--
Niels Möller. PGP-encrypted email is preferred. Keyid 368C6677.
Internet email is subject to wholesale government surveillance.
[View Less]
Hi!
This series introduces a mechanism to support arch specific, combined AES+GCM
{en,de}cryption functions. These functions are stubbed by default and will
fall-back to the separate hash and crypt functions if no arch override exists.
The arch override can be provided either at build time via appropriate config
options or using the FAT runtime mechanism.
An implementation combining AES+GCM _can potentially_ yield significant
performance boosts by allowing for increased instruction …
[View More]parallelism, avoiding
C-function call overhead, more flexibility in assembly fine-tuning, etc. This
series provides such an implementation based on the existing optimized Nettle
routines for POWER9 and later processors. Benchmark results on a POWER9
Blackbird running at 3.5GHz are given at the end of this mail. Both builds were
configured statically ie. not FAT. FAT performance is slightly lower for both
but shows similar gains with this series. The OpenSSL build is based on latest
OpenSSL master with all PowerPC optimizations enabled.
Note that the gains on an early POWER10 system are even more impressive but
unfortunately I cannot share those results publically yet :(
AES+GCM combined (this series)
------------------------------
Algorithm mode Mbyte/s
gcm_aes128 encrypt 2567.62
gcm_aes128 decrypt 2582.32
gcm_aes128 update 7724.15
gcm_aes192 encrypt 2279.39
gcm_aes192 decrypt 2293.20
gcm_aes192 update 7724.41
gcm_aes256 encrypt 2054.09
gcm_aes256 decrypt 2061.25
gcm_aes256 update 7724.04
openssl gcm_aes128 encrypt 2336.93
openssl gcm_aes128 decrypt 2337.95
openssl gcm_aes128 update 6248.22
openssl gcm_aes192 encrypt 2113.93
openssl gcm_aes192 decrypt 2114.93
openssl gcm_aes192 update 6210.65
openssl gcm_aes256 encrypt 1936.95
openssl gcm_aes256 decrypt 1935.88
openssl gcm_aes256 update 6208.72
AES,GCM separate (nettle master)
--------------------------------
Algorithm mode Mbyte/s
gcm_aes128 encrypt 1418.66
gcm_aes128 decrypt 1418.97
gcm_aes128 update 7766.31
gcm_aes192 encrypt 1314.03
gcm_aes192 decrypt 1313.17
gcm_aes192 update 7760.23
gcm_aes256 encrypt 1218.75
gcm_aes256 decrypt 1218.64
gcm_aes256 update 7760.52
openssl gcm_aes128 encrypt 2324.70
openssl gcm_aes128 decrypt 2317.19
openssl gcm_aes128 update 6152.77
openssl gcm_aes192 encrypt 2102.99
openssl gcm_aes192 decrypt 2098.98
openssl gcm_aes192 update 6175.62
openssl gcm_aes256 encrypt 1925.85
openssl gcm_aes256 decrypt 1922.49
openssl gcm_aes256 update 6204.55
Christopher M. Riedl (6):
gcm: Introduce gcm_aes_{de,en}crypt()
ppc: Fix variable name for --enable-power-altivec
ppc: Add FAT feature and config option for ISA 3.0
ppc: Add gcm_aes_encrypt() asm for ISA 3.0 (P9)
ppc: Add gcm_aes_decrypt() asm for ISA 3.0 (P9)
ppc: Enable gcm_aes_{de,en}crypt() FAT
configure.ac | 19 +-
fat-ppc.c | 45 ++
fat-setup.h | 6 +
gcm-internal.h | 14 +
gcm.c | 151 ++++++-
powerpc64/fat/gcm-aes-decrypt.asm | 37 ++
powerpc64/fat/gcm-aes-encrypt.asm | 37 ++
powerpc64/p9/gcm-aes-decrypt.asm | 663 +++++++++++++++++++++++++++++
powerpc64/p9/gcm-aes-encrypt.asm | 666 ++++++++++++++++++++++++++++++
9 files changed, 1630 insertions(+), 8 deletions(-)
create mode 100644 powerpc64/fat/gcm-aes-decrypt.asm
create mode 100644 powerpc64/fat/gcm-aes-encrypt.asm
create mode 100644 powerpc64/p9/gcm-aes-decrypt.asm
create mode 100644 powerpc64/p9/gcm-aes-encrypt.asm
--
2.26.1
[View Less]
Hello,
I've added a merge request to implement AES key wrap and unwrap in
Nettle [1].
The MR is not complete, because the tests haven't been pushed yet and
the documentation is missing, but if the new functionality is welcome to
Nettle, I'd rather have some feedback on the code first, to make sure it
respects the project guidelines.
I can add tests based on the tests vectors in the RFC [2], but I'm not
sure how the test suites are build, should I need to create test_wrap
functions like …
[View More]in aes-test.c or something else?
Thanks in advance for your help!
/Nicolas
[1] https://tools.ietf.org/html/rfc3394
[2] https://tools.ietf.org/html/rfc3394#section-4
[View Less]
Hi, Niels
Did you get the credentials of the new VM? I'm thinking after adding the
address and ssh key of new VM, we can't get the optimized cores of AES
tested since enable-msa isn't triggered. We need to push some sort of
hard-coded option in configure.ac to get it tested in the VM during ci job.
regards,
Mamone
On Mon, May 10, 2021 at 6:13 PM Niels Möller <nisse(a)lysator.liu.se> wrote:
> David Edelsohn <dje.gcc(a)gmail.com> writes:
>
> > They are going to create …
[View More]a new VM on a separate Open Source Software
> > Cloud for long-term projects. They will contact you directly with the
> > credentials.
>
> Sounds good. Thanks for the update.
>
> Regards,
> /Niels
>
> --
> Niels Möller. PGP-encrypted email is preferred. Keyid 368C6677.
> Internet email is subject to wholesale government surveillance.
>
[View Less]
I made a new merge request to s390x branch Add AES API for CBC mode (!24) ·
Merge requests · Nettle / nettle · GitLab (liu.se)
<https://git.lysator.liu.se/nettle/nettle/-/merge_requests/24>
This api is required to handle the optimized CBC cores which will be added
later.
regards,
Mamone
Hi Everyone,
I bumped to Nettle 3.7. The build is resulting in:
gcc -I. -I/export/home/jwalton/tmp/ok2delete/include -DNDEBUG
-DHAVE_CONFIG_H -g2 -O2 -m64 -march=native -fPIC -pthread -ggdb3 -Wall
-W -Wno-sign-compare -Wmissing-prototypes -Wmissing-declarations
-Wstrict-prototypes -Wpointer-arith -Wbad-function-cast
-Wnested-externs -fPIC -MT sha256-compress-2.o -MD -MP -MF
sha256-compress-2.o.d -c sha256-compress-2.s
gcc -I. -I/export/home/jwalton/tmp/ok2delete/include -DNDEBUG
-…
[View More]DHAVE_CONFIG_H -g2 -O2 -m64 -march=native -fPIC -pthread -ggdb3 -Wall
-W -Wno-sign-compare -Wmissing-prototypes -Wmissing-declarations
-Wstrict-prototypes -Wpointer-arith -Wbad-function-cast
-Wnested-externs -fPIC -MT sexp.o -MD -MP -MF sexp.o.d -c sexp.c \
&& true
sha256-compress-2.ssha1-compress-2.s: Assembler messages:
sha1-compress-2.s:73: Error: : no such instruction: `sha1rnds4
$0,%xmm5,%xmm4'Assembler messages:
sha256-compress-2.s:87
: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha1-compress-2.s:78sha256-compress-2.s: Error: no such instruction:
`sha1nexte %xmm1,%xmm6':89
: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'sha1-compress-2.s:80
: Error: no such instruction: `sha1rnds4 $0,%xmm6,%xmm4'
sha256-compress-2.ssha1-compress-2.s:96:81: Error: : Error: no such
instruction: `sha1msg1 %xmm1,%xmm0'no such instruction: `sha256rnds2
%xmm5,%xmm6'
sha1-compress-2.s:86sha256-compress-2.s: Error: :98no such
instruction: `sha1nexte %xmm2,%xmm5'
: Error: sha1-compress-2.s:88: no such instruction: `sha256rnds2
%xmm6,%xmm5'Error:
sha256-compress-2.sno such instruction: `sha1rnds4 $0,%xmm5,%xmm4':99
: Error: sha1-compress-2.sno such instruction: `sha256msg1 %xmm2,%xmm1'
:89: Error: no such instruction: `sha1msg1 %xmm2,%xmm1'
sha256-compress-2.s:106: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha1-compress-2.s:96sha256-compress-2.s: Error: no such instruction:
`sha1nexte %xmm3,%xmm6'
:108sha1-compress-2.s:98: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5':
Error: no such instruction: `sha1msg2 %xmm3,%xmm0'
sha256-compress-2.ssha1-compress-2.s:109:99: : Error: Error: no such
instruction: `sha1rnds4 $0,%xmm6,%xmm4'no such instruction:
`sha256msg1 %xmm3,%xmm2'
sha256-compress-2.s:117: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:119: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha256-compress-2.s:123: Error: no such instruction: `sha256msg2 %xmm4,%xmm1'
sha256-compress-2.s:124: sha1-compress-2.sError: no such instruction:
`sha256msg1 %xmm4,%xmm3'
:100: Error: sha256-compress-2.sno such instruction: `sha1msg1 %xmm3,%xmm2'
:129: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha1-compress-2.s:104: Error: no such instruction: `sha1nexte
%xmm0,%xmm5'sha256-compress-2.s:131: Error:
no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha1-compress-2.s:106sha256-compress-2.s: :135: Error: Error: no such
instruction: `sha1msg2 %xmm0,%xmm1'no such instruction: `sha256msg2
%xmm1,%xmm2'
sha256-compress-2.ssha1-compress-2.s:107:136: : Error: no such
instruction: `sha256msg1 %xmm1,%xmm4'
Error: no such instruction: `sha1rnds4 $0,%xmm5,%xmm4'sha256-compress-2.s
:141: sha1-compress-2.sError: no such instruction: `sha256rnds2 %xmm5,%xmm6'
:108: sha256-compress-2.sError: no such instruction: `sha1msg1 %xmm0,%xmm3':143:
Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha1-compress-2.s:113: Error: sha256-compress-2.s:147: Error: no such
instruction: `sha1nexte %xmm1,%xmm6'no such instruction: `sha256msg2
%xmm2,%xmm3'
sha256-compress-2.ssha1-compress-2.s:148:115: Error: : no such
instruction: `sha256msg1 %xmm2,%xmm1'
Error: sha256-compress-2.sno such instruction: `sha1msg2 %xmm1,%xmm2':153:
Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.ssha1-compress-2.s:155: Error: :116: no such
instruction: `sha256rnds2 %xmm6,%xmm5'
Error: no such instruction: `sha1rnds4 $1,%xmm6,%xmm4'
sha1-compress-2.s:117: Error: sha256-compress-2.sno such instruction:
`sha1msg1 %xmm1,%xmm0':159: Error:
no such instruction: `sha256msg2 %xmm3,%xmm4'
sha256-compress-2.s:160sha1-compress-2.s: Error: no such instruction:
`sha256msg1 %xmm3,%xmm2'
:121: Error: no such instruction: `sha1nexte %xmm2,%xmm5'sha256-compress-2.s
:165: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha1-compress-2.ssha256-compress-2.s:123: Error: no such instruction:
`sha1msg2 %xmm2,%xmm3'
sha1-compress-2.s:167: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5':124
: Error: no such instruction: `sha1rnds4 $1,%xmm5,%xmm4'
sha256-compress-2.ssha1-compress-2.s:125:171: : Error: no such
instruction: `sha256msg2 %xmm4,%xmm1'Error: no such instruction:
`sha1msg1 %xmm2,%xmm1'
sha256-compress-2.s:172: Error: sha1-compress-2.s:129no such
instruction: `sha256msg1 %xmm4,%xmm3'
: Error: no such instruction: `sha1nexte %xmm3,%xmm6'sha256-compress-2.s
:177: sha1-compress-2.sError: no such instruction: `sha256rnds2 %xmm5,%xmm6'
:131: Error: sha256-compress-2.sno such instruction: `sha1msg2 %xmm3,%xmm0':179
: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'sha1-compress-2.s
:132: Error: no such instruction: `sha1rnds4 $1,%xmm6,%xmm4'
sha256-compress-2.s:183: Error: sha1-compress-2.s:133no such
instruction: `sha256msg2 %xmm1,%xmm2'
: sha256-compress-2.sError: :184no such instruction: `sha1msg1 %xmm3,%xmm2'
: Error: no such instruction: `sha256msg1 %xmm1,%xmm4'
sha1-compress-2.s:137: Error: no such instruction: `sha1nexte %xmm0,%xmm5'
sha1-compress-2.s:139: sha256-compress-2.sError: no such instruction:
`sha1msg2 %xmm0,%xmm1':189:
Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha1-compress-2.s:140sha256-compress-2.s:191: : Error: no such
instruction: `sha256rnds2 %xmm6,%xmm5'Error: no such instruction:
`sha1rnds4 $1,%xmm5,%xmm4'
sha1-compress-2.ssha256-compress-2.s:141: :195: Error: Error: no such
instruction: `sha1msg1 %xmm0,%xmm3'no such instruction: `sha256msg2
%xmm2,%xmm3'
sha256-compress-2.s:196sha1-compress-2.s:145: : Error: no such
instruction: `sha256msg1 %xmm2,%xmm1'
Error: no such instruction: `sha1nexte %xmm1,%xmm6'
sha256-compress-2.s:201: Error: no such instruction: `sha256rnds2
%xmm5,%xmm6'sha1-compress-2.s:147
: Error: sha256-compress-2.s:203: Error: no such instruction:
`sha1msg2 %xmm1,%xmm2'no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha256-compress-2.ssha1-compress-2.s:148:207: : Error: Error: no such
instruction: `sha256msg2 %xmm3,%xmm4'
sha256-compress-2.s:208: Error: no such instruction: `sha256msg1 %xmm3,%xmm2'
sha256-compress-2.s:213: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:215: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha256-compress-2.s:219: Error: no such instruction: `sha256msg2 %xmm4,%xmm1'
sha256-compress-2.s:220: Error: no such instruction: `sha256msg1 %xmm4,%xmm3'
sha256-compress-2.s:225: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:227: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha256-compress-2.s:231: Error: no such instruction: `sha256msg2 %xmm1,%xmm2'
sha256-compress-2.s:232: Error: no such instruction: `sha256msg1 %xmm1,%xmm4'
sha256-compress-2.s:237: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:239: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha256-compress-2.s:243: Error: no such instruction: `sha256msg2 %xmm2,%xmm3'
sha256-compress-2.s:247: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:249: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha256-compress-2.s:253: Error: no such instruction: `sha256msg2 %xmm3,%xmm4'
sha256-compress-2.s:257: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:259: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
no such instruction: `sha1rnds4 $1,%xmm6,%xmm4'
sha1-compress-2.s:149: Error: no such instruction: `sha1msg1 %xmm1,%xmm0'
sha1-compress-2.s:154: Error: no such instruction: `sha1nexte %xmm2,%xmm5'
sha1-compress-2.s:156: Error: no such instruction: `sha1msg2 %xmm2,%xmm3'
sha1-compress-2.s:157: Error: no such instruction: `sha1rnds4 $2,%xmm5,%xmm4'
sha1-compress-2.s:158: Error: no such instruction: `sha1msg1 %xmm2,%xmm1'
sha1-compress-2.s:162: Error: no such instruction: `sha1nexte %xmm3,%xmm6'
sha1-compress-2.s:164: Error: no such instruction: `sha1msg2 %xmm3,%xmm0'
sha1-compress-2.s:165: Error: no such instruction: `sha1rnds4 $2,%xmm6,%xmm4'
sha1-compress-2.s:166: Error: no such instruction: `sha1msg1 %xmm3,%xmm2'
sha1-compress-2.s:170: Error: no such instruction: `sha1nexte %xmm0,%xmm5'
sha1-compress-2.s:172: Error: no such instruction: `sha1msg2 %xmm0,%xmm1'
sha1-compress-2.s:173: Error: no such instruction: `sha1rnds4 $2,%xmm5,%xmm4'
sha1-compress-2.s:174: Error: no such instruction: `sha1msg1 %xmm0,%xmm3'
sha1-compress-2.s:178: Error: no such instruction: `sha1nexte %xmm1,%xmm6'
sha1-compress-2.s:180: Error: no such instruction: `sha1msg2 %xmm1,%xmm2'
sha1-compress-2.s:181: Error: no such instruction: `sha1rnds4 $2,%xmm6,%xmm4'
sha1-compress-2.s:182: Error: no such instruction: `sha1msg1 %xmm1,%xmm0'
sha1-compress-2.s:186: Error: no such instruction: `sha1nexte %xmm2,%xmm5'
sha1-compress-2.s:188: Error: no such instruction: `sha1msg2 %xmm2,%xmm3'
sha1-compress-2.s:189: Error: no such instruction: `sha1rnds4 $2,%xmm5,%xmm4'
sha1-compress-2.s:190: Error: no such instruction: `sha1msg1 %xmm2,%xmm1'
sha1-compress-2.s:195: Error: no such instruction: `sha1nexte %xmm3,%xmm6'
sha1-compress-2.s:197: Error: no such instruction: `sha1msg2 %xmm3,%xmm0'
sha1-compress-2.s:198: Error: no such instruction: `sha1rnds4 $3,%xmm6,%xmm4'
sha1-compress-2.s:199: Error: no such instruction: `sha1msg1 %xmm3,%xmm2'
sha1-compress-2.s:203: Error: no such instruction: `sha1nexte %xmm0,%xmm5'
sha1-compress-2.s:205: Error: no such instruction: `sha1msg2 %xmm0,%xmm1'
sha1-compress-2.s:206: Error: no such instruction: `sha1rnds4 $3,%xmm5,%xmm4'
sha1-compress-2.s:207: Error: no such instruction: `sha1msg1 %xmm0,%xmm3'
sha1-compress-2.s:211: Error: no such instruction: `sha1nexte %xmm1,%xmm6'
sha1-compress-2.s:213: Error: no such instruction: `sha1msg2 %xmm1,%xmm2'
sha1-compress-2.s:214: Error: no such instruction: `sha1rnds4 $3,%xmm6,%xmm4'
sha1-compress-2.s:217: Error: no such instruction: `sha1nexte %xmm2,%xmm5'
sha1-compress-2.s:219: Error: no such instruction: `sha1msg2 %xmm2,%xmm3'
sha1-compress-2.s:220: Error: no such instruction: `sha1rnds4 $3,%xmm5,%xmm4'
sha1-compress-2.s:222: Error: no such instruction: `sha1nexte %xmm3,%xmm6'
sha1-compress-2.s:224: Error: no such instruction: `sha1rnds4 $3,%xmm6,%xmm4'
sha1-compress-2.s:226: Error: no such instruction: `sha1nexte %xmm8,%xmm5'
gmake[1]: *** [sha1-compress-2.o] Error 1
gmake[1]: *** Waiting for unfinished jobs....
Jeff
[View Less]
Hi Everyone,
Here's the result of building Nettle 3.7.2 on Solaris 11.3, i86pc:
/bin/gcc -I. -I/opt/ssh/include -DNDEBUG -DHAVE_CONFIG_H -g2 -O2 -m64
-march=native -fPIC -pthread -ggdb3 -Wall -W -Wno-sign-compare
-Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes
-Wpointer-arith -Wbad-function-cast -Wnested-externs -fPIC -MT
sexp-format.o -MD -MP -MF sexp-format.o.d -c sexp-format.c \
&& true
sha256-compress-2.s: Assembler messages:
sha256-compress-2.s:87: Error: no such …
[View More]instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:89: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
sha256-compress-2.s:96: Error: no such instruction: `sha256rnds2 %xmm5,%xmm6'
sha256-compress-2.s:98: Error: no such instruction: `sha256rnds2 %xmm6,%xmm5'
--enable-aes, --enable-sha, --enable-fat were _not_ provided to configure.
Attached is config.log.
Jeff
[View Less]
This is building Nettle 3.7.2 on a PowerMac with OS X 10.5:
/usr/bin/cc -I. -I/usr/local/include -DNDEBUG -DHAVE_CONFIG_H -g2 -O2
-mlong-double-64 -fno-common -maltivec -fPIC -pthread -ggdb3
-Wno-pointer-sign -Wall -W -Wmissing-prototypes
-Wmissing-declarations -Wstrict-prototypes -Wpointer-arith
-Wbad-function-cast -Wnested-externs -fPIC -MT xts-aes128.o -MD -MP
-MF xts-aes128.o.d -c xts-aes128.c \
&& true
xts.c: In function ‘xts_shift’:
xts.c:59: warning: integer constant …
[View More]is too large for ‘long’ type
xts.c:59: warning: integer constant is too large for ‘long’ type
xts.c:60: warning: integer constant is too large for ‘long’ type
xts.c:60: warning: integer constant is too large for ‘long’ type
xts.c:60: warning: integer constant is too large for ‘long’ type
On OS X 10.5, you have to use unsigned long long and the ull suffix.
Maybe you should add a configure test to see whether you need the ull suffix.
Jeff
[View Less]