Codebase list cyrus-imapd / fb8a050
Imported Upstream version 2.4.9 Ondřej Surý 12 years ago
58 changed file(s) with 77 addition(s) and 78 deletion(s). Raw diff Collapse all Expand all
6363 COMPILE_ET = @COMPILE_ET@
6464
6565 PACKAGE = cyrus-imapd
66 VERSION = 2.4.9beta2
66 VERSION = 2.4.9
6767 GIT_VERSION = $(VERSION).git$(shell date +'%Y%m%d%H%M')
6868
6969 all:: xversion
4040 few stable releases</li>
4141 <li>Bug #3438 - fix authentication (-a option) for deliver command</li>
4242 <li>Bug #3431 - actually an enhancement - look for config files in
43 ENV{CYRUS_PATH} first</li>
43 $ENV{CYRUS_PREFIX} first</li>
4444 <li>Bug #3430 - fractional days and other units in cyr_expire</li>
4545 </ul>
4646
99
1010 <h2>Upgrading from 2.4.8</h2>
1111 <ul>
12 <li>CYRUS_PATH prefixing. If you have a config file in CYRUS_PATH
13 it will override the default path now, so for example a file
14 in /usr/cyrus/etc/imapd.conf will override /etc/imapd.conf.
12 <li>CYRUS_PREFIX environemnt varabile. If you have an environment
13 variable "CYRUS_PREFIX" then config files will be searched for
14 in there first, so for example the file /var/cyrus/etc/imapd.conf
15 will override /etc/imapd.conf if your CYRUS_PREFIX is /var/cyrus.
1516 This is to make things easier for sites with multiple installs
1617 on a single machine. You will want to check that there aren't
1718 unexpected files in those locations when upgrading.</li>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:41 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:34 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:41 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:34 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:41 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:34 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:42 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:43 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:43 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:43 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:35 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:43 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:43 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:43 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:36 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:44 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:37 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:45 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:46 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:47 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:47 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:38 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
00 <!-- Creator : groff version 1.21 -->
1 <!-- CreationDate: Tue Jun 14 21:56:47 2011 -->
1 <!-- CreationDate: Tue Jun 21 21:51:39 2011 -->
22 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
33 "http://www.w3.org/TR/html4/loose.dtd">
44 <html>
11
22 Upgrading from 2.4.8
33
4 * CYRUS_PATH prefixing. If you have a config file in CYRUS_PATH it
5 will override the default path now, so for example a file in
6 /usr/cyrus/etc/imapd.conf will override /etc/imapd.conf. This is to
7 make things easier for sites with multiple installs on a single
8 machine. You will want to check that there aren't unexpected files
9 in those locations when upgrading.
4 * CYRUS_PREFIX environemnt varabile. If you have an environment
5 variable "CYRUS_PREFIX" then config files will be searched for in
6 there first, so for example the file /var/cyrus/etc/imapd.conf will
7 override /etc/imapd.conf if your CYRUS_PREFIX is /var/cyrus. This
8 is to make things easier for sites with multiple installs on a
9 single machine. You will want to check that there aren't unexpected
10 files in those locations when upgrading.
1011 * New config options: *_db_path allow moving individual DB files to
1112 different partitions - for example you may want to put the
1213 deliver.db onto tmpfs to improve performance.
475475 if (erock.verbose) {
476476 fprintf(stderr,
477477 "Expunging deleted messages in mailboxes older than %0.2f days\n",
478 (double)(expunge_seconds/86400));
478 ((double)expunge_seconds/86400));
479479 }
480480 }
481481
506506 if (drock.verbose) {
507507 fprintf(stderr,
508508 "Removing deleted mailboxes older than %0.2f days\n",
509 (double)(delete_seconds/86400));
509 ((double)delete_seconds/86400));
510510 }
511511
512512 strlcpy(drock.prefix, deletedprefix, sizeof(drock.prefix));
317317 prock.expmark = time(NULL) - seconds;
318318 prock.expire_table = expire_table;
319319 syslog(LOG_NOTICE, "duplicate_prune: pruning back %0.2f days",
320 (double)(seconds/86400));
320 ((double)seconds/86400));
321321
322322 /* check each entry in our database */
323323 prock.db = dupdb;
346346 if (!f) return IMAP_IOERROR;
347347
348348 r = message_parse_file(f, NULL, NULL, &body);
349 if (!r) {
350 r = message_create_record(record, body);
351 message_free_body(body);
352 }
349 if (!r) r = message_create_record(record, body);
353350
354351 if (f) fclose(f);
352
353 if (body) {
354 message_free_body(body);
355 free(body);
356 }
355357
356358 return r;
357359 }
369369 buf = xmalloc(bufsize);
370370
371371 /* read in config file
372 Check if we have CYRUS_PATH defined, and then use that config */
373 cyrus_path = getenv("CYRUS_PATH");
372 Check if we have CYRUS_PREFIX defined, and then use that config */
373 cyrus_path = getenv("CYRUS_PREFIX");
374374 if (cyrus_path) {
375375 strlcpy(buf, cyrus_path, bufsize);
376376 strlcat(buf, filename, bufsize);
380380 if (!infile)
381381 infile = fopen(filename, "r");
382382
383 if (!infile) {
384 strlcpy(buf, CYRUS_PATH, bufsize);
385 strlcat(buf, filename, bufsize);
386 infile = fopen(buf, "r");
387 }
388383 if (!infile) {
389384 snprintf(buf, bufsize, "can't open configuration file %s: %s",
390385 filename, error_message(errno));
123123 .\" ========================================================================
124124 .\"
125125 .IX Title "SIEVESHELL 1"
126 .TH SIEVESHELL 1 "2011-06-14" "perl v5.10.1" "User Contributed Perl Documentation"
126 .TH SIEVESHELL 1 "2011-06-21" "perl v5.10.1" "User Contributed Perl Documentation"
127127 .\" For nroff, turn off justification. Always turn off hyphenation; it makes
128128 .\" way too many mistakes in technical documents.
129129 .if n .ad l
225225 char buf[4096];
226226 const char *cyrus_path;
227227
228 /* try loading the copy inside CYRUS_PATH first */
229 cyrus_path = getenv("CYRUS_PATH");
228 /* try loading the copy inside CYRUS_PREFIX first */
229 cyrus_path = getenv("CYRUS_PREFIX");
230230 if (cyrus_path) {
231231 strlcpy(buf, cyrus_path, sizeof(buf));
232232 strlcat(buf, MASTER_CONFIG_FILENAME, sizeof(buf));
0 /* Release cyrus-imapd-2.4.9beta2 */
1 #define _CYRUS_VERSION "v2.4.9beta2"
2 #define CYRUS_GITVERSION "6a5a394d 2011-06-14"
0 /* Release cyrus-imapd-2.4.9 */
1 #define _CYRUS_VERSION "v2.4.9"
2 #define CYRUS_GITVERSION "ebb103d8 2011-06-21"