Mailinglist Archive: opensuse-commit (768 mails)
| < Previous | Next > |
commit dovecot
- From: root@xxxxxxxxxxxxxxx (h_root)
- Date: Wed, 25 Jun 2008 19:15:21 +0200
- Message-id: <20080625171522.4529F67816D@xxxxxxxxxxxxxxx>
Hello community,
here is the log from the commit of package dovecot
checked in at Wed Jun 25 19:15:21 CEST 2008.
--------
--- dovecot/dovecot.changes 2008-03-20 16:35:37.000000000 +0100
+++ dovecot/dovecot.changes 2008-06-16 18:10:56.000000000 +0200
@@ -1,0 +2,23 @@
+Wed Jun 11 21:29:28 CEST 2008 - mrueckert@xxxxxxx
+
+- update to version 1.0.14
+ * mbox: Enable mail_privileged_group while creating INBOX.
+ - IMAP: Fixed a rare crash in FETCH BODY/BODYSTRUCTURE
+ - IMAP: If mailbox is selected with EXAMINE, ignore flag changes
+ - proxy: Login success reply was sent in two IP packets, which
+ confused some IMAP/POP3 clients
+ - ACL plugin leaked memory a bit
+ - dovecot-auth: allow_nets setting with network masks didn't work
+ correctly with big endian machines.
+- update managesieve patch to
+ dovecot-1.0.14-MANAGESIEVE-v9.3.diff:
+ rediffed for 1.0.14
+
+-------------------------------------------------------------------
+Thu May 15 18:43:14 CEST 2008 - mrueckert@xxxxxxx
+
+- update the managesieve patch to
+ dovecot-1.0.13-MANAGESIEVE-v9.3.diff:
+ documentation updates and minor fixes
+
+-------------------------------------------------------------------
Old:
----
dovecot-1.0.12-MANAGESIEVE-v9.2.diff.bz2
dovecot-1.0.13.tar.bz2
New:
----
dovecot-1.0.14-MANAGESIEVE-v9.3.diff.bz2
dovecot-1.0.14.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ dovecot.spec ++++++
--- /var/tmp/diff_new_pack.Ue5919/_old 2008-06-25 19:15:01.000000000 +0200
+++ /var/tmp/diff_new_pack.Ue5919/_new 2008-06-25 19:15:01.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package dovecot (Version 1.0.13)
+# spec file for package dovecot (Version 1.0.14)
#
# Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -12,8 +12,8 @@
Name: dovecot
-Version: 1.0.13
-Release: 2
+Version: 1.0.14
+Release: 1
%define dovecot_sieve_version 1.0.2
#
Group: Productivity/Networking/Email/Servers
@@ -56,7 +56,7 @@
Patch2: dovecot-sieve-1.0.2_cmu_sieve_and_userdir.patch
Patch3: dovecot-sieve-1.0.2_informational_logging_of_vacation.patch
Patch4: dovecot-pkgconfig.patch
-Patch5:
http://sinas.rename-it.nl/~sirius/dovecot-1.0.12-MANAGESIEVE-v9.2.diff.bz2
+Patch5:
http://www.rename-it.nl/dovecot/1.0/dovecot-1.0.14-MANAGESIEVE-v9.3.diff.bz2
#
Summary: IMAP and POP3 Server Written Primarily with Security in Mind
@@ -76,6 +76,7 @@
Timo Sirainen <tss@xxxxxx>
%package devel
+License: BSD 3-Clause; LGPL v2.1 or later; X11/MIT
Group: Development/Libraries/C and C++
Requires: %{name} = %{version}
#
@@ -303,6 +304,23 @@
# %{_libdir}/%{pkg_name}/dovecot-config
%changelog
+* Wed Jun 11 2008 mrueckert@xxxxxxx
+- update to version 1.0.14
+ * mbox: Enable mail_privileged_group while creating INBOX.
+ - IMAP: Fixed a rare crash in FETCH BODY/BODYSTRUCTURE
+ - IMAP: If mailbox is selected with EXAMINE, ignore flag changes
+ - proxy: Login success reply was sent in two IP packets, which
+ confused some IMAP/POP3 clients
+ - ACL plugin leaked memory a bit
+ - dovecot-auth: allow_nets setting with network masks didn't work
+ correctly with big endian machines.
+- update managesieve patch to
+ dovecot-1.0.14-MANAGESIEVE-v9.3.diff:
+ rediffed for 1.0.14
+* Thu May 15 2008 mrueckert@xxxxxxx
+- update the managesieve patch to
+ dovecot-1.0.13-MANAGESIEVE-v9.3.diff:
+ documentation updates and minor fixes
* Thu Mar 20 2008 mrueckert@xxxxxxx
- replace filerequires with requires on pwdutils
* Tue Mar 18 2008 mrueckert@xxxxxxx
@@ -409,7 +427,7 @@
* Thu Nov 01 2007 mrueckert@xxxxxxx
- added dovecot-1.0.7-MANAGESIEVE-v8.diff.gz:
add managesieve support (buildservice only)
-* Mon Oct 29 2007 mrueckert@xxxxxxx
+* Tue Oct 30 2007 mrueckert@xxxxxxx
- update to v1.0.7
- deliver: v1.0.6's "From " line ignoring could have written to
a bad location in stack, possibly causing problems.
@@ -521,7 +539,7 @@
(pulled from the repos, full changes messages in the patch)
- removed dovecot-1.0.1_latest_fixes.patch:
included in new release
-* Mon Jun 18 2007 mrueckert@xxxxxxx
+* Tue Jun 19 2007 mrueckert@xxxxxxx
- update to v1.0.1
| * deliver: If Return-Path doesn't contain user and domain,
| don't try to bounce the mail (this is how it was supposed to
@@ -600,7 +618,7 @@
| exist, create it.
| - Convert plugin: Mailbox names weren't converted in
| subscription list.
-* Fri Apr 06 2007 mrueckert@xxxxxxx
+* Sat Apr 07 2007 mrueckert@xxxxxxx
- updated to v1.0rc30
| * PAM: Lowercase the PAM service name when calling with
| "args = *". Linux PAM did this internally already, but at
@@ -669,11 +687,11 @@
| - deliver: If user lookup returned "unknown user", it logged
| "BUG: Unexpected input"
| - convert plugin didn't convert INBOX
-* Wed Mar 21 2007 mrueckert@xxxxxxx
+* Thu Mar 22 2007 mrueckert@xxxxxxx
- fix order of changelog entries
* Fri Mar 16 2007 mrueckert@xxxxxxx
- remove dovecot-config from the filelist
-* Thu Mar 15 2007 mrueckert@xxxxxxx
+* Fri Mar 16 2007 mrueckert@xxxxxxx
- update to version 1.0rc27
| + mbox and index file code handles silently out of quota/disk
| space errors (maildir still has problems). They will give
@@ -813,7 +831,7 @@
| - BSD filesystem quota was counted wrong. Patch by Manuel Bouyer
| - LIST: If namespace has a prefix and inbox=no, don't list
| prefix.inbox if it happens to exist when listing for %%.
-* Mon Feb 05 2007 mrueckert@xxxxxxx
+* Tue Feb 06 2007 mrueckert@xxxxxxx
- update to 1.0rc21
| - Cache file handling could have crashed rc20
- additional changes from 1.0rc20
@@ -1416,7 +1434,7 @@
* Sat Oct 23 2004 mmj@xxxxxxx
- Switch heimdal-* to kerberos-devel-packages in #nfb as pr. requst
of Mr. Carsten Höger
-* Sat Sep 04 2004 mmj@xxxxxxx
+* Sun Sep 05 2004 mmj@xxxxxxx
- Update to dovecot-0.99.11 which mainly is a bugfix release with:
o 127.* and ::1 IP addresses are treated as secured with
disable_plaintext_auth = yes
++++++ dovecot-1.0.12-MANAGESIEVE-v9.2.diff.bz2 ->
dovecot-1.0.14-MANAGESIEVE-v9.3.diff.bz2 ++++++
Files dovecot/dovecot-1.0.12-MANAGESIEVE-v9.2.diff.bz2 and
dovecot/dovecot-1.0.14-MANAGESIEVE-v9.3.diff.bz2 differ
++++++ dovecot-1.0.13.tar.bz2 -> dovecot-1.0.14.tar.bz2 ++++++
++++ 4144 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/ChangeLog new/dovecot-1.0.14/ChangeLog
--- old/dovecot-1.0.13/ChangeLog 2008-03-09 11:50:19.000000000 +0100
+++ new/dovecot-1.0.14/ChangeLog 2008-06-02 22:36:44.000000000 +0200
@@ -1,8 +1,90 @@
+2008-06-02 Timo Sirainen <tss@xxxxxx>
+
+ * .hgtags:
+ Added tag 1.0.14 for changeset 224a96ed4c8b
+ [54f1e7a9fd77] [tip]
+
+ * NEWS, configure.in:
+ Released v1.0.14.
+ [224a96ed4c8b] [1.0.14]
+
+2008-05-27 Timo Sirainen <tss@xxxxxx>
+
+ * dovecot-example.conf, src/lib-storage/index/mbox/mbox-storage.c:
+ mbox: If INBOX creation fails because of EACCES, try with privileged
+ group enabled.
+ [932768a879c6]
+
+2008-05-15 Timo Sirainen <tss@xxxxxx>
+
+ * src/auth/auth-request.c:
+ allow_nets didn't work correctly with big endian machines.
+ [71c02fdf1b59]
+
+2008-05-09 Timo Sirainen <tss@xxxxxx>
+
+ * src/lib/data-stack.c:
+ Removed unused variable popped_frame_pos. Patch by Diego Liziero.
+ [3949304a8f8f]
+
+2008-05-07 Timo Sirainen <tss@xxxxxx>
+
+ * src/login-common/ssl-proxy-openssl.c:
+ If SSL function fails and there are no errors, return "Unknown
+ error" instead of "Success" as the reason.
+ [43785ad99523]
+
+2008-04-30 Timo Sirainen <tss@xxxxxx>
+
+ * src/plugins/acl/acl-cache.c:
+ Fixed a memory leak in ACL plugin.
+ [c706bfebc76e]
+
+2008-04-24 Timo Sirainen <tss@xxxxxx>
+
+ * src/imap-login/imap-proxy.c, src/pop3-login/pop3-proxy.c:
+ Send the success reply in one write. Based on patch by Onno
+ Molenkamp.
+ [48bfe0940a07]
+
+ * src/pop3/client.c:
+ If remote disconnects, log "Connection closed: reason" just like
+ IMAP does.
+ [e45d659a814b]
+
+2008-03-30 Timo Sirainen <tss@xxxxxx>
+
+ * src/imap/cmd-store.c:
+ STORE: Ignore flag changes for read-only (especially EXAMINEd)
+ mailboxes.
+ [cf92e479d9ae]
+
+2008-03-23 Timo Sirainen <tss@xxxxxx>
+
+ * src/lib/randgen.c:
+ random_fill(): If read(/dev/urandom) returned EINTR, it could have
+ written random data before the given buffer (buffer underflow).
+ Pointed out by Sami Farin.
+
+ This function is used only by auth and pop3-login (with APOP
+ enabled) processes, so normal users shouldn't be able to send
+ signals to any of them to exploit this. Even then the data would be
+ random, making it quite unlikely to cause anything else than a
+ crash.
+ [9c3adc775c92]
+
+2008-03-11 Timo Sirainen <tss@xxxxxx>
+
+ * src/lib-storage/index/index-mail.c:
+ BODY/BODYSTRUCTURE fetch: Don't crash if we already had message
+ parts parsed.
+ [538f8892a2f1]
+
2008-03-09 Timo Sirainen <tss@xxxxxx>
* .hgtags:
Added tag 1.0.13 for changeset 894f003d9f5f
- [975d78cadc1e] [tip]
+ [975d78cadc1e]
* NEWS, configure.in:
Released v1.0.13.
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/config.h new/dovecot-1.0.14/config.h
--- old/dovecot-1.0.13/config.h 2008-03-09 11:45:55.000000000 +0100
+++ new/dovecot-1.0.14/config.h 2008-06-02 22:32:03.000000000 +0200
@@ -91,7 +91,7 @@
/* GSSAPI headers in gssapi.h */
/* #undef HAVE_GSSAPI_H */
-/* Define if you have the iconv() function. */
+/* Define if you have the iconv() function and it works. */
#define HAVE_ICONV 1
/* Define to 1 if you have the `inet_aton' function. */
@@ -404,13 +404,13 @@
#define PACKAGE_NAME "dovecot"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "dovecot 1.0.13"
+#define PACKAGE_STRING "dovecot 1.0.14"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "dovecot"
/* Define to the version of this package. */
-#define PACKAGE_VERSION "1.0.13"
+#define PACKAGE_VERSION "1.0.14"
/* Build with BSD authentication support */
/* #undef PASSDB_BSDAUTH */
@@ -515,7 +515,7 @@
#define VA_COPY_AS_ARRAY 1
/* Version number of package */
-#define VERSION "1.0.13"
+#define VERSION "1.0.14"
/* Define to 1 if your processor stores words with the most significant byte
first (like Motorola and SPARC, unlike Intel and VAX). */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/config.h.in new/dovecot-1.0.14/config.h.in
--- old/dovecot-1.0.13/config.h.in 2008-03-09 11:45:56.000000000 +0100
+++ new/dovecot-1.0.14/config.h.in 2008-06-02 22:31:24.000000000 +0200
@@ -90,7 +90,7 @@
/* GSSAPI headers in gssapi.h */
#undef HAVE_GSSAPI_H
-/* Define if you have the iconv() function. */
+/* Define if you have the iconv() function and it works. */
#undef HAVE_ICONV
/* Define to 1 if you have the `inet_aton' function. */
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/configure.in new/dovecot-1.0.14/configure.in
--- old/dovecot-1.0.13/configure.in 2008-03-09 11:45:25.000000000 +0100
+++ new/dovecot-1.0.14/configure.in 2008-06-02 22:31:00.000000000 +0200
@@ -1,5 +1,5 @@
AC_PREREQ([2.59])
-AC_INIT([dovecot],[1.0.13],[dovecot@xxxxxxxxxxx])
+AC_INIT([dovecot],[1.0.14],[dovecot@xxxxxxxxxxx])
AC_CONFIG_SRCDIR([src])
AM_INIT_AUTOMAKE
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/dovecot-example.conf new/dovecot-1.0.14/dovecot-example.conf
--- old/dovecot-1.0.13/dovecot-example.conf 2008-03-04 06:48:12.000000000
+0100
+++ new/dovecot-1.0.14/dovecot-example.conf 2008-05-27 13:48:26.000000000
+0200
@@ -253,7 +253,7 @@
#}
# Group to enable temporarily for privileged operations. Currently this is
-# used only for creating mbox dotlock files when creation fails for INBOX.
+# used only with INBOX when either its initial creation or dotlocking fails.
# Typically this is set to "mail" to give access to /var/mail.
#mail_privileged_group =
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/NEWS new/dovecot-1.0.14/NEWS
--- old/dovecot-1.0.13/NEWS 2008-03-09 11:25:49.000000000 +0100
+++ new/dovecot-1.0.14/NEWS 2008-06-02 22:35:56.000000000 +0200
@@ -1,3 +1,15 @@
+v1.0.14 2008-06-02 Timo Sirainen <tss@xxxxxx>
+
+ * mbox: Enable mail_privileged_group while creating INBOX.
+
+ - IMAP: Fixed a rare crash in FETCH BODY/BODYSTRUCTURE
+ - IMAP: If mailbox is selected with EXAMINE, ignore flag changes
+ - proxy: Login success reply was sent in two IP packets, which
+ confused some IMAP/POP3 clients
+ - ACL plugin leaked memory a bit
+ - dovecot-auth: allow_nets setting with network masks didn't work
+ correctly with big endian machines.
+
v1.0.13 2008-03-09 Timo Sirainen <tss@xxxxxx>
* Fixed a security hole in blocking passdbs (MySQL always. PAM, passwd
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/auth/auth-request.c
new/dovecot-1.0.14/src/auth/auth-request.c
--- old/dovecot-1.0.13/src/auth/auth-request.c 2008-03-09 11:44:26.000000000
+0100
+++ new/dovecot-1.0.14/src/auth/auth-request.c 2008-05-15 07:34:33.000000000
+0200
@@ -825,7 +825,7 @@
struct ip_addr src_ip, net_ip;
const char *p;
unsigned int max_bits, bits, pos, i;
- uint32_t mask;
+ uint32_t mask, i1, i2;
if (net_ipv6_mapped_ipv4_convert(ip, &src_ip) == 0)
ip = &src_ip;
@@ -860,17 +860,19 @@
if (ip1[i] != ip2[i])
return 0;
}
+ i1 = htonl(ip1[i]);
+ i2 = htonl(ip2[i]);
/* check the last full bytes */
- for (mask = 0xff; pos + 8 <= bits; pos += 8, mask <<= 8) {
- if ((ip1[i] & mask) != (ip2[i] & mask))
+ for (mask = 0xff000000; pos + 8 <= bits; pos += 8, mask >>= 8) {
+ if ((i1 & mask) != (i2 & mask))
return 0;
}
/* check the last bits, they're reversed in bytes */
bits -= pos;
- for (mask = 0x80 << (pos % 32); bits > 0; bits--, mask >>= 1) {
- if ((ip1[i] & mask) != (ip2[i] & mask))
+ for (mask = 0x80000000 >> (pos % 32); bits > 0; bits--, mask >>= 1) {
+ if ((i1 & mask) != (i2 & mask))
return 0;
}
return 1;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/imap/cmd-store.c new/dovecot-1.0.14/src/imap/cmd-store.c
--- old/dovecot-1.0.13/src/imap/cmd-store.c 2007-12-11 19:52:08.000000000
+0100
+++ new/dovecot-1.0.14/src/imap/cmd-store.c 2008-03-30 10:57:06.000000000
+0200
@@ -86,6 +86,12 @@
if (search_arg == NULL)
return TRUE;
+ if (mailbox_is_readonly(box)) {
+ return cmd_sync(cmd, MAILBOX_SYNC_FLAG_FAST |
+ (cmd->uid ? 0 : MAILBOX_SYNC_FLAG_NO_EXPUNGES),
+ 0, "OK Store ignored with read-only mailbox.");
+ }
+
t = mailbox_transaction_begin(box, !silent ? 0 :
MAILBOX_TRANSACTION_FLAG_HIDE);
keywords = keywords_list != NULL || modify_type == MODIFY_REPLACE ?
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/imap-login/imap-proxy.c
new/dovecot-1.0.14/src/imap-login/imap-proxy.c
--- old/dovecot-1.0.13/src/imap-login/imap-proxy.c 2007-12-11
19:52:08.000000000 +0100
+++ new/dovecot-1.0.14/src/imap-login/imap-proxy.c 2008-04-24
15:07:15.000000000 +0200
@@ -45,9 +45,12 @@
return 0;
} else if (strncmp(line, "P OK ", 5) == 0) {
/* Login successful. Send this line to client. */
- (void)o_stream_send_str(client->output, client->cmd_tag);
- (void)o_stream_send_str(client->output, line + 1);
- (void)o_stream_send(client->output, "\r\n", 2);
+ str = t_str_new(128);
+ str_append(str, client->cmd_tag);
+ str_append(str, line + 1);
+ str_append(str, "\r\n");
+ (void)o_stream_send(client->output,
+ str_data(str), str_len(str));
msg = t_strdup_printf("proxy(%s): started proxying to %s:%u",
client->common.virtual_user,
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/lib/data-stack.c new/dovecot-1.0.14/src/lib/data-stack.c
--- old/dovecot-1.0.13/src/lib/data-stack.c 2007-12-22 02:09:56.000000000
+0100
+++ new/dovecot-1.0.14/src/lib/data-stack.c 2008-05-09 18:02:44.000000000
+0200
@@ -139,7 +139,6 @@
unsigned int t_pop(void)
{
struct stack_frame_block *frame_block;
- int popped_frame_pos;
if (frame_pos < 0)
i_panic("t_pop() called with empty stack");
@@ -160,7 +159,6 @@
current_block->next = NULL;
}
- popped_frame_pos = frame_pos;
if (frame_pos > 0)
frame_pos--;
else {
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/lib/randgen.c new/dovecot-1.0.14/src/lib/randgen.c
--- old/dovecot-1.0.13/src/lib/randgen.c 2007-12-11 19:52:09.000000000
+0100
+++ new/dovecot-1.0.14/src/lib/randgen.c 2008-03-23 16:56:42.000000000
+0100
@@ -7,6 +7,8 @@
#ifdef HAVE_DEV_URANDOM
+#define URANDOM_PATH "/dev/urandom"
+
#include "fd-close-on-exec.h"
#include <unistd.h>
#include <fcntl.h>
@@ -22,10 +24,16 @@
i_assert(init_refcount > 0);
i_assert(size < SSIZE_T_MAX);
- for (pos = 0; pos < size; pos += ret) {
+ for (pos = 0; pos < size; ) {
ret = read(urandom_fd, (char *) buf + pos, size - pos);
- if (ret < 0 && errno != EINTR)
- i_fatal("Error reading from /dev/urandom: %m");
+ if (ret <= 0) {
+ if (ret == 0)
+ i_fatal("EOF when reading from "URANDOM_PATH);
+ else if (errno != EINTR)
+ i_fatal("read("URANDOM_PATH") failed: %m");
+ } else {
+ pos += ret;
+ }
}
}
@@ -36,13 +44,13 @@
if (init_refcount++ > 0)
return;
- urandom_fd = open("/dev/urandom", O_RDONLY);
+ urandom_fd = open(URANDOM_PATH, O_RDONLY);
if (urandom_fd == -1) {
if (errno == ENOENT) {
- i_fatal("/dev/urandom doesn't exist, "
+ i_fatal(URANDOM_PATH" doesn't exist, "
"currently we require it");
} else {
- i_fatal("Can't open /dev/urandom: %m");
+ i_fatal("Can't open "URANDOM_PATH": %m");
}
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/lib-storage/index/index-mail.c
new/dovecot-1.0.14/src/lib-storage/index/index-mail.c
--- old/dovecot-1.0.13/src/lib-storage/index/index-mail.c 2008-02-11
15:54:59.000000000 +0100
+++ new/dovecot-1.0.14/src/lib-storage/index/index-mail.c 2008-03-11
02:57:25.000000000 +0100
@@ -569,9 +569,8 @@
i_assert(data->parts->next == NULL);
old_offset = data->stream->v_offset;
- i_stream_seek(data->stream,
- data->hdr_size.physical_size);
- message_parse_from_parts(data->parts->children,
+ i_stream_seek(data->stream, 0);
+ message_parse_from_parts(data->parts,
data->stream,
parse_bodystructure_part_header,
mail->data_pool);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/lib-storage/index/mbox/mbox-storage.c
new/dovecot-1.0.14/src/lib-storage/index/mbox/mbox-storage.c
--- old/dovecot-1.0.13/src/lib-storage/index/mbox/mbox-storage.c
2008-03-04 06:39:30.000000000 +0100
+++ new/dovecot-1.0.14/src/lib-storage/index/mbox/mbox-storage.c
2008-05-27 13:47:45.000000000 +0200
@@ -4,6 +4,7 @@
#include "ioloop.h"
#include "buffer.h"
#include "istream.h"
+#include "restrict-access.h"
#include "home-expand.h"
#include "mkdir-parents.h"
#include "unlink-directory.h"
@@ -537,6 +538,12 @@
/* make sure inbox file itself exists */
fd = open(storage->inbox_path, O_RDWR | O_CREAT | O_EXCL, 0660);
+ if (fd == -1 && errno == EACCES) {
+ /* try again with increased privileges */
+ (void)restrict_access_use_priv_gid();
+ fd = open(storage->inbox_path, O_RDWR | O_CREAT | O_EXCL, 0660);
+ restrict_access_drop_priv_gid();
+ }
if (fd != -1)
(void)close(fd);
else if (errno == ENOTDIR &&
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/login-common/ssl-proxy-openssl.c
new/dovecot-1.0.14/src/login-common/ssl-proxy-openssl.c
--- old/dovecot-1.0.13/src/login-common/ssl-proxy-openssl.c 2007-12-11
19:52:09.000000000 +0100
+++ new/dovecot-1.0.14/src/login-common/ssl-proxy-openssl.c 2008-05-07
21:43:47.000000000 +0200
@@ -307,8 +307,11 @@
size_t err_size = 256;
err = ERR_get_error();
- if (err == 0)
- return strerror(errno);
+ if (err == 0) {
+ if (errno != 0)
+ return strerror(errno);
+ return "Unknown error";
+ }
buf = t_malloc(err_size);
buf[err_size-1] = '\0';
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/plugins/acl/acl-cache.c
new/dovecot-1.0.14/src/plugins/acl/acl-cache.c
--- old/dovecot-1.0.13/src/plugins/acl/acl-cache.c 2007-12-11
19:52:09.000000000 +0100
+++ new/dovecot-1.0.14/src/plugins/acl/acl-cache.c 2008-04-30
19:21:51.000000000 +0200
@@ -63,6 +63,8 @@
struct acl_cache *cache = *_cache;
*_cache = NULL;
+
+ acl_cache_flush_all(cache);
array_free(&cache->right_idx_name_map);
hash_destroy(cache->right_name_idx_map);
hash_destroy(cache->objects);
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/pop3/client.c new/dovecot-1.0.14/src/pop3/client.c
--- old/dovecot-1.0.13/src/pop3/client.c 2008-01-09 04:07:20.000000000
+0100
+++ new/dovecot-1.0.14/src/pop3/client.c 2008-04-24 14:46:48.000000000
+0200
@@ -231,11 +231,20 @@
return str_c(str);
}
+static const char *client_get_disconnect_reason(struct client *client)
+{
+ errno = client->input->stream_errno != 0 ?
+ client->input->stream_errno :
+ client->output->stream_errno;
+ return errno == 0 || errno == EPIPE ? "Connection closed" :
+ t_strdup_printf("Connection closed: %m");
+}
+
void client_destroy(struct client *client, const char *reason)
{
if (!client->disconnected) {
if (reason == NULL)
- reason = "Disconnected";
+ reason = client_get_disconnect_reason(client);
i_info("%s %s", reason, client_stats(client));
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn
--exclude=.svnignore --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/dovecot-1.0.13/src/pop3-login/pop3-proxy.c
new/dovecot-1.0.14/src/pop3-login/pop3-proxy.c
--- old/dovecot-1.0.13/src/pop3-login/pop3-proxy.c 2007-12-11
19:52:09.000000000 +0100
+++ new/dovecot-1.0.14/src/pop3-login/pop3-proxy.c 2008-04-24
15:06:23.000000000 +0200
@@ -99,8 +99,8 @@
break;
/* Login successful. Send this line to client. */
+ line = t_strconcat(line, "\r\n", NULL);
(void)o_stream_send_str(client->output, line);
- (void)o_stream_send(client->output, "\r\n", 2);
msg = t_strdup_printf("proxy(%s): started proxying to %s:%u",
client->common.virtual_user,
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx
| < Previous | Next > |