Auteur: Piete Brooks Date: À: Chris Harris CC: exim-users Sujet: Re: "setgroups() failed..." error for non-root
> However, when I tried today to compile a second exim binary (called "exim3") > for mailing list distribution pruposes, I ran into trouble.
Why compile a second copy ?
Set CONFIGURE_FILE_USE_EUID, copy the resultant binary, setuid it to the
required users, and arrange to have a configure.<numeric uid> file to tailor
all but the "std" one. Section 7 of the spec says:
In some esoteric situations different versions of Exim may be run under
different effective uids and the CONFIGURE_FILE_USE_EUID is defined to help
with this. See the comments in src/EDITME for details.
and src/EDITME says:
# In some esoteric configurations two different versions of Exim are run,
# with different setuid values, and different configuration files are required
# to handle the different cases. If CONFIGURE_FILE_USE_EUID is defined, then
# Exim will first look for a configuration file whose name is that defined
# by CONFIGURE_FILE, with the effective uid tacked on the end, separated by
# a period (for eximple, /usr/exim/configure.0). If this file does not exist,
# then the bare configuration file name is tried. In the case when both
# CONFIGURE_FILE_USE_EUID and CONFIGURE_FILE_USE_NODE are set, four files
# are tried: <name>.<euid>.<node>, <name>.<node>, <name>.<euid>, and <name>.
# CONFIGURE_FILE_USE_EUID=yes
> When I run the "exim3" binary as anyone except root, the process dies with a
> "setgroups() failed: Operation not permitted" error.
When I reported this problem, ph10 said I was the only person to set exim up
to run other than root -- looks like you are the second :-)