-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"scons --sanitize=address clang" fails #1668
Comments
Works until the linker step, then there's another error: This is normal, since clang does NOT need to be told to link libasan, it just needs the -fsanitize=address switch. Also SConstruct tries to link this library statically(!?). |
ge25519_scalarmult_base_choose_niels leads to errors (XRPLF#1668) when compiled with address sanitizer.
Is this still a problem? |
This is no longer an issue. |
I'll verify with the build-all script, but I hope that it works now. The "-lasan" part is still an issue probably, I'll report back. |
Found a few breaking builds, mostly centered around google/sanitizers#189 and boost 1.58 being available in most current distros. Should fix itself once boost or ASAN get updated downstream. Other issues were ninja builds not generating protobuf headers (I submitted a pull request for that), fedora rawhide seems to have already OpenSSL 1.1 in their repo which apparently breaks their 1.60 boost build currently and they still have to update to a more recent boost version. I can commit my test setup (pull base images of various distros from dockerhub, install rippled build dependencies from upstream and run build_all.sh) if you are interested in this, however I'm not even sure which platforms are currently officially supported (even your RPM gets built using packages from various fedora releases...). |
A workaround is to manually exclude this function via a blacklist from being instrumented (see for example https://gitweb.torproject.org/tor.git/plain/contrib/clang/sanitize_blacklist.txt) e.g. by adding "fun:ge25519_scalarmult_base_choose_niels" to a blacklist file. Alternatively you can add this as a hint in the code too, but this might interfere with further pulls from upstream.
The text was updated successfully, but these errors were encountered: