Up to [cvs.NetBSD.org] / pkgsrc / mail / qmail
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
qmail: restore TAI-leapsecs.patch distinfo, lost in -r1.50 ("Pull the latest tlsonlyremote patch").
Pull the latest tlsonlyremote patch to fix OpenBSD build with native LibreSSL. No other changes in the patch and NFCI elsewhere. Build-tested on macOS, Debian, NetBSD.
Update checksums to BLAKE2s, noted by wiz@.
mail: Remove SHA1 hashes for distfiles
Update to notqmail 1.08 (as qmail-1.03nb49). From the changelog: ## Fix bugs - Vulnerabilities we've inherited from qmail 1.03, reported by Qualys. - CVE-2005-1515: fix signedness wraparound in `substdio_{put,bput}()`. - CVE-2005-1514: fix possible signed integer overflow in `commands()`. - CVE-2005-1513: fix integer overflow in `stralloc_readyplus()`. - Fix several other places where variables could overflow. - `qmail-pop3d`: instead of running as root if root authenticates (and being a vector for a dictionary attack on the root password), exit 1 to look just like a failed `checkpassword` login. - `qmail-inject`: do not parse header recipients if `-a` is given. - Correctly detect multiple IP addresses on the same interface. - Remove workaround for ancient DNS servers that do not properly support CNAME. - Fix possible integer overflow in `alloc()`. ## Reduce bug likelihood - Remove `dnscname` and `dnsmxip` programs that were being built but not installed. - Remove `systype` and related platform detection. - Remove unused variable in `maildir.c`. - Reduce variable scope in `tcpto.c`. - Avoid local variables shadowing same-named globals. - Avoid needing `exit.h` in named-pipe bug check. - Add a `test` target and some unit tests, using Check. - Add missing function declarations in `cdbmss.h`, `scan.h`. - Add missing return types to `main()`. - Add `hier.h` for inclusion in `instcheck.c`, `instchown.c`, `instpackage.c`. - Use system headers and types instead of the `HASSHORTSETGROUPS` check. - Use system headers instead of redeclaring `exit()`, `read()`, `write()`, `malloc()`, `free()`, `fork()`, `uint32_t`. - Use C89 function signatures for code we've touched so far. - Automated builds: - TravisCI: move setting `MAKEFLAGS` out of the script and into the matrix. - Add FreeBSD builds with CirrusCI. - Add a GitHub Actions build. ## Other changes - Remove DJB's TODO. - Replace many `pobox.com` URLs. - Acknowledge Erik Sjölund's `qmail-local.c` bugfix that we've inherited from netqmail. - Avoid generating catted manpages by building with `NROFF=true`. - Optionally create a `systemd` service file. - Run an alternate `qmail-remote` by setting `QMAILREMOTE` in `qmail-send`'s environment. ## Intent to remove In the course of developing this release, we found programs that we intend to remove in the next release. We believe none of these remains necessary or useful enough to be worth the cost of maintaining. If you disagree, please let us know! - Remove `qsmhook`, long since replaced by `preline`. - Remove inefficient `maildirwatch`. - Remove obsolete mail client wrappers. - Remove `qmail-pop3d`, since Maildir is well supported by actively maintained POP3 servers.
Update to tlsonlyremote 20200202 from upstream TLS patch 20200107. Adds client cert authentication with TLS v1.3. Bump PKGREVISION.
Update from netqmail 1.06 (2007) to notqmail 1.07 (just released). From the changelog: - code: remove incorrect usage of vfork() - code: detect and prefer utmpx where available - code: removed idedit, install-big. var-qmail packages are no more - portability problem: explicitly initialize strerr_sys and define BIND_8_COMPAT to work around Mac OS X - code: add instchown to set ownership and mode on installed files - code: add instpackage to install without root access - doc: rename INSTALL, SENDMAIL to INSTALL.md, SENDMAIL.md to support building on case-insensitive filesystems - code: lookup uid/gid at runtime - code: use DESTDIR environment variable as root directory in install pkgsrc changes: - If hostname isn't FQDN, config-fast-pkgsrc wouldn't produce a working config, so don't run it; tell user what to do instead - Stage QMAIL_QUEUE_DIR into DESTDIR/tmp, to be more obvious that it's not being packaged up (and is not how a queue gets created at pkg_add time) - Drop custom destdir, qbiffutmpx, and Darwin patches - Rebase TLS-onlyremote, QMAILREMOTE, and SRS patches - Require latest ucspi-ssl and ucspi-tcp6 for IPv4 fixes - Move MESSAGE.tls to README.tls, and remove other MESSAGE* - Set PKG_HOME even for non-default values of QMAIL_ALIAS_USER - Check whether alias/.qmail-foo exist before trying to remove Bump PKGREVISION.
Update to tlsonlyremote 20190408, cut from upstream TLS patch with the same date. Fixes build with OpenSSL 1.1 and includes pkgsrc's #ifdef guards for non-TLS builds. Bump PKGREVISION.
Add Toby Betts' "tai-leapsecs" patch to handle leap seconds correctly when the system clock is set to TAI (and a libtai dependency to get leapsecs.dat). While here, catch up to his latest maildiruniq patch. Let an installed ucspi-tcp6 satisfy the ucspi-tcp dependency for non-'inet6' builds. Bump PKGREVISION.
Bump destdir patch to build on OpenBSD. No functional change elsewhere.
Add a new non-optional patch: qmail-spp, a generic plugin interface for qmail-smtpd (tweaked to tolerate the absence of a config file). The RCPTCHECK patch is a logical subset of SPP with a slightly different interface, and conflicts with SPP. Remove RCPTCHECK. Bump PKGREVISION.
Provide a TLS patch without the qmail-smtpd portion, as acceptutils 20181108 implements STARTTLS in fixsmtpio(8). Rebase EAI patch onto TLS-onlyremote. Switch back to upstream for RCPTCHECK, which applies cleanly again. Bump PKGREVISION.
We've been stuck on a TLS implementation from 2007 because the TLS patch and the AUTH patch conflict, nobody else has published a newer hand-merged combo patch, and as it happens, I'd apparently rather write a pile of new DJB-style C than make myself responsible for hand-merging other people's security-sensitive code every time there's a new TLS patch. Now that we have AUTH without patching (see mail/qmail-acceptutils), the "sasl" option goes away, we're finally on the most recent TLS patch available, and when it's updated it'll be easy for us to keep up. Rebase RCPTCHECK and EAI patches onto netqmail-with-TLS-and-no-AUTH. Bump PKGREVISION.
Remove vestiges of rejectutils patch, missed in previous.
Update to netqmail-1.06-qbiffutmpx-20170820.patch. Should fix EL7 bulk build. No functional change elsewhere.
Update to 1.03nb32. pkgsrc changes: - Apply the qbiff-utmpx patch to (probably) fix build on FreeBSD - Enable "qmail-srs" by default - Add "qmail-customerror", enabled by default - Move TLS config steps from INSTALL to MESSAGE.tls
Update to 1.03nb29. pkgsrc changes: Remove unneeded options: - Unconditionally apply netqmail (which includes a local patch; remove it) - Unconditionally apply bigdns, maildiruniq, outgoingip, rcptcheck, remote - Unconditionally apply the TLS + SMTP AUTH _patch_ (not the options) - Record all applied patches (mandatory and optional) in QMAILPATCHES - Remove badrcptto, qregex, realrcptto, viruscan (moved to rejectutils) Simplify packaging: - Extract a standalone patch <https://schmonz.com/qmail/rejectutils> to repackage the mutually conflicting recipient- and content-checking patches as separate programs, along with wrappers for running checks in sequence - Extract a standalone patch <https://schmonz.com/qmail/destdir> to build to a staging area, as non-root, without hardcoded IDs - Run the destdir patch's `install-destdir` to make or repair the queue and set special file permissions, obviating the need for a dependency on mail/queue-fix and handcrafted SPECIAL_PERMS - While here, run `instcheck` to ensure we've installed just like `make setup check` as root would have - Install INSTALL and SENDMAIL docs under their original names, even on Darwin - Avoid building catpages, since we don't install them, and remove nroff from USE_TOOLS Default-enable more useful options: - "eai" (new) permits UTF-8 almost everywhere in email - "qmail-rejectutils" (new) adds several tools for selectively rejecting messages - "syncdir" forces synchronous link() and related syscalls - "tls" and "sasl", instead of causing patch conflicts, cause the TLS and SMTP AUTH code to be included (!)
Add optional QMAILREMOTE patch. Bump PKGREVISION.
Pullup ticket #5254 - requested by schmonz mail/qmail: build fix Revisions pulled up: - mail/qmail/MESSAGE.srs 1.1 - mail/qmail/Makefile 1.81-1.84 - mail/qmail/PLIST 1.17 - mail/qmail/distinfo 1.32-1.33 - mail/qmail/files/README.srs 1.1-1.2 - mail/qmail/options.mk 1.39-1.40 - mail/qmail/patches/patch-auto__uids.c 1.2 - mail/qmail/patches/patch-auto__uids.h 1.2 --- Module Name: pkgsrc Committed By: schmonz Date: Fri Mar 31 13:52:00 UTC 2017 Modified Files: pkgsrc/mail/qmail: Makefile PLIST distinfo options.mk Added Files: pkgsrc/mail/qmail: MESSAGE.srs pkgsrc/mail/qmail/files: README.srs Log Message: Add "qmail-srs" option to apply the Sender Rewriting Scheme patch, requested by Nathan Arthur. Bump PKGREVISION. --- Module Name: pkgsrc Committed By: schmonz Date: Tue Apr 4 07:50:18 UTC 2017 Modified Files: pkgsrc/mail/qmail: Makefile distinfo options.mk pkgsrc/mail/qmail/patches: patch-auto__uids.c patch-auto__uids.h Log Message: Substitute configured qmail users and groups (defaults haven't changed). Bump dependency on queue-fix to a version that does likewise. Bump PKGREVISION. --- Module Name: pkgsrc Committed By: schmonz Date: Tue Apr 4 14:58:06 UTC 2017 Modified Files: pkgsrc/mail/qmail: Makefile pkgsrc/mail/qmail/files: README.srs Log Message: Give absolute path to srsfilter. From Nathan Arthur in private mail. --- Module Name: pkgsrc Committed By: schmonz Date: Sat Apr 8 18:22:51 UTC 2017 Modified Files: pkgsrc/mail/qmail: Makefile Log Message: Remove dependency on sysutils/checkpassword. In the default install it's used only for qmail-pop3d, which is likely not being used much anymore. Other installs might need a different implementation of checkpassword anyhow. And this implementation is not (yet?) in the public domain, so it's blocking us from publishing binary packages of qmail. Unless (until?) sysutils/checkpassword becomes "public-domain", it remains under "djb-nonlicense". If you continue to need it, since you've already accepted the nonlicense, simply install it directly. I believe this package and all its remaining dependencies are now in DEFAULT_ACCEPTABLE_LICENSES. Bump PKGREVISION.
Substitute configured qmail users and groups (defaults haven't changed). Bump dependency on queue-fix to a version that does likewise. Bump PKGREVISION.
Add "qmail-srs" option to apply the Sender Rewriting Scheme patch, requested by Nathan Arthur. Bump PKGREVISION.
Add qmail-maildiruniq and qmail-rcptcheck options, off by default. Since we no longer stage-install as root, instcheck is noise; skip it. Mollify pkglint. Bump PKGREVISION.
When I added basic DESTDIR support, I introduced a regression: the source package stopped initializing the queue. (DESTDIR makes source packages generate binary packages, which had never had that feature. See <http://mail-index.netbsd.org/pkgsrc-changes/2011/06/07/msg056339.html> for where the regression was introduced.) Add a dependency on mail/queue-fix and, if no queue is present at pkg_add time, initialize it. Defer creating users and groups all the way to pkg_add time, and improve DESTDIR support to full "user-destdir". Since mail/postfix lets unprivileged users install it, we do too. (Can't run a server that way, but so what.) A typical (privileged) binary package should now: 1. Install on any other system of matching OS and architecture, 2. Not need matching numeric UIDs and GIDs to do so, and 3. Be usable in production. You know, like any other binary package. Bump PKGREVISION.
Look up user/group IDs at runtime. This lets us defer USERGROUP_PHASE to "pre-install", and is a step closer to having the qmail users and groups be created at pkg_add time (as with binary packages of typical software needing users and groups). Based on Paul Fox's getpwnam.patch for qmail 0.96.
Add SHA512 digests for remaining patches.
Add SHA512 digests for some patches.
Add SHA512 digests for distfiles for mail category Problems found locating distfiles: Package mutt: missing distfile patch-1.5.24.rr.compressed.gz Package p5-Email-Valid: missing distfile Email-Valid-1.198.tar.gz Package pine: missing distfile fancy.patch.gz Package postgrey: missing distfile targrey-0.31-postgrey-1.34.patch Package qmail: missing distfile badrcptto.patch Package qmail: missing distfile outgoingip.patch Package qmail: missing distfile qmail-1.03-realrcptto-2006.12.10.patch Package qmail: missing distfile qmail-smtpd-viruscan-1.3.patch Package thunderbird24: missing distfile enigmail-1.7.2.tar.gz Package thunderbird31: missing distfile enigmail-1.7.2.tar.gz Otherwise, existing SHA1 digests verified and found to be the same on the machine holding the existing distfiles (morden). All existing SHA1 digests retained for now as an audit trail.
Improve binary package: * Reduce potential patch conflicts by switching more DESTDIR support to sed * Enable `qmail-netqmail` by default * Install `qmail-viruscan` signatures via CONF_FILES * With `tls` option, don't generate cert, instruct the user at INSTALL time That last change also fixes the source build with `tls` enabled on systems that don't already have a /var/qmail/control, as reported by Thomas Lazar on pkgsrc-users@. While here, add a comment with the new location of the qregex patch. Since it's named strangely, I've also placed a traditionally-named copy on ftp.n.o. Bump PKGREVISION.
The TLS/SASL patch no longer applies over our patch to hier.c (reported by Thomas Lazar), so instead express our local changes with SUBST_SED at do-configure. Update to the latest TLS/SASL patch. Bump PKGREVISION.
Rename and comment pkgsrc patches. No functional change.
PR#46333 mail/qmail: Fix qmail-*spawn segfaults on DragonFly Fix implemented per PR.
At joerg@'s suggestion instead of set MANINSTALL to agree with what gets installed simple don't install the catpages.
Fix PLIST overlap with dependency
DESTDIR support, PKGMANDIR support, OS X fixes, general cleanups. For ${OPSYS}/${USE_DESTDIR}/${PKGMANDIR} combinations that already worked, no functional change (hence no PKGREVISION bump).
Upgrade netqmail to 1.06, which is identical to 1.05 except that instead of consisting of a pristine qmail tarball and netqmail patch, 1.06 has the patch already applied. No user-visible changes to pkgsrc, either; this just simplifies a weird build and will make future upgrades (don't laugh!) easier. jlam@ "looks fine"
Update tls-smtpauth combined patch to 20070321. SMTP AUTH changes: * Includes a generic 'MAIL FROM:' parameter parser supporting 'AUTH' and 'SIZE' advertisements; complies to RFC 3848 * Fixes a gcc (3.4.6) -O2 optimization problem in base64.c Bump PKGREVISION.
Update to nb12 (is this a record?). From the respective patch changelogs: * Update qregex patch (PR pkg/34760) to 20060423: - qregex adds the matched regex pattern to its log entries if the LOGREGEX environment variable is set. * Update realrcptto patch to 20061210: - Logging uses substdio_puts() and substdio_flush() instead of substdio_putsflush(). This makes log entries less likely to be interleaved. Thanks to Matthew Dempsky for finding this. - For QMAILRRTENYALL, use error code 554 after DATA, not 550. Thanks to ... sorry, I lost track of who found this. - Log stat() errors for .qmail files. Thanks to Chris Bensend for suggesting this. * Update tls-smtpauth combined patch to 20060105. TLS changes: - bug: qmail-remote loops on malformed server response (B. Shupp, A. Meltzer) - no STARTTLS advertised when control/servercert.pem absent (Jason Haar) - control/notlshosts (Albert Weichselbraun) - control/tlshosts/exhaustivelist - scripts honor conf-users (Sven Verdoolaege) - strerror declaration in tls.c compile problem (Renato Botelho, Bill Shupp) - chown uid.gid deprecated, should be uid:gid (Bill Shupp) SMTP AUTH changes: - includes the evaluation of the 'Auth' and the 'Size' parameter in the 'Mail From:' command. - uses DJB functions to copy FDs. - corrects some minor mistakes displaying the 'Auth' userid. - uses keyword "ESMTPA" in Received header in case of authentication to comply with RFC 3848. pkgsrc changes: * Note SPECIAL_PERMS on qmail-queue binary (from dsainty@).
Pullup ticket 1562 - requested by schmonz update checksum for qmail Darwin patch Revisions pulled up: - pkgsrc/mail/qmail/distinfo 1.15 Module Name: pkgsrc Committed By: schmonz Date: Thu May 11 20:10:10 UTC 2006 Modified Files: pkgsrc/mail/qmail: distinfo Log Message: The descriptive text at the beginning of panther.patch has been changed; update checksums.
The descriptive text at the beginning of panther.patch has been changed; update checksums.
Author updated the description of "panther.patch" to mention it works on Tiger as well. No change to the patch itself.
The patch for the "nullenvsender" option is no longer available: its author considers it no longer relevant. Remove the option.
Remove duplicate netqmail lines. Reported by Robert Elz in PR 29973.
Add RMD160 sums for all the optional patches.
Add RMD160 digests.
Pullup ticket 190 - requested by Amitai Schlair viruscan addition for qmail Module Name: pkgsrc Committed By: schmonz Date: Tue Dec 21 05:32:56 UTC 2004 Modified Files: pkgsrc/mail/qmail: INSTALL Makefile distinfo options.mk Log Message: With the "viruscan" option, enable Russ Nelson's patch to SMTP-reject messages with MIME attachments that match certain signatures, as well as Jeremy Kitchen's patch that causes such rejections to be logged. Bump PKGREVISION.
With the "viruscan" option, enable Russ Nelson's patch to SMTP-reject messages with MIME attachments that match certain signatures, as well as Jeremy Kitchen's patch that causes such rejections to be logged. Bump PKGREVISION.
Using bsd.options.mk, add several common build-time options. The complete list: badrcptto bigdns darwin netqmail nullenvsender outgoingip qregex realrcptto smtpauth syncdir tls This obviates the need for a separate netqmail package. As a result, reintegrate Makefile.common into Makefile, and simplify a handful of definitions. If you used the netqmail package, set PKG_OPTIONS.qmail to "netqmail bigdns" to build with the same patches as before. Note that most of these options result in patches being applied, and that any given combination of patches may not apply cleanly. If there's a combination you need that doesn't work, or build options you need that aren't available, let me know. On Darwin, the "darwin" option is set by default, as it's needed in order to build. The patch includes <nameser8_compat.h>, which is present on Panther, but not on older systems. We provide a buildlink stand-in where needed. On Linux, the "netqmail" option is set by default, as with recent glibc it's necessary to #include <errno.h> in order to build. On other platforms, no options are set by default. Bump PKGREVISION.
Remove add-on scripts and config files from the qmail and netqmail packages. They now simply compile and install qmail and its prerequisites. (The add-on scripts and config files will be revivified as a separate qmail-run package. Thus, QMAIL_AUTOCONFIG is no longer needed.) The user is notified at install time that one popular, well-regarded way to enable qmail is to follow the directions in "Life with qmail", and that another way is to install the qmail-run package. These changes, based on discussion with Charles Cazabon, are intended to make life easier for the helpful people on the qmail mailing list by clearly marking custom add-ons as such. Other changes: Since netqmail is a tarball containing the qmail tarball plus the netqmail bits, we can use it for both packages and share more logic between the two packages: MASTER_SITES, DISTINFO_FILE, WRKSRC, and the post-extract target. Now that there's one place to put the distinfo, add Eben Pratt's simple patch to build and install on Mac OS X 10.3 (the patch is not applied on other OSes). Bump PKGREVISION of both packages.
Short story: 1) Mostly conform to hier(7) and honor PKG_SYSCONFDIR. 2) Follow more closely Dave Sill's "Life with qmail" (LWQ). 3) Add a bunch of features to the rc.d scripts. 4) Remove some (but not all) obstacles to binary packaging. 5) Introduce QMAIL_AUTOCONFIG, QMAIL_QUEUE_DIR, and QMAIL_QUEUE_EXTRA. 6) Enable pkgviews installation. 7) Bump PKGREVISION. Long story: 1) Mostly conform to hier(7) and honor PKG_SYSCONFDIR. Based on a January 1997 post by mrg to the qmail list: prior to installation, we create symlinks in ${QMAILDIR} that point into ${LOCALBASE} or ${PKG_SYSCONFDIR}, causing installation to place files in those locations while allowing the canonical /var/qmail paths to continue to work. The notable deviation from hier(7) is that even though some binaries ought to go in sbin, they've all been lumped into bin for simplicity. Pleasant effects: * We no longer need to set LOCALBASE (a big no-no), and as a result also no longer need to set NO_MTREE, RCD_SCRIPTS_EXAMPLEDIR, or EVAL_PREFIX. This will also allow a few qmail-related packages to do likewise. * The commands and manual pages are in easily accessible paths by default. * Package installation and deinstallation work much better. Side effects: * There were a few minor conflicts with mail/courier-maildirmake, mail/mutt, and mail/pulsar. The latest versions of each are fine, so we add CONFLICTS only for older versions. (Thanks to those packages' maintainers!) There's also a conflict with security/mirrordir, which has a "bin/forward" command and corresponding section 1 man page. * Some directories under ${PREFIX} get chown'd to group qmail. Rather than modify the qmail installer, the affected directories are simply chown'd back afterward during post-install if PKG_INSTALLATION_TYPE is "overwrite". (If it's "pkgviews", then only the package's depot directory is affected, so we leave it alone.) 2) Follow more closely Dave Sill's "Life with qmail" (LWQ). Similarities: * Installs into /var/qmail from source. * Installs ucspi-tcp and daemontools. * Uses tcpserver(1). * Uses tcp.smtp.cdb for relay access control. * Uses control/defaultdelivery. * Uses control/concurrencyincoming. * Requires that control/rcpthosts exist to prevent open relays. * Uses similar chains of commands in run scripts. * Provides a script much like qmailctl. Differences: * This package does the following work for you automatically: * Creates user accounts. * Fetches, extracts, patches, configures, and compiles the source. * Installs binaries. * Runs ./config-fast. * Creates tcp.smtp{,cdb} and tcp.pop3d{,cdb}. * Creates control/concurrencyincoming. * Creates control/defaultdelivery (defaulting to "./Mailbox"). * Creates the three required system aliases. * LWQ suggests doing some things this package doesn't do: * Applying patches. * Copying a script from /var/qmail/boot to /var/qmail/rc. * Configuring svscan(8) to run at boot. * Creating and populating /service. * Using supervise(8) and multilog(8). * Using the qmailctl script to control qmail. * Using the inst_check script to verify the installation. * Storing tcp.smtp{,cdb} in /etc. * Renaming the system sendmail(8) and marking it non-executable. * Instead, this package: * Builds from unmodified source. (See also mail/netqmail.) * Uses NetBSD-style rc.d scripts (including one similar to qmailctl). * Sends log messages to syslog(3). * Stores tcp.smtp{,cdb} and tcp.pop3{,cdb} in ${PKG_SYSCONFDIR}. * Provides an example mailer.conf(5). 3) Add a bunch of features to the rc.d scripts. Rename the qmail script and rcvar to qmailsend. Add "doqueue" (synonyms: alrm, flush) and "queue" commands, add "hup" as a synonym for "reload", and determine default delivery instruction from control/defaultdelivery (LWQ). Add control/defaultdelivery to required_files. Rename qmailsend_flags to qmailsend_defaultdelivery, which overrides control/defaultdelivery if set. In the qmailpop3d and qmailsmtpd scripts, enforce resource limits with softlimit(8) (LWQ). Add dependency on sysutils/daemontools for this. Rename qmailfoo_flags to qmailfoo_tcpflags. Add qmailfoo_tcphost (default: 0, meaning "any address") and qmailfoo_tcpport (default: 110 and 25, respectively). Add qmailfoo_softlimit (default: 2000000). Add qmailfoo_pretcpserver and qmailfoo_prefoo (default: empty), useful for inserting commands such as rblsmtpd(1) or relay-ctrl into the chain. Log to splogger's default syslog facility ("mail"), and use the name of the script as the tag. In the qmailpop3d, qmailsend, and qmailsmtpd scripts, add qmailfoo_postenv (defaults: empty, PATH=${PREFIX}/bin:$PATH, and QMAILQUEUE=${PREFIX}/bin/qmail-queue, respectively), useful primarily for setting environment variables for each service. Add "pause" and "cont" commands (LWQ). They send -STOP and -CONT signals, respectively. Add "stat" as a synonym for "status" (LWQ). In the qmailpop3d script, add -x to qmailpop3d_tcpflags and add "cdb" command. Add qmailpop3d_checkpassword (useful for authenticating against alternate user databases) and qmailpop3d_maildirname (useful if your maildirs are named something other than "Maildir"). Add tcp.pop3.cdb to required_files. In the qmailsmtpd script, add -x and remove -H from qmailsmtpd_tcpflags, limit the number of incoming connections to control/concurrencyincoming, and add "cdb" command (LWQ). Add control/concurrencyincoming and tcp.smtp.cdb to required_files. Add qmailqread script and ${PREFIX}/bin/qmail-qread-client, based on Steinar Haug's example on www.qmail.org. If enabled, this allows local non-root users to see the queue. Add qmail script (structure copied from net/samba/files/samba.sh). Its interface is very similar to LWQ's qmailctl: it provides the commands "start stop restart rcvar pause cont stat status cdb doqueue reload queue alrm flush hup help". These commands can be run either directly from the appropriate service-specific script(s), or from this qmail script (which will call the right script(s) for you). 4) Remove some (but not all) obstacles to binary packaging. Each of these is better explained elsewhere. Summary: * Installs into the normal ${LOCALBASE}. * /var/qmail paths still work. * No patches are applied. (See also mail/netqmail.) 5) Introduce QMAIL_AUTOCONFIG, QMAIL_QUEUE_DIR, and QMAIL_QUEUE_EXTRA. QMAIL_AUTOCONFIG (default: YES): whether to automatically create basic config files. QMAIL_QUEUE_DIR (default: ${VARBASE}/spool/qmail): the path to the queue. QMAIL_QUEUE_EXTRA (default: empty): an additional recipient that will be added to every delivery. This is used primarily for logging. If this is set to a non-empty value, the necessary dot-qmail(5) file is created automatically at install time. 6) Enable pkgviews installation. 7) Bump PKGREVISION. Other user-visible changes: This package no longer applies patches to qmail. mail/netqmail, to be imported shortly, does. Restrictions on the redistribution of modified qmail apply not only to binaries but also to source. Clarify this in RESTRICTED. Add "newaliases", "hoststat", and "purgestat" entries to the sample mailer.conf. Install it to ${PREFIX}/share/examples/${PKGBASE}, as other pkgsrc mailers do. ("newaliases" is actually provided by the fastforward package, and isn't needed unless you're using it.) Explain how to enable qmail in MESSAGE (cribbed from the postfix package). Thanks to zuntum, snj, salo, and jlam for ideas, discussion, and review.
Add revision 1.01 of Ward Vandewege's badrcptto patch. With this patch, qmail-smtpd will reject mail during the SMTP conversation if a recipient is listed in control/badrcptto. This complements control/badmailfrom as found in stock qmail. Requested by Nathan Arthur. Add an rc.d script for qmail-pop3d. It needs sysutils/checkpassword, which is so tiny I've added the dependency even as I don't use qmail-pop3d myself. In the rc.d script for qmail-smtpd, require control/rcpthosts to be present. This prevents accidental open relays. Now that it's used for the path to checkpassword too, rename LOCALBASE_UCSPI_TCP to LOCALBASE_NORMAL. Convert to buildlink3. Bump PKGREVISION.
Russ Nelson, Charles Cazabon, Dave Sill, Peter Samuel, and Henning Brauer have prepared a distribution of qmail, called "netqmail": "We have done this because in our opinion, too many new users are confused by the out-of-date INSTALL file, and too much time is spent arguing on the mailing list over bugs. We have tried to stick to the barest minimum number of changes. We have fixed only those things which are out-and-out wrong, or which have been approved by djb (specifically QMAILQUEUE)." This package already includes the QMAILQUEUE patch. Add netqmail 1.05's other patches, with the exception that patches to documentation files which are not installed have been lovingly omitted. This package also already includes a patch to handle oversized DNS packets. It's still here, too. pkgsrc changes: * Add qmail-smtpd rc.d script (and ensuing dependency on net/ucspi-tcp). * Update qmail rc.d script: respect $qmail_flags, treating it as the default delivery instruction. * Remove non-working MASTER_SITES. From the netqmail changelog: 20040121 code: qmail-smtpd is protected from exceedingly long (eg 2GB) header lines 20040121 code: qmail_lspawn, qmail-newmrh, qmail-newu, and qmail-rspawn are protected from misbehaving on hosts where the size of an integer is not the same as the size of a character pointer (eg 64 bit hosts with 32 bit ints) 20031027 doc: qmail.7 identifies installation as netqmail and points to http://qmail.org/ 20031027 doc: qmail-queue.8 adds explanation of $QMAILQUEUE 20031027 doc: qmail-log.5 adds reference to errors from $QMAILQUEUE script 20031027 code: qmail-smtpd identifies itself as netqmail 20031027 code: if $QMAILQUEUE is set, it's invoked instead of qmail-queue 20031024 code: changed errno from int to #include. 20031024 code: fixed .qmail parsing bug. 20031024 code: recognize 0.0.0.0 as a local address. 20031024 code: sendmail's -f flag now overrides environment variables. And for all this, bump PKGREVISION. Pre-flight checks by snj@.
Store patches locally instead of fetching them from PATCH_SITES - fixes problem with qmailqueue patch unexpectedly differing over time
Apply QMAILQUEUE patch: Bruce Guenter has written a patch which causes any program that would run qmail-queue to look for an environment variable QMAILQUEUE. If it is present, it is used in place of the string "bin/qmail-queue" when running qmail-queue. This could be used, for example, to add a program into the qmail-smtpd->qmail-queue pipeline that could do filtering, rewrite broken headers, etc. This does not break anything, and is required by some programs, for instance qmail-scanner. Bump PKGREVISION - we are at qmail-1.03nb2 now.
Initial import of qmail-1.03 -- SECURE, reliable, efficient, simple, and FAST MTA for UNIX systems qmail checks for qmail users' existance at compile time, so this package must be built as root (it tries to add necessary users and groups), thus NO_PACKAGE and IS_INTERACTIVE are set. PLIST file is left empty intentionally, because qmail installs itself to /var/qmail, outside ${PREFIX}. The qmail program is a secure, reliable, efficient simple message transfer agent. It is meant to be a replacement for the entire sendmail-binmail system that most UNIX hosts use. Although qmail holds security and reliability as its top two priorities, it is also fast. On a Pentium under BSD/OS, qmail can easily handle 200000 separate messages per day that are injected and must then be delivered to local mailboxes! Security and reliability are qmail's two strengths, however. The qmail package ensures a message, once accepted, will never be lost. An optional new mailbox format, maildir, even lets users safely read their mail over NFS, while still accepting new mail deliveries. The following features are supported: host and user masquerading, full host hiding, virtual domains, null clients, list-owner rewriting, relay control, double-bounce recording, arbitrary RFC 822 address lists, cross-host mailing-list loop detection, per-recipient checkpointing, downed host backoffs, independent message retry schedules, a drop-in sendmail replacement, and more! The package is still being worked on.
Initial revision