Hide Forgot
In udisks_daemon_util_get_caller_uid_sync() in src/udisksdaemonutil.c, the "static" should be dropped from the pw variable; it is a thread safety hazard and cause the function to return wrong data. The functions find_primary_gid(), is_uid_in_gid() in src/udiskslinuxfilesystem.c call getpwuid(), which is not thread-safe. src/udisksspawnedjob.c:child_setup() does far too much before the execve() call. NSS modules might not be available if the fork() happened at an inconvenient time. getpwuid() etc. should be called prior to the fork, and use thread-safe variants there (that is, getwpuid_r).
Posted a patch upstream: https://bugs.freedesktop.org/show_bug.cgi?id=73669
This request was resolved in Red Hat Enterprise Linux 7.0. Contact your manager or support representative in case you have further questions about the request.