-
Notifications
You must be signed in to change notification settings - Fork 265
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
Use uClibc to build libressl will get error: uClibc on noMMU doesn't provide __register_atfork() #538
Comments
I found same kind of issue.
https://gitlab.freedesktop.org/ffontaine/libbsd/commit/1220b3b758030f1717558980d60ade9a33628383
Using pthread_atfork would solve this with uClibc on noMMU ?
… |
Yes, code-building pass if use pthread_atfork,hope someone can fix this issue in the master branch. |
Does this arc4random_linux.h patch work for you with uClibc ? --- crypto/compat/arc4random_linux.h.orig Mon Jul 1 20:23:38 2019
+++ crypto/compat/arc4random_linux.h Mon Jul 1 20:25:37 2019
@@ -32,7 +32,7 @@ static pthread_mutex_t arc4random_mtx = PTHREAD_MUTEX_
#define _ARC4_LOCK() pthread_mutex_lock(&arc4random_mtx)
#define _ARC4_UNLOCK() pthread_mutex_unlock(&arc4random_mtx)
-#ifdef __GLIBC__
+#if defined(__GLIBC__) && !defined(__UCLIBC__)
extern void *__dso_handle;
extern int __register_atfork(void (*)(void), void(*)(void), void (*)(void), void *);
#define _ARC4_ATFORK(f) __register_atfork(NULL, NULL, (f), __dso_handle) I had tested this diff by travis-ci here, to verify before send this to upstream. |
That works fine for me. I think we intended for arc4random_linux.h to be able to work without any autoconf help since it lives upstream in the openbsd source, or I might have suggested a symbol check in the configuration phase instead. |
Shall I suggest upstream change for arc4random_linux.h in ML ?
|
Sounds like the right thing to do. That'll fixup any other users as well on uclibc. |
uClibc on noMMU doesn't provide __register_atfork(). Reported by redbirdtek on Github issue. libressl/portable#538 ok bcook@
uClibc on noMMU doesn't provide __register_atfork(). Reported by redbirdtek on Github issue. libressl/portable#538 ok bcook@
@redbirdtek |
uClibc on noMMU doesn't provide __register_atfork(). Reported by redbirdtek on Github issue. libressl/portable#538 ok bcook@
uClibc on noMMU doesn't provide __register_atfork(). Reported by redbirdtek on Github issue. libressl/portable#538 ok bcook@
#ifdef GLIBC
extern void __dso_handle;
extern int __register_atfork(void ()(void), void()(void), void ()(void), void *);
#define _ARC4_ATFORK(f) __register_atfork(NULL, NULL, (f), __dso_handle)
#else
#define _ARC4_ATFORK(f) pthread_atfork(NULL, NULL, (f))
#endif
The text was updated successfully, but these errors were encountered: