ports/150789: New port: mail/dovecot20

Nagy at FreeBSD.org Nagy at FreeBSD.org
Tue Sep 21 16:20:02 UTC 2010


>Number:         150789
>Category:       ports
>Synopsis:       New port: mail/dovecot20
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Sep 21 16:20:00 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Nagy, Attila
>Release:        FreeBSD 8-STABLE
>Organization:
>Environment:
>Description:
This is a copied and slightly modified version of mail/dovecot, upgraded to the version 2.0(.3).

I've made this a separate port, because a lot of things have changed, and upgrading between major versions is not a simple matter of portupgrade, and also, new versions from the 1.2 branch are available... It would be nice to repo copy the mail/dovecot port to this one and apply the new version to preserve history. There is a new user needed (dovenull), so there are two additional patches in the shar, for the UIDs and the GIDs file.
Detailed instructions on upgrading: http://wiki2.dovecot.org/Upgrading/2.0
The largest changes since v1.2 are:

	* Dovecot uses two system users for internal purposes now by default:
	  dovenull and dovecot. You need to create the dovenull user or change
	  default_login_user setting.
	* Global ACLs are now looked up using namespace prefixes. For example
	  if you previously had INBOX. namespace prefix and a global ACL for
	  "INBOX.Sent", it's now looked up from "INBOX.Sent" file instead of
	  "Sent" as before.
	* Maildir: File permissions are no longer based on dovecot-shared file,
	  but the mailbox directory.
	* vpopmail support is currently disabled due to reliability issues (by the program's author)

	+ Redesigned master process. It's now more modular and there is less
	  code running as root.
	+ Configuration supports now per-local/remote ip/network settings.
	+ dsync utility does a two-way mailbox synchronization.
	+ LMTP server and proxying.
	+ Added mdbox (multi-dbox) mail storage backend.
	+ doveadm utility can be used to do all kinds of administration
	  functions. Old dovecotpw and *view utilities now exist in its
	  subcommands.
	+ imap and pop3 processes can now handle multiple connections.
	+ IMAP: COMPRESS=DEFLATE is supported by imap_zlib plugin
	+ director service helps NFS installations to redirect users always
	  to same server to avoid corruption

>How-To-Repeat:

>Fix:


Patch attached with submission follows:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	dovecot20
#	dovecot20/Makefile
#	dovecot20/distinfo
#	dovecot20/pkg-plist
#	dovecot20/pkg-descr
#	dovecot20/files
#	dovecot20/files/dovecot.sh.in
#	dovecot20/files/pkg-message.in
#	dovecot20/files/pkg-install.in
#	dovecot20/files/pkg-deinstall.in
#	GIDs.patch
#	UIDs.patch
#
echo c - dovecot20
mkdir -p dovecot20 > /dev/null 2>&1
echo x - dovecot20/Makefile
sed 's/^X//' >dovecot20/Makefile << 'e40faa8a720dd4add3690952f285e5c4'
X# New ports collection makefile for:	dovecot
X# Date created:				12/08/2002
X# Whom:			Dominic Marks <dominic.marks at btinternet.com>
X#
X# $FreeBSD: ports/mail/dovecot/Makefile,v 1.114 2010/07/05 05:39:49 sahil Exp $
X#
X
XPORTNAME=	dovecot
XPORTVERSION=	2.0.3
XCATEGORIES=	mail ipv6
XMASTER_SITES=	http://www.dovecot.org/releases/${DOVECOTVERSION}/
X
XMAINTAINER=	bra at fsn.hu
XCOMMENT=	Secure and compact IMAP and POP3 servers
X
XDOVECOTVERSION=	2.0
X
X######################################################################
X# Anytime PORTVERSION changes please bump PORTREVISION of            #
X# mail/dovecot20-pigeonhole. Please see ports/135311 and             #
X# ports/146029 for an explanation.                                   #
X#                                                                    #
X# Please be careful when updating this port as changes to this port  #
X# can break mail/dovecot20-pigeonhole. In order to ensure the least  #
X# amount of breakage possible please consult the maintainer of that  #
X# port before updating this one.                                     #
X######################################################################
X
XUSE_ICONV=	yes
XUSE_RC_SUBR=	dovecot.sh
X
XGNU_CONFIGURE=	yes
XCONFIGURE_TARGET=	--build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
XCONFIGURE_ARGS=		--localstatedir=/var \
X			--with-statedir=/var/db/dovecot \
X			--without-shadow
XCONFIGURE_ENV=	CPPFLAGS="-I${LOCALBASE}/include" \
X		LDFLAGS="-L${LOCALBASE}/lib"
XUSE_LDCONFIG=	${PREFIX}/lib/dovecot
X
X.if defined(NOPORTDOCS)
XCONFIGURE_ARGS+=	--without-docs
X.else
XDOCS=		AUTHORS COPYING COPYING.LGPL COPYING.MIT INSTALL NEWS TODO README
XPORTDOCS=	*.txt wiki ${DOCS}
X.endif
X
XDOVECOT_UID?=	143
XDOVECOT_GID?=	143
XDOVENULL_UID?=	144
XDOVENULL_GID?=	144
X
XPROTOCOLS=	imap pop3
X
XOPTIONS=	KQUEUE		"kqueue(2) support"	on  \
X		SSL		"SSL support"		on  \
X		GSSAPI		"GSSAPI support"	off \
X		LDAP		"OpenLDAP support"	off \
X		PGSQL		"PostgreSQL support"	off \
X		MYSQL		"MySQL support"		off \
X		SQLITE		"SQLite support"	off
X
X.include <bsd.port.pre.mk>
X
X# Default requirement for dovecot rc script
X_REQUIRE=	LOGIN
X
X# sed script for dovecot.conf
XREINPLACE=	s!%%PROTOCOLS%%!${PROTOCOLS}!g;\
X		s!/usr/!${PREFIX}/!g;\
X		s!=/usr!=${PREFIX}!g;\
X		s!=/etc !=${PREFIX}/etc !g;\
X		s!/etc/dovecot!${PREFIX}&!g;\
X		s![[:<:]]doc/(dovecot-[^-]+)-example.conf[[:>:]]!${EXAMPLESDIR}/\1.conf!g;\
X		s!\#sendmail_path = /usr/.*!sendmail_path = /usr/sbin/sendmail!g;
X
X## kqueue(2) support
X#
X.if !defined(WITHOUT_KQUEUE)
XCONFIGURE_ARGS+=	--with-ioloop=kqueue
X.endif
X
X## SSL support
X#
X.if defined(WITH_SSL) && !defined(WITHOUT_SSL)
XPROTOCOLS+=		imaps pop3s
X.else
XCONFIGURE_ARGS+=	--without-ssl
X.endif
X
X## GSSAPI support
X#
X.if defined(WITH_GSSAPI) && !defined(WITHOUT_GSSAPI)
XCONFIGURE_ARGS+=	--with-gssapi
X.else
XCONFIGURE_ARGS+=	--without-gssapi
X.endif
X
X## VPopMail Support
X# support is currently disabled
X#.if defined(WITH_VPOPMAIL) && !defined(WITHOUT_VPOPMAIL)
X#VPOPMAIL=		${LOCALBASE}/vpopmail/bin/vchkpw
X#BUILD_DEPENDS+=		${VPOPMAIL}:${PORTSDIR}/mail/vpopmail
X#CONFIGURE_ARGS+=	--with-vpopmail
X#.else
X#CONFIGURE_ARGS+=	--without-vpopmail
X#.endif
X
X## OpenLDAP Support
X#
X.if defined(WITH_LDAP) && !defined(WITHOUT_LDAP)
XUSE_OPENLDAP=		yes
XCONFIGURE_ARGS+=	--with-ldap
XPLIST_SUB+=		LDAP=""
X_REQUIRE+=		slapd
X.else
XCONFIGURE_ARGS+=	--without-ldap
XPLIST_SUB+=		LDAP="@comment "
X.endif
X
X## PostgreSQL Support
X#
X.if defined(WITH_PGSQL) && !defined(WITHOUT_PGSQL)
XUSE_PGSQL=		yes
XCONFIGURE_ARGS+=	--with-pgsql
XPLIST_SUB+=		SQL=""
X_REQUIRE+=		postgresql
X.else
XCONFIGURE_ARGS+=	--without-pgsql
XPLIST_SUB+=		SQL="@comment "
X.endif
X
X## MySQL Support
X#
X.if defined(WITH_MYSQL) && !defined(WITHOUT_MYSQL)
XUSE_MYSQL=		yes
XCONFIGURE_ARGS+=	--with-mysql
XPLIST_SUB+=		SQL=""
X_REQUIRE+=		mysql
X.else
XCONFIGURE_ARGS+=	--without-mysql
XPLIST_SUB+=		SQL="@comment "
X.endif
X
X## SQLite Support
X#
X.if defined(WITH_SQLITE) && !defined(WITHOUT_SQLITE)
XUSE_SQLITE=		3
XCONFIGURE_ARGS+=	--with-sqlite
XPLIST_SUB+=		SQL=""
X.else
XCONFIGURE_ARGS+=	--without-sqlite
XPLIST_SUB+=		SQL="@comment "
X.endif
X
XSUB_LIST+=		REQUIRE="${_REQUIRE}" DOVECOT_UID=${DOVECOT_UID} DOVECOT_GID=${DOVECOT_GID} DOVENULL_UID=${DOVENULL_UID} DOVENULL_GID=${DOVENULL_GID}
XSUB_FILES+=		pkg-install pkg-deinstall pkg-message
X
Xpost-patch:
X	@${REINPLACE_CMD} -E -e '${REINPLACE}' \
X                ${WRKSRC}/doc/example-config/dovecot.conf
X	@${REINPLACE_CMD} -E -e'\
X		s!-example\.conf[[:>:]]!.conf!g;\
X		s!^(confdir[[:space:]]+=[[:space:]]+)\$$\(sysconfdir\)!\1${EXAMPLESDIR}!g;\
X		' ${WRKSRC}/*/Makefile.in ${WRKSRC}/Makefile.in
X.if defined(WITH_GSSAPI)
X	@${REINPLACE_CMD} -e '\
X		s!<gssapi/gssapi\.h>!<gssapi.h>!;\
X		' ${WRKSRC}/src/auth/mech-gssapi.c ${WRKSRC}/configure
X.endif
X
Xpre-su-install:
X	@${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
X
Xpost-install:
X	#${INSTALL_DATA} ${WRKSRC}/doc/example-config ${EXAMPLESDIR}
X	${INSTALL_SCRIPT} ${WRKSRC}/doc/mkcert.sh ${EXAMPLESDIR}
X	@${GREP} '^@exec ' ${TMPPLIST} \
X		| ${SED} -e 's:^@exec ::; s:%D:${PREFIX}:g;' \
X		> ${WRKDIR}/.PLIST.exec \
X		&& ${SH} ${WRKDIR}/.PLIST.exec
X.if !defined(NOPORTDOCS)
X.for f in ${DOCS}
X	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
X.endfor
X.endif
X	@${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
X	@${CAT} ${PKGMESSAGE}
X
X.include <bsd.port.post.mk>
e40faa8a720dd4add3690952f285e5c4
echo x - dovecot20/distinfo
sed 's/^X//' >dovecot20/distinfo << '2ae4ddf48e976b248842264a5083a91b'
XMD5 (dovecot-2.0.3.tar.gz) = c0c72dd57071593ff3a6a452fcee6a03
XSHA256 (dovecot-2.0.3.tar.gz) = 56d696d9a5114ea5069b0c2f366b3eefc8790c0f438522d7d9f1369942cf4f45
XSIZE (dovecot-2.0.3.tar.gz) = 3096760
2ae4ddf48e976b248842264a5083a91b
echo x - dovecot20/pkg-plist
sed 's/^X//' >dovecot20/pkg-plist << 'fff17d0cea38c9cf4d869350324f7ece'
Xbin/doveadm
Xbin/doveconf
Xbin/dsync
Xetc/dovecot/README
Xinclude/dovecot/abspath.h
Xinclude/dovecot/access-lookup.h
Xinclude/dovecot/anvil-client.h
Xinclude/dovecot/aqueue.h
Xinclude/dovecot/array-decl.h
Xinclude/dovecot/array.h
Xinclude/dovecot/askpass.h
Xinclude/dovecot/auth-cache.h
Xinclude/dovecot/auth-client-connection.h
Xinclude/dovecot/auth-client-interface.h
Xinclude/dovecot/auth-client-private.h
Xinclude/dovecot/auth-client-request.h
Xinclude/dovecot/auth-client.h
Xinclude/dovecot/auth-common.h
Xinclude/dovecot/auth-master-connection.h
Xinclude/dovecot/auth-master.h
Xinclude/dovecot/auth-penalty.h
Xinclude/dovecot/auth-request-handler.h
Xinclude/dovecot/auth-request.h
Xinclude/dovecot/auth-server-connection.h
Xinclude/dovecot/auth-settings.h
Xinclude/dovecot/auth-stream.h
Xinclude/dovecot/auth-worker-client.h
Xinclude/dovecot/auth-worker-server.h
Xinclude/dovecot/auth.h
Xinclude/dovecot/backtrace-string.h
Xinclude/dovecot/base64.h
Xinclude/dovecot/bsearch-insert-pos.h
Xinclude/dovecot/buffer.h
Xinclude/dovecot/charset-utf8.h
Xinclude/dovecot/child-wait.h
Xinclude/dovecot/client-common.h
Xinclude/dovecot/close-keep-errno.h
Xinclude/dovecot/compat.h
Xinclude/dovecot/config-filter.h
Xinclude/dovecot/config-parser-private.h
Xinclude/dovecot/config-parser.h
Xinclude/dovecot/config-request.h
Xinclude/dovecot/config.h
Xinclude/dovecot/crc32.h
Xinclude/dovecot/cydir-storage.h
Xinclude/dovecot/cydir-sync.h
Xinclude/dovecot/data-stack.h
Xinclude/dovecot/db-checkpassword.h
Xinclude/dovecot/db-ldap.h
Xinclude/dovecot/db-passwd-file.h
Xinclude/dovecot/db-sql.h
Xinclude/dovecot/dbox-file.h
Xinclude/dovecot/dbox-mail.h
Xinclude/dovecot/dbox-save.h
Xinclude/dovecot/dbox-storage.h
Xinclude/dovecot/dbox-sync-rebuild.h
Xinclude/dovecot/dict-client.h
Xinclude/dovecot/dict-private.h
Xinclude/dovecot/dict-sql-settings.h
Xinclude/dovecot/dict-sql.h
Xinclude/dovecot/dict.h
Xinclude/dovecot/dns-lookup.h
Xinclude/dovecot/dovecot-version.h
Xinclude/dovecot/duplicate.h
Xinclude/dovecot/eacces-error.h
Xinclude/dovecot/env-util.h
Xinclude/dovecot/execv-const.h
Xinclude/dovecot/failures.h
Xinclude/dovecot/fd-close-on-exec.h
Xinclude/dovecot/fd-set-nonblock.h
Xinclude/dovecot/fdatasync-path.h
Xinclude/dovecot/fdpass.h
Xinclude/dovecot/file-cache.h
Xinclude/dovecot/file-copy.h
Xinclude/dovecot/file-dotlock.h
Xinclude/dovecot/file-lock.h
Xinclude/dovecot/file-set-size.h
Xinclude/dovecot/fsync-mode.h
Xinclude/dovecot/hash.h
Xinclude/dovecot/hash2.h
Xinclude/dovecot/hex-binary.h
Xinclude/dovecot/hex-dec.h
Xinclude/dovecot/hmac-md5.h
Xinclude/dovecot/home-expand.h
Xinclude/dovecot/hostpid.h
Xinclude/dovecot/imap-arg.h
Xinclude/dovecot/imap-base-subject.h
Xinclude/dovecot/imap-bodystructure.h
Xinclude/dovecot/imap-client.h
Xinclude/dovecot/imap-commands-util.h
Xinclude/dovecot/imap-commands.h
Xinclude/dovecot/imap-common.h
Xinclude/dovecot/imap-date.h
Xinclude/dovecot/imap-envelope.h
Xinclude/dovecot/imap-expunge.h
Xinclude/dovecot/imap-fetch.h
Xinclude/dovecot/imap-id.h
Xinclude/dovecot/imap-match.h
Xinclude/dovecot/imap-parser.h
Xinclude/dovecot/imap-quote.h
Xinclude/dovecot/imap-resp-code.h
Xinclude/dovecot/imap-search-args.h
Xinclude/dovecot/imap-search.h
Xinclude/dovecot/imap-seqset.h
Xinclude/dovecot/imap-settings.h
Xinclude/dovecot/imap-status.h
Xinclude/dovecot/imap-sync.h
Xinclude/dovecot/imap-utf7.h
Xinclude/dovecot/imap-util.h
Xinclude/dovecot/imem.h
Xinclude/dovecot/index-mail.h
Xinclude/dovecot/index-mailbox-list.h
Xinclude/dovecot/index-search-result.h
Xinclude/dovecot/index-sort-private.h
Xinclude/dovecot/index-sort.h
Xinclude/dovecot/index-storage.h
Xinclude/dovecot/index-sync-changes.h
Xinclude/dovecot/index-sync-private.h
Xinclude/dovecot/index-thread-private.h
Xinclude/dovecot/ioloop-internal.h
Xinclude/dovecot/ioloop-iolist.h
Xinclude/dovecot/ioloop-notify-fd.h
Xinclude/dovecot/ioloop.h
Xinclude/dovecot/iostream-internal.h
Xinclude/dovecot/istream-concat.h
Xinclude/dovecot/istream-crlf.h
Xinclude/dovecot/istream-dot.h
Xinclude/dovecot/istream-header-filter.h
Xinclude/dovecot/istream-internal.h
Xinclude/dovecot/istream-mail-stats.h
Xinclude/dovecot/istream-raw-mbox.h
Xinclude/dovecot/istream-seekable.h
Xinclude/dovecot/istream-tee.h
Xinclude/dovecot/istream.h
Xinclude/dovecot/lda-settings.h
Xinclude/dovecot/lib-signals.h
Xinclude/dovecot/lib.h
Xinclude/dovecot/llist.h
Xinclude/dovecot/lmtp-client.h
Xinclude/dovecot/login-common.h
Xinclude/dovecot/login-proxy-state.h
Xinclude/dovecot/login-proxy.h
Xinclude/dovecot/login-settings.h
Xinclude/dovecot/macros.h
Xinclude/dovecot/mail-cache-private.h
Xinclude/dovecot/mail-cache.h
Xinclude/dovecot/mail-copy.h
Xinclude/dovecot/mail-deliver.h
Xinclude/dovecot/mail-error.h
Xinclude/dovecot/mail-index-alloc-cache.h
Xinclude/dovecot/mail-index-modseq.h
Xinclude/dovecot/mail-index-private.h
Xinclude/dovecot/mail-index-strmap.h
Xinclude/dovecot/mail-index-sync-private.h
Xinclude/dovecot/mail-index-transaction-private.h
Xinclude/dovecot/mail-index-util.h
Xinclude/dovecot/mail-index-view-private.h
Xinclude/dovecot/mail-index.h
Xinclude/dovecot/mail-namespace.h
Xinclude/dovecot/mail-search-build.h
Xinclude/dovecot/mail-search-parser-private.h
Xinclude/dovecot/mail-search-parser.h
Xinclude/dovecot/mail-search-register.h
Xinclude/dovecot/mail-search.h
Xinclude/dovecot/mail-send.h
Xinclude/dovecot/mail-storage-hooks.h
Xinclude/dovecot/mail-storage-private.h
Xinclude/dovecot/mail-storage-service.h
Xinclude/dovecot/mail-storage-settings.h
Xinclude/dovecot/mail-storage.h
Xinclude/dovecot/mail-thread.h
Xinclude/dovecot/mail-transaction-log-private.h
Xinclude/dovecot/mail-transaction-log-view-private.h
Xinclude/dovecot/mail-transaction-log.h
Xinclude/dovecot/mail-types.h
Xinclude/dovecot/mail-user.h
Xinclude/dovecot/mailbox-list-delete.h
Xinclude/dovecot/mailbox-list-fs.h
Xinclude/dovecot/mailbox-list-index-private.h
Xinclude/dovecot/mailbox-list-index.h
Xinclude/dovecot/mailbox-list-maildir.h
Xinclude/dovecot/mailbox-list-private.h
Xinclude/dovecot/mailbox-list-subscriptions.h
Xinclude/dovecot/mailbox-list.h
Xinclude/dovecot/mailbox-log.h
Xinclude/dovecot/mailbox-search-result-private.h
Xinclude/dovecot/mailbox-tree.h
Xinclude/dovecot/mailbox-uidvalidity.h
Xinclude/dovecot/maildir-filename.h
Xinclude/dovecot/maildir-keywords.h
Xinclude/dovecot/maildir-settings.h
Xinclude/dovecot/maildir-storage.h
Xinclude/dovecot/maildir-sync.h
Xinclude/dovecot/maildir-uidlist.h
Xinclude/dovecot/master-auth.h
Xinclude/dovecot/master-interface.h
Xinclude/dovecot/master-login-auth.h
Xinclude/dovecot/master-login.h
Xinclude/dovecot/master-service-private.h
Xinclude/dovecot/master-service-settings-cache.h
Xinclude/dovecot/master-service-settings.h
Xinclude/dovecot/master-service.h
Xinclude/dovecot/mbox-file.h
Xinclude/dovecot/mbox-from.h
Xinclude/dovecot/mbox-lock.h
Xinclude/dovecot/mbox-md5.h
Xinclude/dovecot/mbox-settings.h
Xinclude/dovecot/mbox-storage.h
Xinclude/dovecot/mbox-sync-private.h
Xinclude/dovecot/md4.h
Xinclude/dovecot/md5.h
Xinclude/dovecot/mdbox-file.h
Xinclude/dovecot/mdbox-map-private.h
Xinclude/dovecot/mdbox-map.h
Xinclude/dovecot/mdbox-settings.h
Xinclude/dovecot/mdbox-storage-rebuild.h
Xinclude/dovecot/mdbox-storage.h
Xinclude/dovecot/mdbox-sync.h
Xinclude/dovecot/mech-otp-skey-common.h
Xinclude/dovecot/mech-plain-common.h
Xinclude/dovecot/mech.h
Xinclude/dovecot/mempool.h
Xinclude/dovecot/message-address.h
Xinclude/dovecot/message-date.h
Xinclude/dovecot/message-decoder.h
Xinclude/dovecot/message-header-decode.h
Xinclude/dovecot/message-header-encode.h
Xinclude/dovecot/message-header-parser.h
Xinclude/dovecot/message-id.h
Xinclude/dovecot/message-parser.h
Xinclude/dovecot/message-part-serialize.h
Xinclude/dovecot/message-search.h
Xinclude/dovecot/message-send.h
Xinclude/dovecot/message-size.h
Xinclude/dovecot/mkdir-parents.h
Xinclude/dovecot/mmap-util.h
Xinclude/dovecot/module-context.h
Xinclude/dovecot/module-dir.h
Xinclude/dovecot/mountpoint.h
Xinclude/dovecot/mycrypt.h
Xinclude/dovecot/network.h
Xinclude/dovecot/nfs-workarounds.h
Xinclude/dovecot/notify-plugin-private.h
Xinclude/dovecot/notify-plugin.h
Xinclude/dovecot/ostream-internal.h
Xinclude/dovecot/ostream.h
Xinclude/dovecot/passdb-blocking.h
Xinclude/dovecot/passdb-cache.h
Xinclude/dovecot/passdb.h
Xinclude/dovecot/password-scheme.h
Xinclude/dovecot/pop3-capability.h
Xinclude/dovecot/pop3-client.h
Xinclude/dovecot/pop3-commands.h
Xinclude/dovecot/pop3-common.h
Xinclude/dovecot/pop3-settings.h
Xinclude/dovecot/primes.h
Xinclude/dovecot/printf-format-fix.h
Xinclude/dovecot/priorityq.h
Xinclude/dovecot/process-title.h
Xinclude/dovecot/quoted-printable.h
Xinclude/dovecot/randgen.h
Xinclude/dovecot/raw-storage.h
Xinclude/dovecot/raw-sync.h
Xinclude/dovecot/read-full.h
Xinclude/dovecot/restrict-access.h
Xinclude/dovecot/restrict-process-size.h
Xinclude/dovecot/rfc2231-parser.h
Xinclude/dovecot/rfc822-parser.h
Xinclude/dovecot/safe-memset.h
Xinclude/dovecot/safe-mkdir.h
Xinclude/dovecot/safe-mkstemp.h
Xinclude/dovecot/sasl-server.h
Xinclude/dovecot/sdbox-file.h
Xinclude/dovecot/sdbox-storage.h
Xinclude/dovecot/sdbox-sync.h
Xinclude/dovecot/sendfile-util.h
Xinclude/dovecot/seq-range-array.h
Xinclude/dovecot/service-settings.h
Xinclude/dovecot/settings-parser.h
Xinclude/dovecot/settings.h
Xinclude/dovecot/sha1.h
Xinclude/dovecot/sha2.h
Xinclude/dovecot/shared-storage.h
Xinclude/dovecot/smtp-client.h
Xinclude/dovecot/sql-api-private.h
Xinclude/dovecot/sql-api.h
Xinclude/dovecot/sql-db-cache.h
Xinclude/dovecot/ssl-proxy.h
Xinclude/dovecot/str-find.h
Xinclude/dovecot/str-sanitize.h
Xinclude/dovecot/str.h
Xinclude/dovecot/strescape.h
Xinclude/dovecot/strfuncs.h
Xinclude/dovecot/strnum.h
Xinclude/dovecot/subscription-file.h
Xinclude/dovecot/syslog-util.h
Xinclude/dovecot/test-common.h
Xinclude/dovecot/time-util.h
Xinclude/dovecot/unichar.h
Xinclude/dovecot/unix-socket-create.h
Xinclude/dovecot/unlink-directory.h
Xinclude/dovecot/unlink-old-files.h
Xinclude/dovecot/userdb-blocking.h
Xinclude/dovecot/userdb-static.h
Xinclude/dovecot/userdb-vpopmail.h
Xinclude/dovecot/userdb.h
Xinclude/dovecot/utc-mktime.h
Xinclude/dovecot/utc-offset.h
Xinclude/dovecot/var-expand.h
Xinclude/dovecot/wildcard-match.h
Xinclude/dovecot/write-full.h
Xlib/dovecot/doveadm/lib10_doveadm_expire_plugin.a
Xlib/dovecot/doveadm/lib10_doveadm_expire_plugin.la
Xlib/dovecot/doveadm/lib10_doveadm_expire_plugin.so
Xlib/dovecot/doveadm/lib10_doveadm_quota_plugin.a
Xlib/dovecot/doveadm/lib10_doveadm_quota_plugin.la
Xlib/dovecot/doveadm/lib10_doveadm_quota_plugin.so
Xlib/dovecot/dovecot-config
Xlib/dovecot/lib01_acl_plugin.a
Xlib/dovecot/lib01_acl_plugin.la
Xlib/dovecot/lib01_acl_plugin.so
Xlib/dovecot/lib02_imap_acl_plugin.a
Xlib/dovecot/lib02_imap_acl_plugin.la
Xlib/dovecot/lib02_imap_acl_plugin.so
Xlib/dovecot/lib02_lazy_expunge_plugin.a
Xlib/dovecot/lib02_lazy_expunge_plugin.la
Xlib/dovecot/lib02_lazy_expunge_plugin.so
Xlib/dovecot/lib10_quota_plugin.a
Xlib/dovecot/lib10_quota_plugin.la
Xlib/dovecot/lib10_quota_plugin.so
Xlib/dovecot/lib11_imap_quota_plugin.a
Xlib/dovecot/lib11_imap_quota_plugin.la
Xlib/dovecot/lib11_imap_quota_plugin.so
Xlib/dovecot/lib11_trash_plugin.a
Xlib/dovecot/lib11_trash_plugin.la
Xlib/dovecot/lib11_trash_plugin.so
Xlib/dovecot/lib15_notify_plugin.a
Xlib/dovecot/lib15_notify_plugin.la
Xlib/dovecot/lib15_notify_plugin.so
Xlib/dovecot/lib20_autocreate_plugin.a
Xlib/dovecot/lib20_autocreate_plugin.la
Xlib/dovecot/lib20_autocreate_plugin.so
Xlib/dovecot/lib20_expire_plugin.a
Xlib/dovecot/lib20_expire_plugin.la
Xlib/dovecot/lib20_expire_plugin.so
Xlib/dovecot/lib20_fts_plugin.a
Xlib/dovecot/lib20_fts_plugin.la
Xlib/dovecot/lib20_fts_plugin.so
Xlib/dovecot/lib20_listescape_plugin.a
Xlib/dovecot/lib20_listescape_plugin.la
Xlib/dovecot/lib20_listescape_plugin.so
Xlib/dovecot/lib20_mail_log_plugin.a
Xlib/dovecot/lib20_mail_log_plugin.la
Xlib/dovecot/lib20_mail_log_plugin.so
Xlib/dovecot/lib20_mbox_snarf_plugin.a
Xlib/dovecot/lib20_mbox_snarf_plugin.la
Xlib/dovecot/lib20_mbox_snarf_plugin.so
Xlib/dovecot/lib20_virtual_plugin.a
Xlib/dovecot/lib20_virtual_plugin.la
Xlib/dovecot/lib20_virtual_plugin.so
Xlib/dovecot/lib20_zlib_plugin.a
Xlib/dovecot/lib20_zlib_plugin.la
Xlib/dovecot/lib20_zlib_plugin.so
Xlib/dovecot/lib21_fts_squat_plugin.a
Xlib/dovecot/lib21_fts_squat_plugin.la
Xlib/dovecot/lib21_fts_squat_plugin.so
Xlib/dovecot/lib30_imap_zlib_plugin.a
Xlib/dovecot/lib30_imap_zlib_plugin.la
Xlib/dovecot/lib30_imap_zlib_plugin.so
Xlib/dovecot/libdovecot-lda.a
Xlib/dovecot/libdovecot-lda.la
Xlib/dovecot/libdovecot-lda.so
Xlib/dovecot/libdovecot-lda.so.0
Xlib/dovecot/libdovecot-login.a
Xlib/dovecot/libdovecot-login.la
Xlib/dovecot/libdovecot-login.so
Xlib/dovecot/libdovecot-login.so.0
Xlib/dovecot/libdovecot-storage.a
Xlib/dovecot/libdovecot-storage.la
Xlib/dovecot/libdovecot-storage.so
Xlib/dovecot/libdovecot-storage.so.0
Xlib/dovecot/libdovecot.a
Xlib/dovecot/libdovecot.la
Xlib/dovecot/libdovecot.so
Xlib/dovecot/libdovecot.so.0
Xlibexec/dovecot/anvil
Xlibexec/dovecot/auth
Xlibexec/dovecot/checkpassword-reply
Xlibexec/dovecot/config
Xlibexec/dovecot/deliver
Xlibexec/dovecot/dict
Xlibexec/dovecot/director
Xlibexec/dovecot/dns-client
Xlibexec/dovecot/doveadm-server
Xlibexec/dovecot/dovecot-lda
Xlibexec/dovecot/gdbhelper
Xlibexec/dovecot/imap
Xlibexec/dovecot/imap-login
Xlibexec/dovecot/listview
Xlibexec/dovecot/lmtp
Xlibexec/dovecot/log
Xlibexec/dovecot/maildirlock
Xlibexec/dovecot/pop3
Xlibexec/dovecot/pop3-login
Xlibexec/dovecot/rawlog
Xlibexec/dovecot/script
Xlibexec/dovecot/script-login
Xlibexec/dovecot/ssl-params
Xman/man1/deliver.1
Xman/man1/doveadm-altmove.1
Xman/man1/doveadm-auth.1
Xman/man1/doveadm-config.1
Xman/man1/doveadm-director.1
Xman/man1/doveadm-dump.1
Xman/man1/doveadm-expunge.1
Xman/man1/doveadm-fetch.1
Xman/man1/doveadm-force-resync.1
Xman/man1/doveadm-help.1
Xman/man1/doveadm-kick.1
Xman/man1/doveadm-log.1
Xman/man1/doveadm-mailbox.1
Xman/man1/doveadm-penalty.1
Xman/man1/doveadm-purge.1
Xman/man1/doveadm-pw.1
Xman/man1/doveadm-quota.1
Xman/man1/doveadm-reload.1
Xman/man1/doveadm-search.1
Xman/man1/doveadm-stop.1
Xman/man1/doveadm-user.1
Xman/man1/doveadm-who.1
Xman/man1/doveadm.1
Xman/man1/doveconf.1
Xman/man1/dovecot-lda.1
Xman/man1/dovecot.1
Xman/man1/dsync.1
Xman/man7/doveadm-search-query.7
Xsbin/dovecot
Xshare/aclocal/dovecot.m4
Xshare/doc/dovecot/example-config/conf.d/10-auth.conf
Xshare/doc/dovecot/example-config/conf.d/10-director.conf
Xshare/doc/dovecot/example-config/conf.d/10-logging.conf
Xshare/doc/dovecot/example-config/conf.d/10-mail.conf
Xshare/doc/dovecot/example-config/conf.d/10-master.conf
Xshare/doc/dovecot/example-config/conf.d/10-ssl.conf
Xshare/doc/dovecot/example-config/conf.d/15-lda.conf
Xshare/doc/dovecot/example-config/conf.d/20-imap.conf
Xshare/doc/dovecot/example-config/conf.d/20-lmtp.conf
Xshare/doc/dovecot/example-config/conf.d/20-pop3.conf
Xshare/doc/dovecot/example-config/conf.d/90-acl.conf
Xshare/doc/dovecot/example-config/conf.d/90-plugin.conf
Xshare/doc/dovecot/example-config/conf.d/90-quota.conf
Xshare/doc/dovecot/example-config/conf.d/auth-checkpassword.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-deny.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-ldap.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-master.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-passwdfile.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-sql.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-static.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-system.conf.ext
Xshare/doc/dovecot/example-config/conf.d/auth-vpopmail.conf.ext
Xshare/doc/dovecot/example-config/dovecot-db.conf.ext
Xshare/doc/dovecot/example-config/dovecot-dict-sql.conf.ext
Xshare/doc/dovecot/example-config/dovecot-ldap.conf.ext
Xshare/doc/dovecot/example-config/dovecot-sql.conf.ext
Xshare/doc/dovecot/example-config/dovecot.conf
Xshare/examples/dovecot
X at dirrmtry share/doc/dovecot/example-config/conf.d
X at dirrmtry share/doc/dovecot/example-config
X at dirrmtry libexec/dovecot
X at dirrmtry lib/dovecot/doveadm
X at dirrmtry lib/dovecot/auth
X at dirrmtry lib/dovecot
X at dirrmtry include/dovecot
X at dirrmtry etc/dovecot
fff17d0cea38c9cf4d869350324f7ece
echo x - dovecot20/pkg-descr
sed 's/^X//' >dovecot20/pkg-descr << '084d84e353dca50521d4fbcb919e56b2'
XDovecot is a secure and compact IMAP server which is in the early stages
Xof development. It supports Maildirs and mbox formats and much of the
XIMAP v4 protocol including SSL/TLS. IPv6 support is also included.
XDovecot supports authentication with OpenLDAP, PostgreSQL, MySQL, vpopmail
Xand PAM.
X
XWWW: http://www.dovecot.org/
084d84e353dca50521d4fbcb919e56b2
echo c - dovecot20/files
mkdir -p dovecot20/files > /dev/null 2>&1
echo x - dovecot20/files/dovecot.sh.in
sed 's/^X//' >dovecot20/files/dovecot.sh.in << 'dd246b0005da675b3ca020407a33d5f0'
X#!/bin/sh
X#
X# $FreeBSD: ports/mail/dovecot/files/dovecot.sh.in,v 1.13 2010/03/27 00:13:14 dougb Exp $
X#
X
X# PROVIDE: dovecot
X# REQUIRE: %%REQUIRE%%
X# KEYWORD: shutdown
X
X# Define dovecot_* variables in one of these files:
X#	/etc/rc.conf
X#	/etc/rc.conf.local
X#	/etc/rc.conf.d/dovecot
X
X. /etc/rc.subr
X
Xname=dovecot
Xrcvar=`set_rcvar`
X
X# read configuration and set defaults
Xload_rc_config ${name}
X: ${dovecot_enable:="NO"}
X: ${dovecot_config:="%%PREFIX%%/etc/dovecot/${name}.conf"}
X
Xcommand="%%PREFIX%%/sbin/${name}"
Xstart_precmd="start_precmd"
Xstop_postcmd="stop_postcmd"
Xrestart_cmd="restart_cmd"
X
Xstart_precmd()
X{	# Ensure runtime directories exist with correct permissions
X	local login_user login_gid
X	login_user=$(${command} ${command_args} -a | /usr/bin/awk -F '= ' '/^default_login_user =/ { print $2 }')
X	login_gid=$(/usr/sbin/pw usershow -n "${login_user}" 2>/dev/null | /usr/bin/cut -d: -f4)
X	/usr/bin/install -o root -g wheel -m 0755 -d ${base_dir}
X}
X
Xstop_postcmd()
X{	# Cleanup runtime directories
X	rm -rf ${base_dir} 2>/dev/null
X}
X
Xrestart_cmd()
X{	# Overriding makes rc.subr run this once for each instance
X	run_rc_command stop
X	run_rc_command start
X}
X
X# To start multiple instances of dovecot set dovecot_config to
X# a space seperated list of configuration files.
Xif checkyesno ${name}_enable; then
X	for config in ${dovecot_config}; do
X		required_files="${config}"
X		command_args="-c ${config}"
X		base_dir=$(${command} ${command_args} -a | /usr/bin/awk -F '= ' '/^base_dir =/ { print $2 }')
X		pidfile="${base_dir}/master.pid"
X		run_rc_command "$1"
X	done
Xfi
dd246b0005da675b3ca020407a33d5f0
echo x - dovecot20/files/pkg-message.in
sed 's/^X//' >dovecot20/files/pkg-message.in << '4d41d7c05c917e385d332b336879b694'
X---------------------------------------------------------------------
X 
X You can get basic IMAP and POP3 services running by enabling
X dovecot in the /etc/rc.conf file.
X
X	dovecot_enable
X		(bool) If set to ``YES'', run the dovecot command
X		at boot time.
X
X In the basic configuration Dovecot will authenticate users against
X the system's passwd file and use the default /var/mail/$USER mbox
X files.
X
X	dovecot_config
X		(str) Path to dovecot configuration file(s).
X		Default %%PREFIX%%/etc/dovecot/dovecot.conf.
X
X To start multiple instances of dovecot set dovecot_config to
X a space seperated list of configuration files.
X
X---------------------------------------------------------------------
4d41d7c05c917e385d332b336879b694
echo x - dovecot20/files/pkg-install.in
sed 's/^X//' >dovecot20/files/pkg-install.in << 'd5de70e9bfb2fb9c8049e3daa246f57c'
X#!/bin/sh
X#
X#	$FreeBSD: ports/mail/dovecot/files/pkg-install.in,v 1.2 2008/11/28 14:38:26 wxs Exp $
X#
X
XPKG_PREFIX=${PKG_PREFIX:=/usr/local}
X
Xask() {
X	local question default answer
X
X	question=$1
X	default=$2
X	if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then
X		read -p "${question} [${default}]? " answer
X	fi
X	echo ${answer:-${default}}
X}
X
Xyesno() {
X	local question default answer
X
X	question=$1
X	default=$2
X	while :; do
X		answer=$(ask "${question}" "${default}")
X		case "${answer}" in
X		[Yy]*)	return 0;;
X		[Nn]*)	return 1;;
X		esac
X		echo "Please answer yes or no."
X	done
X}
X
Xcreate_account() {
X	local port user uid group gid gcos home shell
X
X	port=$1
X	user=${2%:*}
X	uid=${2#*:}
X	group=${3%:*}
X	gid=${3#*:}
X	gcos=$4
X	home=$5
X	shell=$6
X
X	pw_user_uid=$(pw usershow -n "${user}" 2>/dev/null | cut -d: -f3)
X	pw_uid_user=$(pw usershow -u "${uid}" 2>/dev/null | cut -d: -f1)
X	pw_group_gid=$(pw groupshow -n "${group}" 2>/dev/null | cut -d: -f3)
X	pw_gid_group=$(pw groupshow -g "${gid}" 2>/dev/null | cut -d: -f1)
X
X	if [ -z "${pw_group_gid}" -a -z "${pw_gid_group}" ]; then
X		echo "You need a ${group} group; creating it..."
X		pw groupadd "${group}" -g "${gid}" || exit
X		echo "Done."
X	elif [ "${gid}" = "${pw_group_gid}" -a "${group}" = "${pw_gid_group}" ]; then
X		echo "Using existing ${group} group."
X	else
X		echo "${port} has reserved the groupname '${group}' and gid '${gid}':"
X		[ -n "${pw_group_gid}" -a "${gid}"   != "${pw_group_gid}" ] \
X			&& echo "ERROR: groupname '${group}' already in use by gid '${pw_group_gid}'"
X		[ -n "${pw_gid_group}" -a "${group}" != "${pw_gid_group}" ] \
X			&& echo "ERROR: gid '${gid}' already in use by group '${pw_gid_group}'"
X		echo "Please resolve these issues and try again:"
X		echo "Either remove the conflicting group or if you wish to continue using a legacy group override DOVECOT_GID."
X		exit 1
X	fi
X
X	if [ -z "${pw_user_uid}" -a -z "${pw_uid_user}" ]; then
X		echo "You need a ${user} user; creating it..."
X		pw useradd "${user}" -u "${uid}" -g "${group}" -c "${gcos}" -d "${home}" -s "${shell}"
X		echo "Done."
X	elif [ "${uid}" = "${pw_user_uid}" -a "${user}" = "${pw_uid_user}" ]; then
X		echo "Using existing ${user} user."
X	else
X		echo "${port} has reserved the username '${user}' and uid '${uid}':"
X		[ -n "${pw_user_uid}" -a "${uid}"  != "${pw_user_uid}" ] \
X			&& echo "ERROR: username '${user}' already in use by uid '${pw_user_uid}'"
X		[ -n "${pw_uid_user}" -a "${user}" != "${pw_uid_user}" ] \
X			&& echo "ERROR: uid '${uid}' already in use by user '${pw_uid_user}'"
X		echo "Please resolve these issues and try again:"
X		echo "Either remove the conflicting user or if you wish to continue using a legacy user override DOVECOT_UID."
X		exit 1
X	fi
X}
X
Xcase $2 in
X
XPRE-INSTALL)
X	create_account Dovecot dovecot:${DOVECOT_UID:-%%DOVECOT_UID%%} dovecot:${DOVECOT_GID:-%%DOVECOT_GID%%} "Dovecot User" /var/empty /usr/sbin/nologin
X	create_account Dovecot dovenull:${DOVENULL_UID:-%%DOVENULL_UID%%} dovenull:${DOVENULL_GID:-%%DOVENULL_GID%%} "Dovecot login User" /var/empty /usr/sbin/nologin
X	;;
X
Xesac
d5de70e9bfb2fb9c8049e3daa246f57c
echo x - dovecot20/files/pkg-deinstall.in
sed 's/^X//' >dovecot20/files/pkg-deinstall.in << 'b2b490ef570218bd078af3b9328ceb24'
X#! /bin/sh
X#
X#	$FreeBSD: ports/mail/dovecot/files/pkg-deinstall.in,v 1.2 2008/11/28 14:38:26 wxs Exp $
X#
X
XPKG_PREFIX=${PKG_PREFIX:=/usr/local}
X
Xask() {
X	local question default answer
X
X	question=$1
X	default=$2
X	if [ -z "${PACKAGE_BUILDING}" -a -z "${BATCH}" ]; then
X		read -p "${question} [${default}]? " answer
X	fi
X	echo ${answer:-${default}}
X}
X
Xyesno() {
X	local question default answer
X
X	question=$1
X	default=$2
X	while :; do
X		answer=$(ask "${question}" "${default}")
X		case "${answer}" in
X		[Yy]*)	return 0;;
X		[Nn]*)	return 1;;
X		esac
X		echo "Please answer yes or no."
X	done
X}
X
Xdelete_account() {
X	local port user uid group gid
X
X	port=$1
X	user=${2%:*}
X	uid=${2#*:}
X	group=${3%:*}
X	gid=${3#*:}
X
X	echo "If you do not intend to reinstall ${port}, you should manually"
X	echo "remove user '${user}' (uid='${uid}') and group '${group}' (gid='${gid}')."
X}
X
Xcase $2 in
X
XDEINSTALL)
X	if ps -axc | grep -qw dovecot; then
X		if yesno "Dovecot is still running. Shall I stop it?" y; then
X			${PKG_PREFIX}/etc/rc.d/dovecot stop
X			sleep 2
X		else
X			echo "OK ... I hope you know what you are doing."
X		fi
X	fi
X
X	delete_account Dovecot dovecot:${DOVECOT_UID:-%%DOVECOT_UID%%} dovecot:${DOVECOT_GID:-%%DOVECOT_GID%%}
X	delete_account Dovecot dovenull:${DOVENULL_UID:-%%DOVENULL_UID%%} dovenull:${DOVENULL_GID:-%%DOVENULL_GID%%}
X
X	echo "Also manually 'rm -rf /var/db/dovecot' if anything was stored there."
X	;;
X
Xesac
b2b490ef570218bd078af3b9328ceb24
echo x - GIDs.patch
sed 's/^X//' >GIDs.patch << '735e5023b9612c7c9654662efba5a95f'
X--- /usr/ports/GIDs	2010-09-10 10:33:51.017399542 +0200
X+++ GIDs	2010-09-21 18:07:06.758285663 +0200
X@@ -73,6 +73,7 @@
X shellinabox:*:139:
X ladvd:*:142:
X dovecot:*:143:
X+dovenull:*:144:
X rbldns:*:153:
X sfs:*:171:
X agk:*:172:
735e5023b9612c7c9654662efba5a95f
echo x - UIDs.patch
sed 's/^X//' >UIDs.patch << '0ed5374f721c810256bed2f324eb804e'
X--- /usr/ports/UIDs	2010-09-10 10:33:51.559201211 +0200
X+++ UIDs	2010-09-21 18:06:52.627315140 +0200
X@@ -82,6 +82,7 @@
X cricket:*:141:80::0:0:Cricket Monitoring User:/usr/local/cricket:/usr/sbin/nologin
X ladvd:*:142:142::0:0:Ladvd User:/var/empty:/usr/sbin/nologin
X dovecot:*:143:143::0:0:Dovecot User:/var/empty:/usr/sbin/nologin
X+dovenull:*:144:144::0:0:Dovecot login User:/var/empty:/usr/sbin/nologin
X rbldns:*:153:153::0:0:rbldnsd pseudo-user:/nonexistent:/usr/sbin/nologin
X sfs:*:171:171::0:0:Self-Certifying File System:/nonexistent:/usr/sbin/nologin
X agk:*:172:172::0:0:AquaGateKeeper:/nonexistent:/nonexistent
0ed5374f721c810256bed2f324eb804e
exit



>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list