commit dovecot12 for openSUSE:Factory
Hello community, here is the log from the commit of package dovecot12 for openSUSE:Factory checked in at Wed Nov 10 20:59:22 CET 2010. -------- --- dovecot12/dovecot12.changes 2010-10-05 00:27:17.000000000 +0200 +++ dovecot12/dovecot12.changes 2010-11-09 01:38:58.000000000 +0100 @@ -1,0 +2,12 @@ +Tue Nov 9 00:05:23 UTC 2010 - alexandre@exatati.com.br + +- Update to 1.2.16: + - imap: Fixed SELECT QRESYNC not to crash on mailbox close if a lot + of changes were being sent. + - pop3: Fixed a potential hang + - mbox: Creating new mailboxes should base permissions on mail root + dir, not always use 0600. + - auth: Disable auth caching entirely for master users +- Add IMAP, POP3 and SIEVE services for SuSEfirewall2 (bnc#635447). + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- dovecot-1.2.15.tar.bz2 New: ---- dovecot-1.2.16.tar.bz2 dovecot-fw ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dovecot12.spec ++++++ --- /var/tmp/diff_new_pack.DyvXkZ/_old 2010-11-10 20:59:01.000000000 +0100 +++ /var/tmp/diff_new_pack.DyvXkZ/_new 2010-11-10 20:59:01.000000000 +0100 @@ -1,5 +1,5 @@ # -# spec file for package dovecot12 (Version 1.2.15) +# spec file for package dovecot12 (Version 1.2.16) # # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -18,8 +18,8 @@ Name: dovecot12 -Version: 1.2.15 -Release: 2 +Version: 1.2.16 +Release: 1 License: BSD3c ; LGPLv2.1+ ; MIT %define dovecot_major_version 1.2 %define dovecot_sieve_version 0.1.18 @@ -100,6 +100,7 @@ Source5: dovecot-rpmlintrc %define dovecot_managesieve_source_dir dovecot-%{dovecot_major_version}-managesieve-%{dovecot_managesieve_version} Source6: http://www.rename-it.nl/dovecot/1.2/%{dovecot_managesieve_source_dir}.tar.bz2 +Source7: %{pkg_name}-fw # PATCH-FEATURE-UPSTREAM dovecot-1.2.13-managesieve-%{dovecot_managesieve_version}.diff.bz2 Patch: http://www.rename-it.nl/dovecot/1.2/dovecot-1.2.15-managesieve-%{dovecot_managesieve_version}.diff.bz2 # PATCH-FEATURE-UPSTREAM dovecot-1.2.4_pie.patch @@ -422,6 +423,9 @@ # useless atm %{__rm} -v %{buildroot}%{_libdir}/%{pkg_name}/dovecot-config +# install firewall services +%{__install} -D -m 644 %{S:7} %{buildroot}%{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{pkg_name} + %clean %{__rm} -rf %{buildroot} @@ -447,6 +451,7 @@ %dir %{_sysconfdir}/%{pkg_name} %config(noreplace) %attr(0644,root,root) %{_sysconfdir}/%{pkg_name}/* %config(noreplace) %{_sysconfdir}/pam.d/%{pkg_name} +%config %{_sysconfdir}/sysconfig/SuSEfirewall2.d/services/%{pkg_name} %dir %{_prefix}/lib/%{pkg_name} %{_prefix}/lib/%{pkg_name}/checkpassword-reply %{_prefix}/lib/%{pkg_name}/dovecot-auth ++++++ dovecot-1.2.15.tar.bz2 -> dovecot-1.2.16.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/ChangeLog new/dovecot-1.2.16/ChangeLog --- old/dovecot-1.2.15/ChangeLog 2010-10-01 23:10:23.000000000 +0200 +++ new/dovecot-1.2.16/ChangeLog 2010-11-08 20:43:55.000000000 +0100 @@ -1,8 +1,72 @@ +2010-11-08 Timo Sirainen <tss@iki.fi> + + * .hgsigs: + Added signature for changeset bc2972a83265 + [cda53154e222] [tip] + + * .hgtags: + Added tag 1.2.16 for changeset bc2972a83265 + [cc1f2e0f12f2] + + * NEWS, configure.in: + Released v1.2.16. + [bc2972a83265] [1.2.16] + +2010-11-04 Timo Sirainen <tss@iki.fi> + + * src/login-common/ssl-proxy-openssl.c: + ssl: Call OpenSSL_add_all_algorithms() to make some OpenSSL versions + happy. + [e388554e373f] + +2010-11-02 Timo Sirainen <tss@iki.fi> + + * src/lib-storage/list/mailbox-list-maildir-iter.c: + lib-storage: Maildir++ mailbox listing could have given wrong flags + to parent mailboxes. + [8c8bde0f9120] + + * src/auth/auth-request.c, src/auth/passdb-cache.c: + auth: Disable auth caching entirely for master users. The cache key + contains only the master username, without the logged-in username, + so wrong data could be looked up from cache. + [ec7ce2647131] + + * src/imap/cmd-select.c: + imap: Fixed SELECT QRESYNC not to crash on mailbox close if a lot of + changes were being sent. + [b30af25c622d] + +2010-10-25 Timo Sirainen <tss@iki.fi> + + * src/lib-storage/index/mbox/mbox-storage.c: + mbox: Creating new mailboxes should base permissions on mail root + dir, not always use 0600. + [45769d0cc39c] + +2010-10-16 Timo Sirainen <tss@iki.fi> + + * src/pop3/client.c: + pop3: Fixed a potential hang. + [b2d30a8d3fb4] + +2010-10-14 Timo Sirainen <tss@iki.fi> + + * src/lib-storage/index/maildir/maildir-util.c: + maildir: Check correctly if file is a symlink. Patch by Mike Abbott + / Apple. + [1ecf1c3f7ecf] + + * src/lib-storage/index/index-mail.c: + lib-storage: Fixed mbox/cydir crashing on failed cache parsing + deinit. + [1b40e217e020] + 2010-10-01 Timo Sirainen <tss@iki.fi> * .hgsigs: Added signature for changeset d0500786b046 - [0149beb01eec] [tip] + [0149beb01eec] * .hgtags: Added tag 1.2.15 for changeset d0500786b046 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/NEWS new/dovecot-1.2.16/NEWS --- old/dovecot-1.2.15/NEWS 2010-10-01 22:54:43.000000000 +0200 +++ new/dovecot-1.2.16/NEWS 2010-11-08 20:39:16.000000000 +0100 @@ -1,3 +1,12 @@ +v1.2.16 2010-11-08 Timo Sirainen <tss@iki.fi> + + - imap: Fixed SELECT QRESYNC not to crash on mailbox close if a lot + of changes were being sent. + - pop3: Fixed a potential hang + - mbox: Creating new mailboxes should base permissions on mail root + dir, not always use 0600. + - auth: Disable auth caching entirely for master users. + v1.2.15 2010-10-01 Timo Sirainen <tss@iki.fi> * acl: Fixed the logic of merging multiple ACL entries. Now it works as diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/configure new/dovecot-1.2.16/configure --- old/dovecot-1.2.15/configure 2010-10-01 22:45:10.000000000 +0200 +++ new/dovecot-1.2.16/configure 2010-11-08 20:39:47.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.65 for Dovecot 1.2.15. +# Generated by GNU Autoconf 2.65 for Dovecot 1.2.16. # # Report bugs to <dovecot@dovecot.org>. # @@ -701,8 +701,8 @@ # Identity of this package. PACKAGE_NAME='Dovecot' PACKAGE_TARNAME='dovecot' -PACKAGE_VERSION='1.2.15' -PACKAGE_STRING='Dovecot 1.2.15' +PACKAGE_VERSION='1.2.16' +PACKAGE_STRING='Dovecot 1.2.16' PACKAGE_BUGREPORT='dovecot@dovecot.org' PACKAGE_URL='' @@ -1536,7 +1536,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Dovecot 1.2.15 to adapt to many kinds of systems. +\`configure' configures Dovecot 1.2.16 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1606,7 +1606,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Dovecot 1.2.15:";; + short | recursive ) echo "Configuration of Dovecot 1.2.16:";; esac cat <<\_ACEOF @@ -1761,7 +1761,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Dovecot configure 1.2.15 +Dovecot configure 1.2.16 generated by GNU Autoconf 2.65 Copyright (C) 2009 Free Software Foundation, Inc. @@ -2485,7 +2485,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Dovecot $as_me 1.2.15, which was +It was created by Dovecot $as_me 1.2.16, which was generated by GNU Autoconf 2.65. Invocation command line was $ $0 $@ @@ -3295,7 +3295,7 @@ # Define the identity of the package. PACKAGE='dovecot' - VERSION='1.2.15' + VERSION='1.2.16' cat >>confdefs.h <<_ACEOF @@ -23686,7 +23686,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Dovecot $as_me 1.2.15, which was +This file was extended by Dovecot $as_me 1.2.16, which was generated by GNU Autoconf 2.65. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -23752,7 +23752,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -Dovecot config.status 1.2.15 +Dovecot config.status 1.2.16 configured by $0, generated by GNU Autoconf 2.65, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/configure.in new/dovecot-1.2.16/configure.in --- old/dovecot-1.2.15/configure.in 2010-10-01 22:44:50.000000000 +0200 +++ new/dovecot-1.2.16/configure.in 2010-11-08 20:39:28.000000000 +0100 @@ -1,5 +1,5 @@ AC_PREREQ([2.59]) -AC_INIT([Dovecot],[1.2.15],[dovecot@dovecot.org]) +AC_INIT([Dovecot],[1.2.16],[dovecot@dovecot.org]) AC_CONFIG_SRCDIR([src]) AM_INIT_AUTOMAKE([foreign]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/auth/auth-request.c new/dovecot-1.2.16/src/auth/auth-request.c --- old/dovecot-1.2.15/src/auth/auth-request.c 2010-06-07 20:01:11.000000000 +0200 +++ new/dovecot-1.2.16/src/auth/auth-request.c 2010-11-02 18:32:07.000000000 +0100 @@ -244,10 +244,8 @@ extra_fields = request->extra_fields == NULL ? NULL : auth_stream_reply_export(request->extra_fields); - if (passdb_cache == NULL) - return; - - if (passdb->cache_key == NULL) + if (passdb_cache == NULL || passdb->cache_key == NULL || + request->master_user != NULL) return; if (result < 0) { @@ -643,7 +641,8 @@ struct userdb_module *userdb = request->userdb->userdb; const char *str; - if (passdb_cache == NULL || userdb->cache_key == NULL) + if (passdb_cache == NULL || userdb->cache_key == NULL || + request->master_user != NULL) return; str = result == USERDB_RESULT_USER_UNKNOWN ? "" : @@ -662,6 +661,9 @@ struct auth_cache_node *node; bool expired, neg_expired; + if (request->master_user != NULL) + return FALSE; + value = auth_cache_lookup(passdb_cache, request, key, &node, &expired, &neg_expired); if (value == NULL || (expired && !use_expired)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/auth/passdb-cache.c new/dovecot-1.2.16/src/auth/passdb-cache.c --- old/dovecot-1.2.15/src/auth/passdb-cache.c 2010-05-31 19:58:04.000000000 +0200 +++ new/dovecot-1.2.16/src/auth/passdb-cache.c 2010-11-02 18:32:07.000000000 +0100 @@ -32,7 +32,7 @@ int ret; bool expired, neg_expired; - if (passdb_cache == NULL || key == NULL) + if (passdb_cache == NULL || key == NULL || request->master_user != NULL) return FALSE; /* value = password \t ... */ @@ -96,7 +96,7 @@ struct auth_cache_node *node; bool expired, neg_expired; - if (passdb_cache == NULL) + if (passdb_cache == NULL || request->master_user != NULL) return FALSE; value = auth_cache_lookup(passdb_cache, request, key, &node, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/imap/cmd-select.c new/dovecot-1.2.16/src/imap/cmd-select.c --- old/dovecot-1.2.15/src/imap/cmd-select.c 2010-09-01 17:42:47.000000000 +0200 +++ new/dovecot-1.2.16/src/imap/cmd-select.c 2010-11-02 18:13:40.000000000 +0100 @@ -252,11 +252,11 @@ ctx->cmd->func = cmd_select_continue; ctx->cmd->context = ctx; - return FALSE; + return 0; } } - return imap_fetch_deinit(fetch_ctx); + return imap_fetch_deinit(fetch_ctx) < 0 ? -1 : 1; } static int @@ -265,6 +265,7 @@ struct client *client = ctx->cmd->client; struct mailbox_status status; enum mailbox_open_flags open_flags = 0; + int ret; if (readonly) open_flags |= MAILBOX_OPEN_READONLY | MAILBOX_OPEN_KEEP_RECENT; @@ -321,10 +322,12 @@ } if (ctx->qresync_uid_validity == status.uidvalidity) { - if (select_qresync(ctx) < 0) + if ((ret = select_qresync(ctx)) < 0) return -1; + } else { + ret = 1; } - return 0; + return ret; } static void close_selected_mailbox(struct client *client) @@ -393,6 +396,8 @@ } ret = select_open(ctx, mailbox, readonly); + if (ret == 0) + return FALSE; cmd_select_finish(ctx, ret); return TRUE; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/lib-storage/index/index-mail.c new/dovecot-1.2.16/src/lib-storage/index/index-mail.c --- old/dovecot-1.2.15/src/lib-storage/index/index-mail.c 2010-05-24 17:01:15.000000000 +0200 +++ new/dovecot-1.2.16/src/lib-storage/index/index-mail.c 2010-10-14 17:31:02.000000000 +0200 @@ -1402,6 +1402,11 @@ /* we're going to delete this mail anyway, don't bother trying to update cache file */ mail->data.no_caching = TRUE; + + if (mail->data.parser_ctx == NULL) { + /* we didn't even start cache parsing */ + return; + } } /* This is needed with 0 byte mails to get hdr=NULL call done. */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/lib-storage/index/maildir/maildir-util.c new/dovecot-1.2.16/src/lib-storage/index/maildir/maildir-util.c --- old/dovecot-1.2.15/src/lib-storage/index/maildir/maildir-util.c 2010-05-24 17:01:15.000000000 +0200 +++ new/dovecot-1.2.16/src/lib-storage/index/maildir/maildir-util.c 2010-10-14 19:19:43.000000000 +0200 @@ -90,7 +90,7 @@ { struct stat st; - if (lstat(path, &st) == 0 && (st.st_mode & S_IFLNK) != 0) { + if (lstat(path, &st) == 0 && (st.st_mode & S_IFMT) == S_IFLNK) { /* most likely a symlink pointing to a non-existing file */ mail_storage_set_critical(&mbox->storage->storage, "Maildir: Symlink destination doesn't exist: %s", path); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/lib-storage/index/mbox/mbox-storage.c new/dovecot-1.2.16/src/lib-storage/index/mbox/mbox-storage.c --- old/dovecot-1.2.15/src/lib-storage/index/mbox/mbox-storage.c 2010-07-02 16:55:26.000000000 +0200 +++ new/dovecot-1.2.16/src/lib-storage/index/mbox/mbox-storage.c 2010-10-25 17:20:03.000000000 +0200 @@ -7,6 +7,7 @@ #include "restrict-access.h" #include "mkdir-parents.h" #include "unlink-directory.h" +#include "eacces-error.h" #include "mbox-storage.h" #include "mbox-lock.h" #include "mbox-file.h" @@ -732,7 +733,7 @@ { const char *path, *p, *origin; struct stat st; - mode_t mode; + mode_t mode, old_mask; gid_t gid; int fd; @@ -778,8 +779,24 @@ } /* create the mailbox file */ - fd = open(path, O_RDWR | O_CREAT | O_EXCL, 0660); + mailbox_list_get_permissions(_storage->list, NULL, + &mode, &gid, &origin); + old_mask = umask(0); + fd = open(path, O_RDWR | O_CREAT | O_EXCL, mode); + umask(old_mask); if (fd != -1) { + if (gid != (gid_t)-1) { + if (fchown(fd, (uid_t)-1, gid) == 0) { + /* ok */ + } else if (errno == EPERM) { + mail_storage_set_critical(_storage, "%s", + eperm_error_get_chgrp("fchown", path, + gid, origin)); + } else { + mail_storage_set_critical(_storage, + "fchown(%s) failed: %m", path); + } + } (void)close(fd); return 0; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/lib-storage/list/mailbox-list-maildir-iter.c new/dovecot-1.2.16/src/lib-storage/list/mailbox-list-maildir-iter.c --- old/dovecot-1.2.15/src/lib-storage/list/mailbox-list-maildir-iter.c 2010-05-24 17:01:15.000000000 +0200 +++ new/dovecot-1.2.16/src/lib-storage/list/mailbox-list-maildir-iter.c 2010-11-02 20:23:48.000000000 +0100 @@ -38,7 +38,7 @@ static void maildir_fill_parents(struct maildir_list_iterate_context *ctx, struct imap_match_glob *glob, bool update_only, - string_t *mailbox, enum mailbox_info_flags flags) + string_t *mailbox) { struct mail_namespace *ns = ctx->ctx.list->ns; struct mailbox_node *node; @@ -81,7 +81,7 @@ } if (!update_only) node->flags |= MAILBOX_MATCHED; - node->flags |= MAILBOX_CHILDREN | flags; + node->flags |= MAILBOX_CHILDREN; node->flags &= ~MAILBOX_NOCHILDREN; node_fix_parents(node); } @@ -202,7 +202,7 @@ if ((match & IMAP_MATCH_PARENT) != 0) { T_BEGIN { maildir_fill_parents(ctx, glob, update_only, - mailbox, flags); + mailbox); } T_END; } else { created = FALSE; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/login-common/ssl-proxy-openssl.c new/dovecot-1.2.16/src/login-common/ssl-proxy-openssl.c --- old/dovecot-1.2.15/src/login-common/ssl-proxy-openssl.c 2010-05-24 17:01:15.000000000 +0200 +++ new/dovecot-1.2.16/src/login-common/ssl-proxy-openssl.c 2010-11-04 17:38:03.000000000 +0100 @@ -947,6 +947,7 @@ SSL_library_init(); SSL_load_error_strings(); + OpenSSL_add_all_algorithms(); extdata_index = SSL_get_ex_new_index(0, dovecot, NULL, NULL, NULL); ssl_proxy_init_server(certfile, keyfile); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/dovecot-1.2.15/src/pop3/client.c new/dovecot-1.2.16/src/pop3/client.c --- old/dovecot-1.2.15/src/pop3/client.c 2010-05-24 17:01:15.000000000 +0200 +++ new/dovecot-1.2.16/src/pop3/client.c 2010-10-25 17:22:00.000000000 +0200 @@ -501,7 +501,15 @@ client_input(client); } - return client->cmd == NULL; + if (client->cmd != NULL) { + /* command not finished yet */ + return 0; + } else if (client->io == NULL) { + /* data still in output buffer, get back here to add IO */ + return 0; + } else { + return 1; + } } void clients_init(void) ++++++ dovecot-fw ++++++ ## Name: Dovecot Server ## Description: Opens ports for the Dovecot Server # space separated list of allowed TCP ports TCP="imap imaps pop3 pop3s sieve 4190" # space separated list of allowed UDP ports UDP="" # space separated list of allowed RPC services RPC="" # space separated list of allowed IP protocols IP="" # space separated list of allowed UDP broadcast ports BROADCAST="" ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org
participants (1)
-
root@hilbert.suse.de