http://www.berklix.com/~jhs/src/bsd/fixes/FreeBSD/ports/gen/misc/ctm/files/patch-for-ctm_rmail See src/ Equivalent Ex ../../../../../src/gen/usr.sbin/ctm/ctm_rmail/patch-for-ctm_rmail.REL=ALL.diff Since removed from src to ports in 13.0-CURRENT Now ../../../../../src/gen/usr.sbin/ctm/ctm_rmail/patch-for-ctm_rmail.REL=ALL.diff http://www.berklix.com/~jhs/src/bsd/fixes/FreeBSD/src/gen/usr.sbin/ctm/ctm_rmail/patch-for-ctm_rmail.REL=ALL.diff From Stephen Montgomery-Smith's ftp://ctm.berklix.org/pub/FreeBSD/development/CTM/svn-cur/patch-for-ctm_rmail Just pathnames changed. --- ctm_rmail/ctm_rmail.c.orig 2012-09-22 08:59:08.000000000 +0200 +++ ctm_rmail/ctm_rmail.c 2012-09-22 11:37:21.000000000 +0200 @@ -150,6 +150,7 @@ char fname[PATH_MAX]; char here[PATH_MAX]; char buf[PATH_MAX*2]; + char *deltanamescheme[] = { "%s.%04d.gz", "%s.%04d.xz", "%s.%05d.gz", "%s.%05d.xz", NULL }; /* * Grab a lock on the ctm mutex file so that we can be sure we are @@ -198,10 +199,16 @@ */ for (;;) { - sprintf(delta, "%s.%04d.gz", class, ++dn); - mk_delta_name(fname, delta); + ++dn; + for (i=0; deltanamescheme[i]; i++) + { + sprintf(delta, deltanamescheme[i], class, dn); + mk_delta_name(fname, delta); - if (stat(fname, &sb) < 0) + if (stat(fname, &sb) >= 0) + break; + } + if (!deltanamescheme[i]) break; sprintf(buf, "(cd %s && ctm %s%s%s%s) 2>&1", base_dir,