[sane-devel] Group uucp warning (was Re: Using "scanimage" under Gentoo)

Olaf Meeuwissen paddy-hack at member.fsf.org
Tue Feb 11 08:27:30 GMT 2020


Hi,

r. a. schmied writes:

> Dr Rainer Woitok wrote:
>> [...]
>>
>> Next I cloned the Git repository  in order  to be able  to freely change
>> between various versions to find one which is working for me  by compil-
>> ing "sane-backends" myself.  [...]
>>
>>    ./autogen.sh && ./configure
>>
>> I got two warnings which I do not quite understand:
>>
>>    configure: WARNING: Group uucp does not exist on this system.
>>    configure: WARNING: Locking feature will be disabled.
>>
>> The group does in fact exist:
>>
>>    $ ls -l /etc/group /etc/gshadow
>>    -rw-r--r-- 1 root root 755 2020-01-14 10:03 /etc/group
>>    -r--r----- 1 root root 622 2020-01-14 10:03 /etc/gshadow
>>    $ grep uucp /etc/group /etc/gshadow
>>    /etc/group:uucp:x:14:uucp
>>    /etc/gshadow:uucp:::uucp
>>    $
>>
>> So what does that mean?   Do "configure" and "make"  want myself to be a
>> memer of group "uucp" while I'm just compiling the stuff?
>
> rainer and saners
>
> on a solaris 10 sparc platform running sane-backends configure as
> me (ras) results in the same warning even though group uucp does exist.
>
> the problem is in the os security permissions or lack thereof, at least
> on sol10, and i would expect on a security conscience linux as well.
>
> i don't recall if running sane-backends configure is supposed to be
> performed as root (i would hope and suspect not) but make install would be.

Normally, running `./configure` as an unprivileged user is expected to
work just fine.  To run `make install` you would normally need elevated
privileges.

But in the end it all really depends on the system you run these
commands.  On my Devuan system, `/usr/local/` is group staff and
has group write permissions.  If my account is part of the staff
group, I can run `make install` without root privileges (assuming
the default prefix).

> expert gnu autoconfigurers might be able to find a better way to
> determine if group uucp does in fact exist and can be used by a sane
> process instead of the current method:
>     touch sanetest.file
>     chgrp $LOCKPATH_GROUP sanetest.file 2>/dev/null || lasterror=$?

Thanks for digging this up!

It looks horribly broken as it will fail for any value of LOCKPATH_GROUP
unless the user running `./configure` is a member of that group (or root
as on our CI environments).

Apart from that, I also think `uucp` is not really the right group for
this.  I think it should be the same group that is used to facilitate
I/O with local devices.  This is distribution dependent but typically
`scanner` or `lp`.

Anyway, I'll deal with this in #235.

Hope this helps,
--
Olaf Meeuwissen, LPIC-2            FSF Associate Member since 2004-01-27
 GnuPG key: F84A2DD9/B3C0 2F47 EA19 64F4 9F13  F43E B8A4 A88A F84A 2DD9
 Support Free Software                        https://my.fsf.org/donate
 Join the Free Software Foundation              https://my.fsf.org/join



More information about the sane-devel mailing list