Date: Tue, 25 Aug 2009 12:07:20 +0200 From: Daniel Roethlisberger <daniel@roe.ch> To: FreeBSD-gnats-submit@FreeBSD.org Cc: daniel@roe.ch Subject: ports/138165: [maintainer] Update mail/dma to 20090825 Message-ID: <2841e09000000024@marvin.ustcor.roe.ch> Resent-Message-ID: <200908251010.n7PAA47S091764@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 138165 >Category: ports >Synopsis: [maintainer] Update mail/dma to 20090825 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: maintainer-update >Submitter-Id: current-users >Arrival-Date: Tue Aug 25 10:10:03 UTC 2009 >Closed-Date: >Last-Modified: >Originator: Daniel Roethlisberger >Release: FreeBSD 7.2-RELEASE-p2 i386 >Organization: >Environment: System: FreeBSD marvin.ustcor.roe.ch 7.2-RELEASE-p2 FreeBSD 7.2-RELEASE-p2 #0: Wed Jun 24 00:57:44 UTC 2009 root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC i386 >Description: Update dma(8) to DragonFlyBSD git of today, after the illegal seek bugfix. This finally brings the new queue file handling, along with `official' fixes for issues we had local patches in the port. Removed files: - files/patch-libexec_dma_dma.c - files/patch-libexec_dma_net.c >How-To-Repeat: >Fix: --- dma-20090825.diff begins here --- diff -ruN dma.orig/Makefile dma/Makefile --- dma.orig/Makefile 2009-07-07 15:29:02.000000000 +0200 +++ dma/Makefile 2009-08-25 11:54:32.000000000 +0200 @@ -6,8 +6,7 @@ # PORTNAME= dma -PORTVERSION= 20090208 -PORTREVISION= 2 +PORTVERSION= 20090825 CATEGORIES= mail ipv6 MASTER_SITES= http://mirror.roe.ch/dist/dma/ diff -ruN dma.orig/distinfo dma/distinfo --- dma.orig/distinfo 2009-02-12 01:41:34.000000000 +0100 +++ dma/distinfo 2009-08-25 11:54:38.000000000 +0200 @@ -1,3 +1,3 @@ -MD5 (dma-20090208.tar.bz2) = 3284c870aad1c5248254aeee9cb2ae9d -SHA256 (dma-20090208.tar.bz2) = 77524d6f6366e69d730c3d8cdcf2fe35a0cd28a6da7425def11bd4881043eaa3 -SIZE (dma-20090208.tar.bz2) = 17252 +MD5 (dma-20090825.tar.bz2) = d76ef92def1992c836888c8451afce23 +SHA256 (dma-20090825.tar.bz2) = 9fcff7cffd4b5a9ef9413b733f2e3dffebdee00f8a449e7908db480d4302a531 +SIZE (dma-20090825.tar.bz2) = 19992 diff -ruN dma.orig/files/patch-libexec_dma_dma.c dma/files/patch-libexec_dma_dma.c --- dma.orig/files/patch-libexec_dma_dma.c 2009-07-10 11:48:21.000000000 +0200 +++ dma/files/patch-libexec_dma_dma.c 1970-01-01 01:00:00.000000000 +0100 @@ -1,40 +0,0 @@ ---- libexec/dma/dma.c.orig 2009-02-09 01:36:50.000000000 +0100 -+++ libexec/dma/dma.c 2009-07-10 11:47:46.000000000 +0200 -@@ -612,6 +612,7 @@ - const char *errmsg = "unknown bounce reason"; - struct timeval now; - struct stat st; -+ struct flock fl; - - syslog(LOG_INFO, "%s: mail from=<%s> to=<%s>", - it->queueid, it->sender, it->addr); -@@ -620,11 +621,29 @@ - syslog(LOG_INFO, "%s: trying delivery", - it->queueid); - -+ bzero(&fl, sizeof(fl)); -+ fl.l_type = F_WRLCK; -+ fl.l_whence = SEEK_SET; -+ if (fcntl(fileno(it->queuef), F_SETLKW, &fl) == -1) { -+ syslog(LOG_ERR, "%s: failed to lock queue file: %m", -+ it->queueid); -+ goto bounce; -+ } -+ - if (it->remote) - error = deliver_remote(it, &errmsg); - else - error = deliver_local(it, &errmsg); - -+ bzero(&fl, sizeof(fl)); -+ fl.l_type = F_UNLCK; -+ fl.l_whence = SEEK_SET; -+ if (fcntl(fileno(it->queuef), F_SETLKW, &fl) == -1) { -+ syslog(LOG_ERR, "%s: failed to unlock queue file: %m", -+ it->queueid); -+ /* let `error' decide whether we bounce or not */ -+ } -+ - switch (error) { - case 0: - unlink(it->queuefn); diff -ruN dma.orig/files/patch-libexec_dma_net.c dma/files/patch-libexec_dma_net.c --- dma.orig/files/patch-libexec_dma_net.c 2009-02-12 01:41:34.000000000 +0100 +++ dma/files/patch-libexec_dma_net.c 1970-01-01 01:00:00.000000000 +0100 @@ -1,21 +0,0 @@ ---- libexec/dma/net.c.orig 2008-09-30 19:47:21.000000000 +0200 -+++ libexec/dma/net.c 2009-01-17 19:02:43.000000000 +0100 -@@ -342,14 +342,10 @@ - it->queueid); - else - goto out; -- } -- -- /* -- * If the user doesn't want STARTTLS, but SSL encryption, we -- * have to enable SSL first, then send EHLO -- */ -- if (((config->features & STARTTLS) == 0) && -- ((config->features & SECURETRANS) != 0)) { -+ /* -+ * The client SHOULD send an EHLO command as the -+ * first command after a successful TLS negotiation. -+ */ - send_remote_command(fd, "EHLO %s", hostname()); - if (read_remote(fd, 0, NULL) != 2) { - syslog(LOG_ERR, "%s: remote delivery deferred: " diff -ruN dma.orig/pkg-descr dma/pkg-descr --- dma.orig/pkg-descr 2009-03-12 19:12:41.000000000 +0100 +++ dma/pkg-descr 2009-08-25 00:33:10.000000000 +0200 @@ -1,12 +1,13 @@ The DragonFly Mail Agent is a small Mail Transport Agent (MTA), -designed for home and office use. It accepts mails from locally -installed Mail User Agents (MUA) and delivers the mails either -locally or to a remote destination. Remote delivery includes -several features like TLS/SSL support and SMTP authentication, -but not MX record lookups. Therefore, dma is currently not -suitable for direct remote delivery. However, it works very -well for handling local mail plus secure mail submission to a -remote smarthost (e.g. for travelling mobile computers). +designed for home and office use. It accepts e-mail messages +from locally installed Mail User Agents (MUA) and delivers the +messages either locally or to a remote destination. Remote +delivery includes several features like TLS/SSL support and +SMTP authentication, but not MX record lookups. Therefore, +dma is currently not suitable for direct remote delivery. +However, it works very well for handling local mail plus +secure mail submission to a remote smarthost (e.g. for +travelling mobile computers). Since dma is not intended as a replacement for real, big MTAs like sendmail(8) or postfix(1), it does not listen on port 25 --- dma-20090825.diff ends here --- >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2841e09000000024>