Add some patches from upstream. From Brad.

This commit is contained in:
sthen 2009-10-30 11:43:48 +00:00
parent 83aeac4f3f
commit 78185a5ceb
8 changed files with 100 additions and 6 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.125 2009/09/15 22:56:16 sthen Exp $
# $OpenBSD: Makefile,v 1.126 2009/10/30 11:43:48 sthen Exp $
SHARED_ONLY= Yes
@ -9,8 +9,8 @@ V_MAJOR= 1.1
V_DOVECOT= 1.1.19
V_SIEVE= 1.1.7
PKGNAME= dovecot-${V_DOVECOT}
PKGNAME-server= dovecot-${V_DOVECOT}
PKGNAME= dovecot-${V_DOVECOT}p0
PKGNAME-server= dovecot-${V_DOVECOT}p0
FULLPKGNAME-sieve= dovecot-sieve-${V_SIEVE}
DISTNAME= dovecot-${V_DOVECOT}

View File

@ -1,7 +1,7 @@
$OpenBSD: patch-configure_in,v 1.20 2009/09/15 22:56:16 sthen Exp $
$OpenBSD: patch-configure_in,v 1.21 2009/10/30 11:43:48 sthen Exp $
--- configure.in.orig Sun Sep 13 22:12:28 2009
+++ configure.in Mon Sep 14 17:49:22 2009
@@ -1812,74 +1813,16 @@ fi
+++ configure.in Thu Oct 29 23:10:27 2009
@@ -1812,74 +1812,16 @@ fi
have_gssapi=no
if test $want_gssapi != no; then

View File

@ -0,0 +1,11 @@
$OpenBSD: patch-src_auth_passdb-bsdauth_c,v 1.1 2009/10/30 11:43:48 sthen Exp $
--- src/auth/passdb-bsdauth.c.orig Thu Oct 29 23:16:41 2009
+++ src/auth/passdb-bsdauth.c Thu Oct 29 23:17:43 2009
@@ -54,6 +54,7 @@ bsdauth_preinit(struct auth_passdb *auth_passdb, const
struct passdb_module *module;
module = p_new(auth_passdb->auth->pool, struct passdb_module, 1);
+ module->default_pass_scheme = "PLAIN"; /* same reason as PAM */
if (strncmp(args, "cache_key=", 10) == 0) {
module->cache_key =

View File

@ -0,0 +1,15 @@
$OpenBSD: patch-src_deliver_deliver_c,v 1.1 2009/10/30 11:43:48 sthen Exp $
--- src/deliver/deliver.c.orig Thu Oct 29 23:15:09 2009
+++ src/deliver/deliver.c Thu Oct 29 23:16:21 2009
@@ -562,9 +562,9 @@ static const char *escape_local_part(const char *local
{
const char *p;
- /* if there are non-atext chars, we need to return quoted-string */
+ /* if local_part isn't dot-atom-text, we need to return quoted-string */
for (p = local_part; *p != '\0'; p++) {
- if (!IS_ATEXT(*p)) {
+ if (!IS_ATEXT(*p) && *p != '.') {
return t_strdup_printf("\"%s\"",
str_escape(local_part));
}

View File

@ -0,0 +1,15 @@
$OpenBSD: patch-src_lib-index_mail-index_c,v 1.3 2009/10/30 11:43:48 sthen Exp $
--- src/lib-index/mail-index.c.orig Thu Oct 29 23:13:10 2009
+++ src/lib-index/mail-index.c Thu Oct 29 23:14:23 2009
@@ -347,6 +347,11 @@ static int mail_index_open_files(struct mail_index *in
}
ret = mail_transaction_log_create(index->log, FALSE);
+ if (index->map != NULL) {
+ /* log creation could have changed it if someone else
+ just created it. */
+ index->map->hdr.indexid = index->indexid;
+ }
index->initial_create = FALSE;
created = TRUE;
}

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-src_lib_fd-close-on-exec_c,v 1.1 2009/10/30 11:43:48 sthen Exp $
--- src/lib/fd-close-on-exec.c.orig Thu Oct 29 23:12:16 2009
+++ src/lib/fd-close-on-exec.c Thu Oct 29 23:12:34 2009
@@ -29,7 +29,7 @@ void fd_debug_verify_leaks(int first_fd, int last_fd)
struct stat st;
int old_errno;
- for (; first_fd < last_fd; first_fd++) {
+ for (; first_fd <= last_fd; first_fd++) {
if (fcntl(first_fd, F_GETFD, 0) == -1 && errno == EBADF)
continue;

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-src_lib_file-set-size_c,v 1.1 2009/10/30 11:43:48 sthen Exp $
--- src/lib/file-set-size.c.orig Thu Oct 29 23:11:02 2009
+++ src/lib/file-set-size.c Thu Oct 29 23:11:37 2009
@@ -72,7 +72,7 @@ int file_set_size(int fd, off_t size)
i_error("pwrite() failed: %m");
return -1;
}
- offset += size;
+ offset += ret;
}
return 0;
}

View File

@ -0,0 +1,29 @@
$OpenBSD: patch-src_login-common_login-proxy_c,v 1.1 2009/10/30 11:43:48 sthen Exp $
--- src/login-common/login-proxy.c.orig Thu Oct 29 23:18:14 2009
+++ src/login-common/login-proxy.c Thu Oct 29 23:21:10 2009
@@ -181,12 +181,14 @@ login_proxy_new(struct client *client, const char *hos
void login_proxy_free(struct login_proxy *proxy)
{
const char *ipstr;
+ bool detached;
if (proxy->destroying)
return;
proxy->destroying = TRUE;
- if (proxy->client_fd != -1) {
+ detached = proxy->client_fd != -1;
+ if (detached) {
/* detached proxy */
main_unref();
DLLIST_REMOVE(&login_proxies, proxy);
@@ -221,7 +223,8 @@ void login_proxy_free(struct login_proxy *proxy)
i_free(proxy->user);
i_free(proxy);
- main_listen_start();
+ if (detached)
+ main_listen_start();
}
bool login_proxy_is_ourself(struct client *client, const char *host,