I think idled ought to become_cyrus itself. It shouldn't continue
running as root even if it was started as root.

The attached patch seems to resolve this for me.  Karl, does it help in
your case?

It's against the current cyrus-imapd-2.5 from git, but should apply
cleanly to the 2.5.7 sources as well.

This should work.
Ellie, can you remove a dup in master.c too?

#if defined(__linux__) && defined(HAVE_LIBCAP)
    if (become_cyrus(/*is_master*/1) != 0) {
        syslog(LOG_ERR, "can't change to the cyrus user: %m");
        exit(1);
    }
#endif

    masterconf_getsection("START", &add_start, NULL);
....
#if defined(__linux__) && defined(HAVE_LIBCAP)
    if (become_cyrus(/*is_master*/1) != 0) {
        syslog(LOG_ERR, "can't change to the cyrus user: %m");
        exit(1);
    }
#endif


Last one is a dup.

Regards,
Carlos Velasco

Reply via email to