Comments (13)
I have been able to reproduce this. Generally, failed tests seem to be a build system problem; compiling them manually and running them seems to work fine (i.e., they pass). I haven't figured out yet what exactly in the build system makes the binaries fail.
I have also been able to reproduce the crypto_secretbox crash. This is due to the inclusion of the amd64_xmm6 optimized Salsa20 assembly implementation, which assumes the usual AMD64 ABI. On Windows the parameter transfer registers are not the same, and thus the crash. You can get around this by passing --disable-asm to configure script.
from libsodium.
Passing --disable-asm to the configure script did work for me. Thank you very much!
Going to leave this issue open since I'm assuming the intent is for this to work out-of-the-box. I would love to contribute but I'm afraid this is not my area of expertise.
from libsodium.
Hello,
I'm going to take a look. Glad that --disable-asm
works around it, but yes, the intent is that it should work out of the box.
Thanks again for reporting this!
from libsodium.
I tried this using the MinGW toolchain from cygwin's installer and for me, it hangs at
CCAS crypto_stream/salsa20/amd64_xmm6/stream_salsa20_amd64_xmm6.lo
CCLD libsodium.la
from libsodium.
Hi Neheb
Was that with mingw64, too?
Use ./configure --disable-asm
for now. I'll see how to work around this.
from libsodium.
It was mingw64 indeed. On further inspection, this looks like a separate issue. For me, the CCLD line is hanging for some reason. Even if I add --disable-asm, it hangs. My full configure line is "./configure --host=x86_64-w64-mingw32 --build=x86_64-w64-mingw32 --disable-asm". I also use make without -j#.
Note that regular cygwin compiles that use cygwin1.dll work fine.
from libsodium.
Looks like --disable-pie
is required when using the latest mingw-builds. Not with other mingw64 distributions. What a mess...
from libsodium.
You might also want to disable asm for cygwin64 as well. make check output:
../../test-driver: line 95: 6000 Segmentation fault (core dumped) "$@" > $log_file 2>&1
FAIL: box7.exe
../../test-driver: line 95: 2468 Segmentation fault (core dumped) "$@" > $log_file 2>&1
FAIL: box8.exe
it also hangs on secretbox2.
from libsodium.
What is host_os
for cygwin64? cygwin64
?
from libsodium.
that should be it.
edit: hmmm nevermind?
$ grep host_os < Makefile
host_os = cygwin
after ./configure
from libsodium.
Can you check in config.log
? config.guess
doesn't seem to mention it. Checking host
is probably safer, though.
from libsodium.
host='x86_64-unknown-cygwin'
host_alias=''
host_cpu='x86_64'
host_os='cygwin'
host_vendor='unknown'
from libsodium.
Thanks!
38d0a4d should do the trick.
from libsodium.
Related Issues (20)
- [Some error I got when I am implementing commitment scheme based on lib sodium] HOT 1
- AEGIS-[128,256]X HOT 2
- Cross platform decrypting
- strict-aliasing violation in blkxor pwhash_scryptsalsa208sha256_nosse.c HOT 1
- Test failing during pip install as a dependency of pynacl==1.5.0 on arm64/apple m1 image building HOT 1
- macOS randombytes_buf infinite loop HOT 14
- Chacha/box tests segfault when compiling with LLVM Polly HOT 1
- support for veilid crypto HOT 4
- aarch64 build fails after updating from 1.0.18 to 1.0.19 HOT 2
- android-ndk-r26-rc1 build error for stable HOT 6
- Why soname change from 23 to 26 HOT 1
- [UB] memcpy could be called on null dst pointer in function escrypt_r HOT 2
- Shouldn't crypto_pwdhash_PRIMITIVE be 'argon2id' ? HOT 1
- LATEST.tar.gz.sig is missing HOT 1
- Request to add amalgamation build HOT 2
- Compilation issues
- Build tries to use AVX on i386 when no support for them available HOT 9
- 64 bytes for the hash in `crypto_box_curve25519xsalsa20poly1305_seed_keypair(..)`? HOT 1
- Sodium.Core Nuget package version 1.3.4 is not getting installed in .Net 4.8 project HOT 1
- Support for Windows Arm64
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from libsodium.