mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
Fix a bug that imaps didn't work correctly.
This patch will be applied in next cyrus-imapd release. Reported by: Nick Sayer <nsayer@quack.kfu.com>
This commit is contained in:
parent
36bbe50a64
commit
06fa03f98f
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=42349
10 changed files with 430 additions and 5 deletions
|
@ -7,7 +7,7 @@
|
|||
|
||||
PORTNAME= cyrus-imapd
|
||||
PORTVERSION= 2.0.13
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= mail ipv6
|
||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/
|
||||
|
|
85
mail/cyrus-imapd/files/patch-dh
Normal file
85
mail/cyrus-imapd/files/patch-dh
Normal file
|
@ -0,0 +1,85 @@
|
|||
Index: imap/imapd.c
|
||||
diff -u imap/imapd.c.orig imap/imapd.c
|
||||
--- imap/imapd.c.orig Mon May 7 02:45:36 2001
|
||||
+++ imap/imapd.c Mon May 7 03:31:46 2001
|
||||
@@ -394,6 +394,9 @@
|
||||
imapd_exists = -1;
|
||||
}
|
||||
|
||||
+static int imaps = 0;
|
||||
+static sasl_ssf_t extprops_ssf = 0;
|
||||
+
|
||||
/*
|
||||
* run once when process is forked;
|
||||
* MUST NOT exit directly; must return with non-zero error code
|
||||
@@ -401,6 +404,7 @@
|
||||
int service_init(int argc, char **argv, char **envp)
|
||||
{
|
||||
int r;
|
||||
+ int opt;
|
||||
|
||||
config_changeident("imapd");
|
||||
|
||||
@@ -447,6 +451,26 @@
|
||||
snmp_connect(); /* ignore return code */
|
||||
snmp_set_str(SERVER_NAME_VERSION,CYRUS_VERSION);
|
||||
|
||||
+ while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
+ switch (opt) {
|
||||
+ case 'C': /* alt config file - handled by service::main() */
|
||||
+ break;
|
||||
+ case 's': /* imaps (do starttls right away) */
|
||||
+ imaps = 1;
|
||||
+ if (!starttls_enabled()) {
|
||||
+ syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
+ fatal("imaps: required OpenSSL options not present",
|
||||
+ EC_CONFIG);
|
||||
+ }
|
||||
+ break;
|
||||
+ case 'p': /* external protection */
|
||||
+ extprops_ssf = atoi(optarg);
|
||||
+ break;
|
||||
+ default:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -455,8 +479,6 @@
|
||||
*/
|
||||
int service_main(int argc, char **argv, char **envp)
|
||||
{
|
||||
- int imaps = 0;
|
||||
- int opt;
|
||||
socklen_t salen;
|
||||
struct hostent *hp;
|
||||
int timeout;
|
||||
@@ -478,25 +500,7 @@
|
||||
#endif
|
||||
|
||||
memset(&extprops, 0, sizeof(sasl_external_properties_t));
|
||||
- while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
- switch (opt) {
|
||||
- case 'C': /* alt config file - handled by service::main() */
|
||||
- break;
|
||||
- case 's': /* imaps (do starttls right away) */
|
||||
- imaps = 1;
|
||||
- if (!starttls_enabled()) {
|
||||
- syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
- fatal("imaps: required OpenSSL options not present",
|
||||
- EC_CONFIG);
|
||||
- }
|
||||
- break;
|
||||
- case 'p': /* external protection */
|
||||
- extprops.ssf = atoi(optarg);
|
||||
- break;
|
||||
- default:
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
+ extprops.ssf = extprops_ssf;
|
||||
|
||||
imapd_in = prot_new(0, 0);
|
||||
imapd_out = prot_new(1, 1);
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
PORTNAME= cyrus-imapd
|
||||
PORTVERSION= 2.0.13
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= mail ipv6
|
||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/
|
||||
|
|
85
mail/cyrus-imapd2/files/patch-dh
Normal file
85
mail/cyrus-imapd2/files/patch-dh
Normal file
|
@ -0,0 +1,85 @@
|
|||
Index: imap/imapd.c
|
||||
diff -u imap/imapd.c.orig imap/imapd.c
|
||||
--- imap/imapd.c.orig Mon May 7 02:45:36 2001
|
||||
+++ imap/imapd.c Mon May 7 03:31:46 2001
|
||||
@@ -394,6 +394,9 @@
|
||||
imapd_exists = -1;
|
||||
}
|
||||
|
||||
+static int imaps = 0;
|
||||
+static sasl_ssf_t extprops_ssf = 0;
|
||||
+
|
||||
/*
|
||||
* run once when process is forked;
|
||||
* MUST NOT exit directly; must return with non-zero error code
|
||||
@@ -401,6 +404,7 @@
|
||||
int service_init(int argc, char **argv, char **envp)
|
||||
{
|
||||
int r;
|
||||
+ int opt;
|
||||
|
||||
config_changeident("imapd");
|
||||
|
||||
@@ -447,6 +451,26 @@
|
||||
snmp_connect(); /* ignore return code */
|
||||
snmp_set_str(SERVER_NAME_VERSION,CYRUS_VERSION);
|
||||
|
||||
+ while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
+ switch (opt) {
|
||||
+ case 'C': /* alt config file - handled by service::main() */
|
||||
+ break;
|
||||
+ case 's': /* imaps (do starttls right away) */
|
||||
+ imaps = 1;
|
||||
+ if (!starttls_enabled()) {
|
||||
+ syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
+ fatal("imaps: required OpenSSL options not present",
|
||||
+ EC_CONFIG);
|
||||
+ }
|
||||
+ break;
|
||||
+ case 'p': /* external protection */
|
||||
+ extprops_ssf = atoi(optarg);
|
||||
+ break;
|
||||
+ default:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -455,8 +479,6 @@
|
||||
*/
|
||||
int service_main(int argc, char **argv, char **envp)
|
||||
{
|
||||
- int imaps = 0;
|
||||
- int opt;
|
||||
socklen_t salen;
|
||||
struct hostent *hp;
|
||||
int timeout;
|
||||
@@ -478,25 +500,7 @@
|
||||
#endif
|
||||
|
||||
memset(&extprops, 0, sizeof(sasl_external_properties_t));
|
||||
- while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
- switch (opt) {
|
||||
- case 'C': /* alt config file - handled by service::main() */
|
||||
- break;
|
||||
- case 's': /* imaps (do starttls right away) */
|
||||
- imaps = 1;
|
||||
- if (!starttls_enabled()) {
|
||||
- syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
- fatal("imaps: required OpenSSL options not present",
|
||||
- EC_CONFIG);
|
||||
- }
|
||||
- break;
|
||||
- case 'p': /* external protection */
|
||||
- extprops.ssf = atoi(optarg);
|
||||
- break;
|
||||
- default:
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
+ extprops.ssf = extprops_ssf;
|
||||
|
||||
imapd_in = prot_new(0, 0);
|
||||
imapd_out = prot_new(1, 1);
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
PORTNAME= cyrus-imapd
|
||||
PORTVERSION= 2.0.13
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= mail ipv6
|
||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/
|
||||
|
|
85
mail/cyrus-imapd22/files/patch-dh
Normal file
85
mail/cyrus-imapd22/files/patch-dh
Normal file
|
@ -0,0 +1,85 @@
|
|||
Index: imap/imapd.c
|
||||
diff -u imap/imapd.c.orig imap/imapd.c
|
||||
--- imap/imapd.c.orig Mon May 7 02:45:36 2001
|
||||
+++ imap/imapd.c Mon May 7 03:31:46 2001
|
||||
@@ -394,6 +394,9 @@
|
||||
imapd_exists = -1;
|
||||
}
|
||||
|
||||
+static int imaps = 0;
|
||||
+static sasl_ssf_t extprops_ssf = 0;
|
||||
+
|
||||
/*
|
||||
* run once when process is forked;
|
||||
* MUST NOT exit directly; must return with non-zero error code
|
||||
@@ -401,6 +404,7 @@
|
||||
int service_init(int argc, char **argv, char **envp)
|
||||
{
|
||||
int r;
|
||||
+ int opt;
|
||||
|
||||
config_changeident("imapd");
|
||||
|
||||
@@ -447,6 +451,26 @@
|
||||
snmp_connect(); /* ignore return code */
|
||||
snmp_set_str(SERVER_NAME_VERSION,CYRUS_VERSION);
|
||||
|
||||
+ while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
+ switch (opt) {
|
||||
+ case 'C': /* alt config file - handled by service::main() */
|
||||
+ break;
|
||||
+ case 's': /* imaps (do starttls right away) */
|
||||
+ imaps = 1;
|
||||
+ if (!starttls_enabled()) {
|
||||
+ syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
+ fatal("imaps: required OpenSSL options not present",
|
||||
+ EC_CONFIG);
|
||||
+ }
|
||||
+ break;
|
||||
+ case 'p': /* external protection */
|
||||
+ extprops_ssf = atoi(optarg);
|
||||
+ break;
|
||||
+ default:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -455,8 +479,6 @@
|
||||
*/
|
||||
int service_main(int argc, char **argv, char **envp)
|
||||
{
|
||||
- int imaps = 0;
|
||||
- int opt;
|
||||
socklen_t salen;
|
||||
struct hostent *hp;
|
||||
int timeout;
|
||||
@@ -478,25 +500,7 @@
|
||||
#endif
|
||||
|
||||
memset(&extprops, 0, sizeof(sasl_external_properties_t));
|
||||
- while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
- switch (opt) {
|
||||
- case 'C': /* alt config file - handled by service::main() */
|
||||
- break;
|
||||
- case 's': /* imaps (do starttls right away) */
|
||||
- imaps = 1;
|
||||
- if (!starttls_enabled()) {
|
||||
- syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
- fatal("imaps: required OpenSSL options not present",
|
||||
- EC_CONFIG);
|
||||
- }
|
||||
- break;
|
||||
- case 'p': /* external protection */
|
||||
- extprops.ssf = atoi(optarg);
|
||||
- break;
|
||||
- default:
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
+ extprops.ssf = extprops_ssf;
|
||||
|
||||
imapd_in = prot_new(0, 0);
|
||||
imapd_out = prot_new(1, 1);
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
PORTNAME= cyrus-imapd
|
||||
PORTVERSION= 2.0.13
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= mail ipv6
|
||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/
|
||||
|
|
85
mail/cyrus-imapd23/files/patch-dh
Normal file
85
mail/cyrus-imapd23/files/patch-dh
Normal file
|
@ -0,0 +1,85 @@
|
|||
Index: imap/imapd.c
|
||||
diff -u imap/imapd.c.orig imap/imapd.c
|
||||
--- imap/imapd.c.orig Mon May 7 02:45:36 2001
|
||||
+++ imap/imapd.c Mon May 7 03:31:46 2001
|
||||
@@ -394,6 +394,9 @@
|
||||
imapd_exists = -1;
|
||||
}
|
||||
|
||||
+static int imaps = 0;
|
||||
+static sasl_ssf_t extprops_ssf = 0;
|
||||
+
|
||||
/*
|
||||
* run once when process is forked;
|
||||
* MUST NOT exit directly; must return with non-zero error code
|
||||
@@ -401,6 +404,7 @@
|
||||
int service_init(int argc, char **argv, char **envp)
|
||||
{
|
||||
int r;
|
||||
+ int opt;
|
||||
|
||||
config_changeident("imapd");
|
||||
|
||||
@@ -447,6 +451,26 @@
|
||||
snmp_connect(); /* ignore return code */
|
||||
snmp_set_str(SERVER_NAME_VERSION,CYRUS_VERSION);
|
||||
|
||||
+ while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
+ switch (opt) {
|
||||
+ case 'C': /* alt config file - handled by service::main() */
|
||||
+ break;
|
||||
+ case 's': /* imaps (do starttls right away) */
|
||||
+ imaps = 1;
|
||||
+ if (!starttls_enabled()) {
|
||||
+ syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
+ fatal("imaps: required OpenSSL options not present",
|
||||
+ EC_CONFIG);
|
||||
+ }
|
||||
+ break;
|
||||
+ case 'p': /* external protection */
|
||||
+ extprops_ssf = atoi(optarg);
|
||||
+ break;
|
||||
+ default:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -455,8 +479,6 @@
|
||||
*/
|
||||
int service_main(int argc, char **argv, char **envp)
|
||||
{
|
||||
- int imaps = 0;
|
||||
- int opt;
|
||||
socklen_t salen;
|
||||
struct hostent *hp;
|
||||
int timeout;
|
||||
@@ -478,25 +500,7 @@
|
||||
#endif
|
||||
|
||||
memset(&extprops, 0, sizeof(sasl_external_properties_t));
|
||||
- while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
- switch (opt) {
|
||||
- case 'C': /* alt config file - handled by service::main() */
|
||||
- break;
|
||||
- case 's': /* imaps (do starttls right away) */
|
||||
- imaps = 1;
|
||||
- if (!starttls_enabled()) {
|
||||
- syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
- fatal("imaps: required OpenSSL options not present",
|
||||
- EC_CONFIG);
|
||||
- }
|
||||
- break;
|
||||
- case 'p': /* external protection */
|
||||
- extprops.ssf = atoi(optarg);
|
||||
- break;
|
||||
- default:
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
+ extprops.ssf = extprops_ssf;
|
||||
|
||||
imapd_in = prot_new(0, 0);
|
||||
imapd_out = prot_new(1, 1);
|
|
@ -7,7 +7,7 @@
|
|||
|
||||
PORTNAME= cyrus-imapd
|
||||
PORTVERSION= 2.0.13
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= mail ipv6
|
||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/
|
||||
|
|
85
mail/cyrus-imapd24/files/patch-dh
Normal file
85
mail/cyrus-imapd24/files/patch-dh
Normal file
|
@ -0,0 +1,85 @@
|
|||
Index: imap/imapd.c
|
||||
diff -u imap/imapd.c.orig imap/imapd.c
|
||||
--- imap/imapd.c.orig Mon May 7 02:45:36 2001
|
||||
+++ imap/imapd.c Mon May 7 03:31:46 2001
|
||||
@@ -394,6 +394,9 @@
|
||||
imapd_exists = -1;
|
||||
}
|
||||
|
||||
+static int imaps = 0;
|
||||
+static sasl_ssf_t extprops_ssf = 0;
|
||||
+
|
||||
/*
|
||||
* run once when process is forked;
|
||||
* MUST NOT exit directly; must return with non-zero error code
|
||||
@@ -401,6 +404,7 @@
|
||||
int service_init(int argc, char **argv, char **envp)
|
||||
{
|
||||
int r;
|
||||
+ int opt;
|
||||
|
||||
config_changeident("imapd");
|
||||
|
||||
@@ -447,6 +451,26 @@
|
||||
snmp_connect(); /* ignore return code */
|
||||
snmp_set_str(SERVER_NAME_VERSION,CYRUS_VERSION);
|
||||
|
||||
+ while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
+ switch (opt) {
|
||||
+ case 'C': /* alt config file - handled by service::main() */
|
||||
+ break;
|
||||
+ case 's': /* imaps (do starttls right away) */
|
||||
+ imaps = 1;
|
||||
+ if (!starttls_enabled()) {
|
||||
+ syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
+ fatal("imaps: required OpenSSL options not present",
|
||||
+ EC_CONFIG);
|
||||
+ }
|
||||
+ break;
|
||||
+ case 'p': /* external protection */
|
||||
+ extprops_ssf = atoi(optarg);
|
||||
+ break;
|
||||
+ default:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -455,8 +479,6 @@
|
||||
*/
|
||||
int service_main(int argc, char **argv, char **envp)
|
||||
{
|
||||
- int imaps = 0;
|
||||
- int opt;
|
||||
socklen_t salen;
|
||||
struct hostent *hp;
|
||||
int timeout;
|
||||
@@ -478,25 +500,7 @@
|
||||
#endif
|
||||
|
||||
memset(&extprops, 0, sizeof(sasl_external_properties_t));
|
||||
- while ((opt = getopt(argc, argv, "C:sp:")) != EOF) {
|
||||
- switch (opt) {
|
||||
- case 'C': /* alt config file - handled by service::main() */
|
||||
- break;
|
||||
- case 's': /* imaps (do starttls right away) */
|
||||
- imaps = 1;
|
||||
- if (!starttls_enabled()) {
|
||||
- syslog(LOG_ERR, "imaps: required OpenSSL options not present");
|
||||
- fatal("imaps: required OpenSSL options not present",
|
||||
- EC_CONFIG);
|
||||
- }
|
||||
- break;
|
||||
- case 'p': /* external protection */
|
||||
- extprops.ssf = atoi(optarg);
|
||||
- break;
|
||||
- default:
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
+ extprops.ssf = extprops_ssf;
|
||||
|
||||
imapd_in = prot_new(0, 0);
|
||||
imapd_out = prot_new(1, 1);
|
Loading…
Add table
Reference in a new issue