Small bug in Cyrus replication

Ken Murchison murch at andrew.cmu.edu
Mon Mar 6 08:13:28 EST 2006


Applied both patches.  Thanks.


Bron Gondwana wrote:
> There's a tiny bug in Cyrus replication that I ran in to last week, and
> wrote a patch for, but didn't give to you in time for the 2.3.[23]
> release.
> 
> The problem: if your default partition isn't called 'default' then it
> hits a hard coded string.
> 
> Please see the attached patch for this.
> 
> I am also attaching another patch we apply for fixing reconstruct
> while I believe should also be applied.  It is against 2.3.1 but I
> just checked the 2.3.3 sources and it hasn't been fixed there yet.
> Just a gentle reminder :)
> 
> It is sourced from: http://www.irbs.net/internet/info-cyrus/0601/0144.html
> 
> Regards,
> 
> Bron.
> 
> P.S. just FYI - a couple of issues I ran into as a new subscriber to the
>      mailing list and trying to provide useful information about the issues
>      I've encountered:
> 
> 1) I just signed up for the mailing lists via Mailman after
>    trying to follow the majordomo instructions at:
>    http://asg.web.cmu.edu/cyrus/imapd/ and being told that
>    majordomo isn't used any more!  Can that page be fixed
>    easily?
> 
> 2) When I logged in (username & password) to the info-cyrus archives the
>    page I was redirected to was missing the trailing slash, so all the
>    archive links were broken (No such list 2006-February).  This and the
>    fact that the January 2006 archives seem to be missing caused me not to
>    give a cmu-local URL for the source of the second patch above.
> 
> 
> ------------------------------------------------------------------------
> 
> diff -ur cyrus-imapd-2.3.1/imap/sync_support.c cyrus-imapd-2.3.1-defaultfix/imap/sync_support.c
> --- cyrus-imapd-2.3.1/imap/sync_support.c	2005-12-13 10:31:10.000000000 -0500
> +++ cyrus-imapd-2.3.1-defaultfix/imap/sync_support.c	2006-02-26 14:46:19.000000000 -0500
> @@ -800,7 +800,7 @@
>      l->file_max   = file_max;  
>  
>      /* Set up cache file */
> -    root = config_partitiondir("default");
> +    root = config_partitiondir(config_defpartition);
>  
>      snprintf(l->cache_name, sizeof(l->cache_name), "%s/sync./%lu.cache",
>  	     root, (unsigned long) getpid());
> 
> 
> ------------------------------------------------------------------------
> 
> diff -ur cyrus-imapd-2.3.1/imap/reconstruct.c cyrus-imapd-2.3.1-reconstruct/imap/reconstruct.c
> --- cyrus-imapd-2.3.1/imap/reconstruct.c	2005-03-27 09:36:25.000000000 -0500
> +++ cyrus-imapd-2.3.1-reconstruct/imap/reconstruct.c	2006-01-15 06:11:35.000000000 -0500
> @@ -248,7 +248,7 @@
>  		     IMAP_ENUM_METAPARTITION_FILES_HEADER)) ?
>  		start_part_mpath : start_part_path;
>  	    mailbox_hash_mbox(mbbuf, sizeof(mbbuf), path, buf);
> -	    strlcat(mbbuf, "FNAME_HEADER", sizeof(mbbuf));
> +	    strlcat(mbbuf, FNAME_HEADER, sizeof(mbbuf));
>  	    if(stat(mbbuf, &sbuf) < 0) {
>  		fprintf(stderr,
>  			"%s does not appear to be a mailbox (no %s).\n",


-- 
Kenneth Murchison
Systems Programmer
Project Cyrus Developer/Maintainer
Carnegie Mellon University


More information about the Cyrus-devel mailing list