summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Mark Wooding [Thu, 8 Apr 2010 09:01:37 +0000 (10:01 +0100)]
debian/rules: Use `git' potty wrapper.
Mark Wooding [Thu, 8 Apr 2010 08:36:40 +0000 (09:36 +0100)]
dns.c: Increase DNS packet buffer to 64K.
Otherwise qmail-remote fails on sites that return more than 512 bytes of
stuff to ANY queries, and you get bounces. We have a sufficiently
recent resolver library that it will automatically fall back to TCP to
fill the buffer, and 64K per outgoing message is not a big deal.
Mark Wooding [Thu, 27 Apr 2006 19:33:39 +0000 (20:33 +0100)]
addrcheck: Run address verification services with a timeout.
This entails reordering the code which reads the answer, to check for
the process exiting before reading its output. This also means that
we deadlock the service if it tries to write more than a pipe-buffer's
worth of stuff, but we're expecting a single character, dammit -- it
shouldn't try to give us an essay.
If the timeout goes off, we report a temporary failure, as with any
other untoward situation.
Mark Wooding [Fri, 14 Apr 2006 20:18:47 +0000 (21:18 +0100)]
qmail-valid-addresses security: scan read dot-qmail files as owner
Usually, qmail-valid-addresses is run as root, and it scans for and
reads all the dot-qmail files as root. This is bad: if a user creates
(say) a symlink to a read-sensitive device with the right name, then
root will open and read the device, causing it to do weird things.
There are also other problems to do with leaking the existence of files
in directories unreadable to the user in question. Even if we were to
check with lstat(2) before reading the file, there's an unavoidable race
between the lstat(2) and the open(2), during which a malicious user
could switch in a link.
The new implementation has qmail-valid-addresses switching effective uid
before scanning that user's home directory. Since all the file I/O is
done as the user who (presumably) owns the files, this can't do any evil
things that user couldn't have done on his own.
This change also fixes a bug which failed to scan dot-qmail files in
subdirectories.
Mark Wooding [Mon, 10 Apr 2006 12:21:37 +0000 (13:21 +0100)]
qmail-smtpd: Oops. I want 550, not 553, for unknown mailboxes.
Mark Wooding [Thu, 6 Apr 2006 11:25:37 +0000 (12:25 +0100)]
addrcheck: Take the domain as following the last `@', not the first.
This was just a silly mistake on my part. Now we follow the spec in
addresses.5 properly.
Mark Wooding [Wed, 29 Mar 2006 12:39:50 +0000 (13:39 +0100)]
qmail-local: Sender and environment settings in .qmail files.
Support `!VAR=VALUE', and `!VAR' lines, to set and delete environment
variable VAR. Also support `<SENDER' to set the envelope sender for
further forwardings.
Mark Wooding [Thu, 16 Mar 2006 23:16:15 +0000 (23:16 +0000)]
Merge branch 'nail'
* nail:
addrcheck: Don't spew userv error messages at SMTP clients.
addrcheck: Strip off the domain part before passing to userv service.
addrcheck: Add commentary for the functions, because I'm confused.
Mark Wooding [Thu, 16 Mar 2006 23:01:38 +0000 (23:01 +0000)]
addrcheck: Don't spew userv error messages at SMTP clients.
They don't like it. Whose stupid idea was it to send stderr to the
socket in inetd anyway?
Mark Wooding [Tue, 7 Mar 2006 12:38:38 +0000 (12:38 +0000)]
addrcheck: Strip off the domain part before passing to userv service.
Mark Wooding [Tue, 7 Mar 2006 11:49:02 +0000 (11:49 +0000)]
addrcheck: Add commentary for the functions, because I'm confused.
Mark Wooding [Tue, 14 Feb 2006 16:01:04 +0000 (16:01 +0000)]
Update changelog.
Mark Wooding [Tue, 14 Feb 2006 15:55:38 +0000 (15:55 +0000)]
Merge branches 'idx/verh' and 'idx/qmqpc'
* idx/verh:
[PATCH] Rewrite ##X tags in headers of incoming messages
* idx/qmqpc:
[PATCH] qmqpc: Read servers from the command line.
Mark Wooding [Tue, 14 Feb 2006 15:55:14 +0000 (15:55 +0000)]
[PATCH] qmqpc: Read servers from the command line.
This patch patches qmail-qmqpc.[c8] to allow specification of serves on
the command line. This allows the individual process to control the servers
used, rather than the central /var/qmail/control/qmqpservers. This offers
a simple means to extend ezmlm servers. The patch is for qmail-1.03.
Mark Wooding [Tue, 14 Feb 2006 15:52:22 +0000 (15:52 +0000)]
[PATCH] Rewrite ##X tags in headers of incoming messages
Users of ezmlm lists sometimes do not know their subscription address
when they want to unsubscribe. Not all get the "Return-Path" header from
their delivery agent/MUA, and of the ones that do, many can still not
decipher the information. rfc2369 provides a standard way to supply
unsubscribe information. For the header to work optimally, it should
contain the command adapted to the subscriber's subscription address.
These patches enable qmail to replace tags with the subscribers address.
This is normally done ONLY in headers to avoid the risk of message
corruption.
If for some reason no substitution is done, the header remains in its
original form, which is harmless as far as message integrity is
concerned.
If any header starts with '#' this character is removed and substitution
will be extented into the body. This is safe since no legal header
starts
with '#'. It is assumed that for messages with this flag it is desired
that any tag in the message is substituted.
Assume: Subscriber=user@host, list=list@listhost.
and header added by ezmlm:
List-Unsubscribe: <mailto:list-unsubscribe-##L=##H@listhost>
Then: Header after qmail processing:
List-Unsubscribe: <mailto:list-unsubscribe-user=host@listhost>
Mark Wooding [Tue, 14 Feb 2006 12:43:42 +0000 (12:43 +0000)]
debian: Add source-package rule.
This is much easier with git-tar-tree lying around.
Mark Wooding [Tue, 14 Feb 2006 03:11:09 +0000 (03:11 +0000)]
Merge branch 'mdw/addrcheck'
* mdw/addrcheck:
addrcheck: Optionally invoke userv service to decide address validity.
qmail-valid-addresses: Cope with missing files.
qmail-smtpd: Validation of recipient mailbox names.
Mark Wooding [Thu, 6 Oct 2005 12:40:30 +0000 (13:40 +0100)]
Minor fixing.
* error: don't try to declare errno by hand: include the standard
header file instead.
* debian: fix maintainer email address.
Mark Wooding [Mon, 6 Feb 2006 19:40:05 +0000 (19:40 +0000)]
addrcheck: Optionally invoke userv service to decide address validity.
It may be that the existence of a mailbox can be best determined
programmatically, rather than by the existence of a .qmail-BLAH file for
it. For example, imagine a remailer which uses encrypted email
addresses: it'd be better to check the authentication on an address than
to have a .qmail file for each one.
If a user's .qmail-FOO-default file has a first line of the form
`#?ANYTHING then that user's userv service `addrcheck:USER-FOO-default'
is invoked, with these arguments:
* the remainder of the destination email address (including the domain
part);
* the envelope sender (which may be useful);
* the entire destination email address; and
* the key `USER-FOO-default' which the address matched.
The service should output a `+' or `-' sign to indicate acceptance or
rejection. Failure to do this, or exiting with a nonzero status, causes
a temporary error to be reported to the SMTP client.
Mark Wooding [Thu, 6 Oct 2005 12:40:30 +0000 (12:40 +0000)]
qmail-valid-addresses: Cope with missing files.
It's not an error for the virtualdomains or locals files to be missing,
so cope if we can't find them.
Mark Wooding [Tue, 9 Aug 2005 12:55:05 +0000 (12:55 +0000)]
qmail-smtpd: Validation of recipient mailbox names.
Lots of spam arrives for non-existent mailboxes. If the SMTP server
accepts it, we have to put up with the bounces. We introduce a new CDB
which describes all the valid mailboxes on the system.
Mark Wooding [Tue, 9 Aug 2005 12:45:00 +0000 (13:45 +0100)]
debian: New, stripped-down mini-qmail package.
This contains only what's needed for a serverless, queueless leaf node.
Mark Wooding [Wed, 1 Oct 2003 00:28:03 +0000 (01:28 +0100)]
qmail: Indirect via QMAILQUEUE environment variable to find qmail-queue.
This lets us insert a filter program, say a spam checker, between
qmail-smtpd and the mail queue, with the right to refuse a message
before it's accepted by the SMTP server.
Mark Wooding [Tue, 30 Sep 2003 08:13:28 +0000 (09:13 +0100)]
Make it work with newer Debian stuff.
Mark Wooding [Tue, 30 Sep 2003 08:13:28 +0000 (09:13 +0100)]
Ignore uninteresting files.
Mark Wooding [Tue, 8 Jun 1999 18:48:54 +0000 (18:48 +0000)]
Release qmail 1.03-2
Mark Wooding [Tue, 14 Feb 2006 02:52:33 +0000 (02:52 +0000)]
Merge branch 'mdw/relayhosts'
* mdw/relayhosts:
qmail-smtpd: Read list of hosts allowed to relay from control/relayhosts
Conflicts:
qmail-control.9
qmail-showctl.c
qmail-smtpd.c
Mark Wooding [Tue, 14 Feb 2006 02:46:08 +0000 (02:46 +0000)]
qmail-smtpd: Read list of hosts allowed to relay from control/relayhosts
Mark Wooding [Tue, 14 Feb 2006 01:30:30 +0000 (01:30 +0000)]
Merge branch 'mdw/bounce-msgid'
* mdw/bounce-msgid:
qmail-send: Add message-id to bounce messages.
Mark Wooding [Tue, 8 Jun 1999 18:30:46 +0000 (18:30 +0000)]
qmail-send: Add message-id to bounce messages.
RFC1123 says that message-ids are optional, but SAUCE, for example,
objects to messages without them. Avoid upsetting SAUCE.
Mark Wooding [Sun, 28 Jun 1998 15:21:03 +0000 (15:21 +0000)]
Debianization for 1.03-1
Mark Wooding [Wed, 18 Mar 1998 23:33:15 +0000 (23:33 +0000)]
Debianization for 1.01-2
Mark Wooding [Sun, 28 Jun 1998 14:46:53 +0000 (15:46 +0100)]
Upstream qmail 1.03
Mark Wooding [Wed, 18 Mar 1998 23:33:14 +0000 (23:33 +0000)]
Upstream qmail 1.01