On Thu, 15 Mar 2007, John Capo wrote:
masterconf_getsection() calls add_service() which inits the service structures with have_uuid but have_uuid is not set till after the services are initialized.
Ah, have_uuid is new in 2.3. That line definitely needs to move, but I think that the message_uuid_master_init() call should stay where it is.
-- David Carter Email: David.Carter@xxxxxxxxxxxxx University Computing Service, Phone: (01223) 334502 New Museums Site, Pembroke Street, Fax: (01223) 334679 Cambridge UK. CB2 3QH. --- master/master.c-DIST 2007-03-16 08:45:56.000000000 +0000 +++ master/master.c 2007-03-16 08:46:13.000000000 +0000 @@ -1938,6 +1938,8 @@ /* set signal handlers */ sighandler_setup(); + have_uuid = (config_getint(IMAPOPT_SYNC_MACHINEID) >= 0); + /* initialize services */ for (i = 0; i < nservices; i++) { service_create(&Services[i]); @@ -1954,7 +1956,6 @@ } } - have_uuid = (config_getint(IMAPOPT_SYNC_MACHINEID) >= 0); if (have_uuid && !message_uuid_master_init()) { syslog(LOG_ERR, "Couldn't initialise UUID subsystem"); exit(EX_OSERR); ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html