postgres & mysql now conditional build options, add FAQ to doc remove

execute bit on example scripts so perl modules don't become rpm
    dependencies
This commit is contained in:
John Dennis 2005-01-13 20:24:42 +00:00
parent f0dad0c4be
commit 299eec03b3
3 changed files with 85 additions and 13 deletions

46
dovecot-REDHAT-FAQ.txt Normal file
View File

@ -0,0 +1,46 @@
Q. We used to use University of Washington IMAP (UW IMAP), in the Red
Hat distribution, the rpm was named "imap". We would now like to use
dovecot and take advantage of its support for Maildir format, but
we have existing user mail files in the old mbox format we need to
migrate. How can we do this?
A. Read the documentation in
/usr/share/doc/dovecot-*/UW-to-Dovecot-Migration. You will also
find scripts there to help you.
Q. I'm getting errors in /var/log/maillog for dotlock failed,
permission denied. The actual error probably looks like this with
user replaced by a user name on your system.
imap(user): file_lock_dotlock() failed with mbox file /var/spool/mail/user: Permission denied
A. This is occuring because:
1) The user INBOX is in the system spool directory which is:
"drwxrwxr-x root mail"
2) Dovecot is configured to create "dotlock" locking files.
3) After an imap user logs in the imap process runs as that user
and the spool directory permissions does not allow that user to
creat new files (e.g. dot lock files).
The possible solutions are:
1) Don't locate the user's INBOX in the system spool directory,
have mail delivered to another location, for instance his home
directory (this may not be possible to change for existing
systems). This is an MTA configuration.
2) In the dovecot configuration file set the variable
mail_extra_groups to "mail". This will add the mail group to the
list of groups that the logged in imap user will have permission
for. His imap process can then create files in the mail spool
file. However the user's imap process now has mail group
privileges, you will have to evaluate the extent of the security
threat this poses for your site.
3) Disable the use of dotlocks by setting dovecots config parameter
mbox_locks to a value that does not include dotlock, for
example, fcntl. However, note dotlocks are considered robust,
especially for NFS.

View File

@ -1,7 +1,6 @@
diff -u dovecot-0.99.13/dovecot-example.conf dovecot-0.99.13/dovecot.conf
--- dovecot-0.99.13/dovecot-example.conf 2004-12-29 13:00:24.000000000 -0500
+++ dovecot-0.99.13/dovecot.conf 2005-01-07 13:17:53.000000000 -0500
@@ -1,17 +1,11 @@
+++ dovecot-0.99.13/dovecot.conf 2005-01-13 14:24:24.000000000 -0500
@@ -1,30 +1,24 @@
## Dovecot 1.0 configuration file
-# Default values are shown after each value, it's not required to uncomment
@ -20,7 +19,13 @@ diff -u dovecot-0.99.13/dovecot-example.conf dovecot-0.99.13/dovecot.conf
# IP or host address where to listen in for connections. It's not currently
# possible to specify multiple addresses. "*" listens in all IPv4 interfaces.
@@ -23,8 +17,8 @@
# "[::]" listens in all IPv6 interfaces, but may also listen in all IPv4
# interfaces depending on the operating system. You can specify ports with
# "host:port".
-#imap_listen = *
-#pop3_listen = *
+imap_listen = [::]
+pop3_listen = [::]
# IP or host address where to listen in for SSL connections. Defaults
# to above non-SSL equilevants if not specified.

View File

@ -1,9 +1,13 @@
Summary: Dovecot Secure imap server
Name: dovecot
Version: 0.99.13
Release: 1.devel
Release: 2.devel
License: LGPL
Group: System Environment/Daemons
%define build_postgres 1
%define build_mysql 1
Source: %{name}-%{version}.tar.gz
Source1: dovecot.init
Source2: dovecot.pam
@ -11,6 +15,7 @@ Source3: maildir-migration.txt
Source4: migrate-folders
Source5: migrate-users
Source6: perfect_maildir.pl
Source7: dovecot-REDHAT-FAQ.txt
Patch100: dovecot-conf.patch
Patch101: dovecot-configfile.patch
Patch102: dovecot-0.99-no-literal-plus-capability.patch
@ -18,8 +23,6 @@ Patch102: dovecot-0.99-no-literal-plus-capability.patch
# Patches 500+ from upstream fixes
URL: http://dovecot.procontrol.fi/
Buildroot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires: mysql-devel
BuildRequires: postgresql-devel
BuildRequires: openssl-devel
BuildRequires: openldap-devel
BuildRequires: pam-devel
@ -27,6 +30,16 @@ BuildRequires: pkgconfig
BuildRequires: zlib-devel
Prereq: openssl, /sbin/chkconfig, /usr/sbin/useradd
%if %{build_postgres}
BuildRequires: postgresql-devel
Prereq: postgresql
%endif
%if %{build_mysql}
BuildRequires: mysql-devel
Prereq: mysql
%endif
%define docdir %{_docdir}/%{name}-%{version}
%define ssldir /usr/share/ssl
%define restart_flag /tmp/%{name}-restart-after-rpm-install
@ -54,8 +67,12 @@ automake -a
autoconf
%configure \
--with-docdir=%{docdir} \
%if %{build_postgres}
--with-pgsql \
%endif
%if %{build_mysql}
--with-mysql \
%endif
--with-ssl=openssl \
--with-ssldir=%{ssldir} \
--with-ldap
@ -82,17 +99,14 @@ chmod 700 $RPM_BUILD_ROOT/var/run/dovecot
mkdir -p $RPM_BUILD_ROOT/var/run/dovecot-login
# Install some of our own documentation
install -m644 $RPM_SOURCE_DIR/dovecot-REDHAT-FAQ.txt $RPM_BUILD_ROOT%{docdir}/REDHAT-FAQ.txt
install -m755 -d $RPM_BUILD_ROOT%{docdir}/UW-to-Dovecot-Migration
for f in maildir-migration.txt
for f in maildir-migration.txt migrate-folders migrate-users perfect_maildir.pl
do
install -m644 $RPM_SOURCE_DIR/$f $RPM_BUILD_ROOT%{docdir}/UW-to-Dovecot-Migration
done
for f in migrate-folders migrate-users perfect_maildir.pl
do
install -m755 $RPM_SOURCE_DIR/$f $RPM_BUILD_ROOT%{docdir}/UW-to-Dovecot-Migration
done
%pre
/usr/sbin/useradd -c "dovecot" -u %{dovecot_uid} -s /sbin/nologin -r -d /usr/libexec/dovecot dovecot 2>/dev/null || :
@ -147,6 +161,13 @@ rm -rf $RPM_BUILD_ROOT
%changelog
* Thu Jan 13 2005 John Dennis <jdennis@redhat.com> 0.99.13-2.devel
- make postgres & mysql conditional build
- remove execute bit on migration example scripts so rpm does not pull
in additional dependences on perl and perl modules that are not present
in dovecot proper.
- add REDHAT-FAQ.txt to doc directory
* Thu Jan 6 2005 John Dennis <jdennis@redhat.com> 0.99.13-1.devel
- bring up to date with latest upstream, 0.99.13, bug #143707
also fix bug #14462, bad dovecot-uid macro name