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!
http://pobox.com/~djb/qmail.html
@unexec for alias in postmaster root mailer-daemon; do if [ -f %D/alias/.qmail-${alias} ] && [ $(stat -f '%%z' %D/alias/.qmail-${alias}) -eq 0 ]; then rm -f %D/alias/.qmail-${alias}; fi; done
@exec for alias in postmaster root mailer-daemon; do if ! [ -f %D/alias/.qmail-${alias} ]; then :> %D/alias/.qmail-${alias}; fi; done
@exec echo; echo "A /usr/local/etc/rc.d/qmailsmtpd and a /usr/local/etc/rc.d/qmailsend symlink were created." | /usr/bin/fmt; echo
@comment bin/auth_dovecot
@comment bin/auth_imap
@comment bin/auth_pop
@comment bin/auth_smtp
bin/bouncesaying
bin/condredirect
@comment bin/condwrite
bin/datemail
@comment bin/digest
bin/elq
bin/except
bin/forward
@comment bin/ipmeprint
bin/maildir2mbox
bin/maildirmake
bin/maildirwatch
bin/mailsubj
@comment bin/pbsadd
@comment bin/pbscheck
@comment bin/pbsdbd
bin/pinq
bin/predate
bin/preline
bin/qail
bin/qbiff
@comment bin/qmail-badloadertypes
@comment bin/qmail-badmimetypes
@comment bin/qmail-cdb
bin/qmail-clean
@comment bin/qmail-forward
bin/qmail-getpw
@comment bin/qmail-group
bin/qmail-inject
@comment bin/qmail-ldaplookup
bin/qmail-local
bin/qmail-lspawn
@comment bin/qmail-mfrules
bin/qmail-newmrh
bin/qmail-newu
bin/qmail-pop3d
bin/qmail-popup
bin/qmail-pw2u
bin/qmail-qmqpc
bin/qmail-qmqpd
bin/qmail-qmtpd
bin/qmail-qread
bin/qmail-qstat
@mode 04711
@owner qmailq
bin/qmail-queue
@mode
@owner
@comment bin/qmail-quotawarn
@comment bin/qmail-recipients
bin/qmail-remote
@comment bin/qmail-reply
bin/qmail-rspawn
@comment bin/qmail-secretary
bin/qmail-send
bin/qmail-showctl
@comment bin/qmail-smtpam
bin/qmail-smtpd
bin/qmail-start
bin/qmail-tcpok
bin/qmail-tcpto
@comment bin/qmail-todo
@comment %%EXTERNAL_TODO%%bin/qmail-todo
@comment bin/qmail-verify
bin/qreceipt
bin/qsmhook
bin/sendmail
bin/splogger
@comment bin/update_tmprsadh
bin/tcp-env
boot/binm1
boot/binm1+df
boot/binm2
boot/binm2+df
boot/binm3
boot/binm3+df
boot/home
boot/home+df
boot/maildir
boot/proc
boot/proc+df
boot/qmailsmtpd
boot/qmailsend
@comment boot/qmail/log/run
@comment boot/qmail/run
@comment boot/qmail-smtpd/log/run
@comment boot/qmail-smtpd/run
@comment boot/qmail-qmqpd/log/run
@comment boot/qmail-qmqpd/run
@comment boot/qmail-pop3d/log/run
@comment boot/qmail-pop3d/run
@comment boot/qmail-imapd/log/run
@comment boot/qmail-imapd/run
@comment boot/qmail-pop3d-ssl/log/run
@comment boot/qmail-pop3d-ssl/run
@comment boot/qmail-imapd-ssl/log/run
@comment boot/qmail-imapd-ssl/run
@comment boot/qmail-pbsdbd/log/run
@comment boot/qmail-pbsdbd/run
@comment This port installs the following manually (ie. not through qmail-hier)
configure/config
configure/config-fast
configure/dnsfq
configure/dnsip
configure/dnsptr
configure/hostname
configure/install
configure/ipmeprint
@comment control/Makefile
@comment @sample control/qmail-imapd.rules.sample
@comment @sample control/qmail-pop3d.rules.sample
@comment @sample control/qmail-qmqpd.rules.sample
@comment @sample control/qmail-smtpd.rules.sample
@comment @sample control/signatures.sample
share/man/man1/bouncesaying.1.gz
share/man/man1/condredirect.1.gz
share/man/man1/except.1.gz
share/man/man1/forward.1.gz
share/man/man1/maildir2mbox.1.gz
share/man/man1/maildirmake.1.gz
share/man/man1/maildirwatch.1.gz
share/man/man1/mailsubj.1.gz
share/man/man1/preline.1.gz
share/man/man1/qbiff.1.gz
share/man/man1/qreceipt.1.gz
share/man/man1/tcp-env.1.gz
share/man/man5/addresses.5.gz
share/man/man5/dot-qmail.5.gz
share/man/man5/envelopes.5.gz
share/man/man5/maildir.5.gz
share/man/man5/mbox.5.gz
share/man/man5/qmail-control.5.gz
share/man/man5/qmail-header.5.gz
share/man/man5/qmail-log.5.gz
share/man/man5/qmail-users.5.gz
share/man/man5/tcp-environ.5.gz
share/man/man7/forgeries.7.gz
share/man/man7/qmail-limits.7.gz
share/man/man7/qmail.7.gz
share/man/man8/qmail-clean.8.gz
share/man/man8/qmail-command.8.gz
share/man/man8/qmail-getpw.8.gz
share/man/man8/qmail-inject.8.gz
share/man/man8/qmail-local.8.gz
share/man/man8/qmail-lspawn.8.gz
share/man/man8/qmail-newmrh.8.gz
share/man/man8/qmail-newu.8.gz
share/man/man8/qmail-pop3d.8.gz
share/man/man8/qmail-popup.8.gz
share/man/man8/qmail-pw2u.8.gz
share/man/man8/qmail-qmqpc.8.gz
share/man/man8/qmail-qmqpd.8.gz
share/man/man8/qmail-qmtpd.8.gz
share/man/man8/qmail-qread.8.gz
share/man/man8/qmail-qstat.8.gz
share/man/man8/qmail-queue.8.gz
share/man/man8/qmail-remote.8.gz
share/man/man8/qmail-rspawn.8.gz
share/man/man8/qmail-send.8.gz
share/man/man8/qmail-showctl.8.gz
share/man/man8/qmail-smtpd.8.gz
share/man/man8/qmail-start.8.gz
share/man/man8/qmail-tcpok.8.gz
share/man/man8/qmail-tcpto.8.gz
share/man/man8/splogger.8.gz
@comment share/man/man8/qmail-smtpam.8.gz
@comment share/man/man8/qmail-badloadertypes.8.gz
@comment share/man/man8/qmail-badmimetypes.8.gz
@comment share/man/man8/qmail-mfrules.8.gz
@comment share/man/man8/qmail-recipients.8.gz
scripts/enable-qmail
scripts/mkaliasdir
@comment scripts/qmail-alias2recipients
@comment scripts/qmail-pwd2recipients
@comment scripts/qmail-users2recipients
@comment scripts/qmail-vpopmail2recipients
@comment Setup non-bin/ dirs (can be removed once pkg_install is EOL)
@exec %D/configure/install x
@comment Do initial config setup if not already done
@exec if ! [ -e %D/control/me ]; then (cd %D/configure && ./config); fi
@comment @dir boot/qmail/env
@comment @dir boot/qmail-imapd/env
@comment @dir boot/qmail-imapd-ssl/env
@comment @dir boot/qmail-pbsdbd/env
@comment @dir boot/qmail-pop3d/env
@comment @dir boot/qmail-pop3d-ssl/env
@comment @dir boot/qmail-qmqpd/env
@comment @dir boot/qmail-smtpd/env
@comment @dir log/qmail
@comment @dir log/qmail-imapd
@comment @dir log/qmail-imapd-ssl
@comment @dir log/qmail-pbsdbd
@comment @dir log/qmail-pop3d
@comment @dir log/qmail-pop3d-ssl
@comment @dir log/qmail-qmqpd
@comment @dir log/qmail-smtpd
@dir alias
@dir control
@dir users
@unexec echo "1) If you are permanently removing qmail, you should also 'rm -rf ${PKG_PREFIX}' and remove the qmail users/groups." | /usr/bin/fmt
@unexec echo "2) Do not forget to reconfigure your /etc/mail/mailer.conf to use your older MTA, or reconfigure your old MTA binaries if you decided to replace them." | /usr/bin/fmt
@unexec echo "3) Do not forget to enable sendmail as your default MTA if you have to. You can do it just executing 'echo sendmail_enable=\"YES\"' >> /etc/rc.conf" | /usr/bin/fmt
===> The following configuration options are available for netqmail-1.06_7:
BIG_CONCURRENCY_PATCH=off: Use a concurrency greater than 240
BIG_TODO_PATCH=off: Enable big_todo qmail patch
BLOCKEXEC_PATCH=off: Block many windows viruses/worms
DISCBOUNCES_PATCH=off: Discard double-bounces
DNS_CNAME=on: Request CNAME (vs ANY for BIND 4 bug)
DOCS=on: Build and/or install documentation
EXTTODO_PATCH=off: Extern high-perform. todo processing
LOCALTIME_PATCH=off: Emit dates in the local timezone
MAILDIRQUOTA_PATCH=off: Maildir++ support
OUTGOINGIP_PATCH=off: Set the IP address to send messages
QEXTRA=off: Enable QUEUE_EXTRA copy feature
QMTPC_PATCH=off: Send email using qmtp protocol
RCDLINK=on: Create rc.d/qmail symlink
SMTP_AUTH_PATCH=off: Provide SMTP Authentication
SPF_PATCH=off: Implement SPF checker
TARPIT_PATCH=off: Implement TARPIT functions
===> Use 'make config' to modify these settings
mail/qmail: deprecate, and make my stuff fetchable
...officially.
qmail has not been maintained for years, and has been
unfetchable with default port options for long;
PR 254648 has been unanswered in a year -> Deprecate.
While this non-C99 conforming C89 software museum lasts,
make my own patch fetchable by placing the qmail/ dir
into our dist network. bdrewery@ had cached a copy of it.
Fix WWW in parent/child ports
Many of the WWW are overwritten later which means the wrong value
is used. This did not happen before where the children were either
a) just using the pkg-descr from the parents
b) or had their own separate pkg-descr with custom WWW
Use WWW?= in parents when the child's WWW is different.
Children that use the same WWW as the parent can just inherit it,
i.e., the child WWW can be removed.
Approved by: portmgr (implicit)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
mail: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* <ashish@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Adam David <adam@FreeBSD.org>
* Adam McDougall <mcdouga9@egr.msu.edu>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alex Deiter <tiamat@komi.mts.ru>
* Alex Dupre <ale@FreeBSD.org>
* Alex Dupre <sysadmin@alexdupre.com>
* Alex Perel <veers@disturbed.net>
(Only the first 15 lines of the commit message are shown above )
*/*: Remove redundant '-[0-9]*' from CONFLICTS
The conflict checks compare the patterns first against the package
names without version (as reported by "pkg query "%n"), then - if
there was no match - agsinst the full package names including the
version (as reported by "pkg query "%n-%v").
Many CONFLICTS definitions used patterns like "bash-[0-9]*" to filter
for the bash package in any version. But that pattern is functionally
identical with just "bash".
Approved by: portmgr (blanket)
mail/qmail: Fixes CVE-2005-1513 to CVE-2005-1513, update TLS patch
mail/qmail-tls: Update TLS patch
See
https://www.qualys.com/2020/05/19/cve-2005-1513/remote-code-execution-qmail.txt
for details about the CVEs
- now builds with openssl 1.1.1e from the ports
PR: 244969, 245010
Submitted by: erdgeist@erdgeist.org (maintainer)
Reported by: klokanek@eldar.cz
MFH: 2020Q2
Security: CVE-2005-1513, CVE-2005-1514, CVE-2005-1515
qmail.org is gone, link to cr.yp.to/qmail.html instead
qmail.org has disappeared and there's no evidence it is coming back.
An unofficial cached copy can be found at
https://github.com/notqmail/qmail.org
Approved by: swills, zeising
Differential Revision: https://reviews.freebsd.org/D22129
Begin deorbit burn of ia64. We have not attempted to build packages for
it for many years.
While here, alphabetize ARCHs, pet portlint, and modernize usages.
Approved by: portmgr (tier-2 blanket)
Mark the remaining ports depending on Google Code as DEPRECATED, with an
EXPIRATION_DATE at the end of April 2017.
In the past six months, about a third of the ports marked BROKEN because
they were hosted on Google Code have been fixed. The remaining must not
be of use to anyone.
With hat: portmgr
Sponsored by: Absolight
GOOGLE_CODE has gone away.
- If a port has another upstream, remove GOOGLE_CODE
- If a port only has GOOGLE_CODE mark it BROKEN
Some ports have a local mirror configured but for security reasons, it
is not considered upstream.
Sponsored by: Absolight
mail/qmail-spamcontrol: document and support SSL requirement
My eyes are bleeding from looking at this qmail stuff. The compiling
in the pre-patch target is an essentially nice touch.
Approved by: SSL blanket
mail/qmail: Rename Make var from SELECTED_OPTIONS to SEL_OPTIONS
SELECTED_OPTIONS is now a framework informational variable, so there
is a name clash with qmail and its slave ports. Just rename the
variable here to remove the conflict (No-op)
Approved by: Just fix it
- Fix creation of rc symlink in package
- Fix procname in rc script so it can 'stop' correctly. [1]
Submitted by: Dirk Engling <erdgeist@erdgeist.org> [1]
Farewell qmail. You were good but the lack of an upstream maintainer or
ecosystem maintainers makes this not a viable mail system today. Personally
I am moving to postfix and have so far found it incredibly easy to setup and
already prefer it over qmail.
MASTER_SITES cleanup.
- Replace ${MASTER_SITE_FOO} with FOO.
- Merge MASTER_SITE_SUBDIR into MASTER_SITES when possible. (This means 99.9%
of the time.)
- Remove occurrences of MASTER_SITE_LOCAL when no subdirectory was present and
no hint of what it should be was present.
- Fix some logic.
- And generally, make things more simple and easy to understand.
While there, add magic values to the FESTIVAL, GENTOO, GIMP, GNUPG, QT and
SAMBA macros.
Also, replace some EXTRACT_SUFX occurences with USES=tar:*.
Checked by: make fetch-urlall-list
With hat: portmgr
Sponsored by: Absolight
Repair instances, almost all courtesy of bf ;-), of spaces
and/or tabs before the =. This made doing regular expressions
on the ports tree really difficult.
Approved by: portmgr (not really, but touches unstaged ports)
Fix patch application in mail/qmail-spamcontrol:
The spamcontrol patch is applied through a script, install_spamcontrol.sh. This
script does not return a non-zero status when patch failures are encountered.
So I missed many failures when updating this port.
To fix this, move the spamcontrol patch application to pre-patch so that the
PATCHFILES->DISTFILES (and manual patch application with PATCH) is not needed
for most patches. This ensures that the spamcontrol patch is always applied
before PATCHFILES. Some PATCHFILES were applying before the spamcontrol patch
causing it to fail to patch properly.
Bump revision as the build had been fine but some files were not being
generated in the package.
Also add my mirror as distcache does not have the updated patches yet.
Reported by: Oleg Strizhak
MFH: 2014Q3
Update mail/qmail-ldap to 20120221
- SMTPAUTHUSER option removed as it is now in upstream
- Apply upstream fixes from mailing lists
Changes: http://www.nrg4u.com/qmail/QLDAPNEWS
mail/qmail-spamcontrol: Update to 2.7.31
TLSREMOTE, NEWLINE, and BIGTODO are now mandatory upstream and have been
removed as options.
MOREIPME was removed upstream.
Changes:
http://www.fehcom.de/qmail/spamcontrol/RELEASE_27.spamcontrol
CHANGES (2.6 -> 2.7)
--------------------
Userland:
+) ucspi-ssl (> 0.8) mandatory.
(Only the first 15 lines of the commit message are shown above )
mail/qmail-tls: Update to 20110119 and use netqmail base
Changes:
2011-01-19
* flush_io after starttls, bug described in
http://www.kb.cert.org/vuls/id/555316 (Wietse Venema)
2007-04-08
* type correction of time argument in ssl_timeoutio functions
* bug in tlsserversciphers processing (Michael Hanselmann)
* RFC1891 (James Couzens)
2006-01-04
* strerror declaration in tls.c compile problem (Renato Botelho, Bill Shupp)
* chown uid.gid deprecated, should be uid:gid (Bill Shupp)
(Only the first 15 lines of the commit message are shown above )
Switch mail/qmail and mail/qmail-mysql to using netqmail. Switch their
PKGNAMEs to reflect this as well and bump their version up to the last
netqmail release of 1.06.
qmail-ldap and qmail-spamcontrol explicitly want to be applied on stock
qmail, so leave those alone.
This does not bring much, but it allows easier updates to qmail-tls and
some of the other patches which depend on netqmail.
qmail-tls is left as qmail for now. It will be updated to the newer
revision soon which does require netqmail.
Changes include:
* QMAILQUEUE by default
* Fix for 0.0.0.0
* qmail-smtpd is protected from exceedingly long (eg 2GB) headers
Other than those listed, there are no other significant changes beyond
documentation or patches that were already applied by default.
mail/qmail, mail/qmail-tls, mail/qmail-mysql, mail/qmail-spamcontrol:
- Support stagedir
- Fix all leftovers
Note that this depends on new Mk/Scripts/check_leftovers.sh added in r351446.
- Bump PORTREVISION in all ports due to plist being fixed.
- Support man.d on FreeBSD 9+
- Convert NOPORTDOCS
- Fix bad perl shebang for scripts/mkaliasdir
- Remove pkg-install and move all to pkg-plist
- Fix /var/qmail modified warning in poudriere by doing nothing in
install-mtree
- Fix /var/qmail getting unpredictable/wrong permissions due to
USERS/GROUPS changing for every user with HOME=/var/qmail
- Use more OPTIONS helpers
- Fix ccache support for spamcontrol patch building
- Fix build of SMTPEXTFORK in mail/qmail-spamcontrol with recent clang
Tested with: pkg and pkg_install
- Convert USE_QMAIL_RUN, USE_QMAIL_BUILD and WANT_QMAIL into USES feature
bapt contributed to the qmail.mk as well
- Trim headers
USES= qmail:run will add qmail into RUN_DEPENDS
USES= qmail:build will add qmail into BUILD_DEPENDS
USES= qmail[:both] will add qmail into both RUN and BUILD DEPENDS
USES= qmail:vars will set QMAIL_PREFIX
With hat: portmgr
- Fix error when QMAIL_PREFIX is not defined due to extra spaces
"Makefile", line 653: Need an operator
make: fatal errors encountered -- cannot continue
- Cleanup example rc file
- Support SHUTDOWN
- Check for needed files/dependencies in precmd
- Respect LOCALBASE
- Make rclint happy
- Rename symlink from qmail.sh to qmailsmtpd
- Rename installed example rc file from qmail-smtpd.rcNG to qmailsmtpd
- Fix runtime crash when using SMTPEXTFORK option due to
calling strtok(3) without string.h included.
Not reported "upstream" as the last update was 2009
and the site is dead.
Reported by: Christopher Weimann <christopher@weimann.us>
- Update TLS patch to v2, what address an issue that qmail-remote loops on
malformed server response
- Bump PORTREVISION
Reported by: Dirk Engling <erdgeist@erdgeist.org>
Feature safe: yes
In the rc.d scripts, change assignments to rcvar to use the
literal name_enable wherever possible, and ${name}_enable
when it's not, to prepare for the demise of set_rcvar().
In cases where I had to hand-edit unusual instances also
modify formatting slightly to be more uniform (and in
some cases, correct). This includes adding some $FreeBSD$
tags, and most importantly moving rcvar= to right after
name= so it's clear that one is derived from the other.
- Add SMTPAUTHUSER and SRS support
- While here, use WANT_QMAIL rather than hideous relative include
PR: ports/159964
Submitted by: Nicolas de Bari Embriz <nbari@dalmp.com>
Approved by: garga (carte blanche via email)
Remove painful examples of foo="", with particular prejudice against
constructions that parse out to [ -z "$foo" ] && foo=""
These are bad examples that get copied and pasted into new code, so the
hope is that with less bad examples there will be less need for me to
bring this up in review.
In a few of these files all that were changed were comments so that next
time I search for these patterns I won't trip on the file for no reason.
In a few places, add $FreeBSD$
No functional changes, so no PORTREVISION bumps
- Really fix qmail-spamcontrol build now, i was building ucspi-ssl after
install_spamcontrol.sh and it must run before since this script need to copy
ssl.a to correct place
- Bump PORTREVISION