I think I've found the origin of the problem, and this is related to a
change made within libcryptsetup during January 2017, in the function
device_internal_prepare(). This now checks that both getuid() and
geteuid() return zero before attempting to configure a loopback device.
Other areas of libcryptsetup will check getuid() and geteuid() after an
operation fails in order to provide a warning message about lack of
root privileges. I'm not convinced that checking getuid() is necessary,
if geteuid() already returns zero.

I have a provisional fix for cryptmount, which I intend to roll into
the forthcoming release 5.3.

Reply via email to