Maildrop

Last updated
Maildrop
Original author(s) Sam Varshavchik
Initial releasepre-1999
Stable release
3.0.3 / March 14, 2021;13 months ago (2021-03-14) [1]
Operating system All POSIX (Linux, Mac OS X, FreeBSD, Solaris)
Type Mail filter
License GPL
Website www.courier-mta.org/maildrop/

Maildrop is a Mail delivery agent used by the Courier Mail Server. The maildrop Mail Delivery Agent (MDA) also includes filtering functionality.

Contents


Maildrop receives mail via stdin and delivers in both Maildir and mbox formats.

Features

Maildrop can optionally read filtering configuration from a file to determine whether the message is delivered to an alternate mailbox or forwarded. The structured filtering language is robust enough to allow maildrop to work with virtual mailboxes. If the filtering configuration contains syntax errors maildrop does not deliver the message but the message is not lost. [2]

Maildrop can run in different modes, depending on the calling environment. Delivery mode is the "normal" mail filtering mode; that is, during final delivery, after the message left the SMTP environment. [3] However, maildrop can also run in embedded mode; that is, during an SMTP transaction. Running in embedded mode allows a filter to reject a message before the server accepts it for local delivery. Finally, maildrop can run in manual mode, like any other interpreter. [4]

Maildrop is written in C++. However, it uses resources more efficiently than procmail (written in C) by saving large messages to a temporary file rather than reading them into memory. If the input to maildrop is a file then a temporary file is not used. [5]

See also

Related Research Articles

Email Mail sent using electronic means

Electronic mail is a method of exchanging messages ("mail") between people using electronic devices. Email was thus conceived as the electronic (digital) version of, or counterpart to, mail, at a time when "mail" meant only physical mail. Email later became a ubiquitous communication medium, to the point that in current use, an e-mail address is often treated as a basic and necessary part of many processes in business, commerce, government, education, entertainment, and other spheres of daily life in most countries. Email is the medium, and each message sent therewith is called an email.

Within the Internet email system, a message transfer agent (MTA), or mail transfer agent, or mail relay is software that transfers electronic mail messages from one computer to another using SMTP. The terms mail server, mail exchanger, and MX host are also used in some contexts.

In computing, the Post Office Protocol (POP) is an application-layer Internet standard protocol used by e-mail clients to retrieve e-mail from a mail server. POP version 3 (POP3) is the version in common use, and along with IMAP the most common protocols for email retrieval.

The Simple Mail Transfer Protocol (SMTP) is an internet standard communication protocol for electronic mail transmission. Mail servers and other message transfer agents use SMTP to send and receive mail messages. User-level email clients typically use SMTP only for sending messages to a mail server for relaying, and typically submit outgoing email to the mail server on port 587 or 465 per RFC 8314. For retrieving messages, IMAP is standard, but proprietary servers also often implement proprietary protocols, e.g., Exchange ActiveSync.

Email client Computer program used to access and manage a users email

An email client, email reader or, more formally, message user agent (MUA) or mail user agent is a computer program used to access and manage a user's email.

A mail exchanger record specifies the mail server responsible for accepting email messages on behalf of a domain name. It is a resource record in the Domain Name System (DNS). It is possible to configure several MX records, typically pointing to an array of mail servers for load balancing and redundancy.

qmail is a mail transfer agent (MTA) that runs on Unix. It was written, starting December 1995, by Daniel J. Bernstein as a more secure replacement for the popular Sendmail program. Originally license-free software, qmail's source code was later dedicated in the public domain by the author.

A message delivery agent (MDA), or mail delivery agent, is a computer software component that is responsible for the delivery of e-mail messages to a local recipient's mailbox. It is also called a local delivery agent (LDA).

An email address identifies an email box to which messages are delivered. While early messaging systems used a variety of formats for addressing, today, email addresses follow a set of specific rules originally standardized by the Internet Engineering Task Force (IETF) in the 1980s, and updated by RFC 5322 and 6854. The term email address in this article refers to addr-spec in RFC 5322, not to address or mailbox; i.e., a raw address without a display-name.

Greylisting is a method of defending e-mail users against spam. A mail transfer agent (MTA) using greylisting will "temporarily reject" any email from a sender it does not recognize. If the mail is legitimate, the originating server will try again after a delay, and if sufficient time has elapsed, the email will be accepted.

A bounce message or just "bounce" is an automated message from an email system, informing the sender of a previous message that the message has not been delivered. The original message is said to have "bounced".

Email authentication, or validation, is a collection of techniques aimed at providing verifiable information about the origin of email messages by validating the domain ownership of any message transfer agents (MTA) who participated in transferring and possibly modifying a message.

For a RFC 5321 mail transfer agent (MTA), the Sender Rewriting Scheme (SRS) is a scheme for rewriting the envelope sender address of an email message, in view of remailing it. In this context, remailing is a kind of email forwarding. SRS was devised in order to forward email without breaking the Sender Policy Framework (SPF), in 2003.

Sieve is a programming language that can be used for email filtering. It owes its creation to the CMU Cyrus Project, creators of Cyrus IMAP server.

Email forwarding generically refers to the operation of re-sending an email message delivered to one email address to one or more different email addresses.

The Courier Mail Server is a mail transfer agent (MTA) server that provides SMTP, IMAP, POP3, SMAP, webmail, and mailing list services with individual components. It is best known for its IMAP server component.

A mailbox is the destination to which electronic mail messages are delivered. It is the equivalent of a letter box in the postal system.

A bounce address is an email address to which bounce messages are delivered. There are many variants of the name, none of them used universally, including return path, reverse path, envelope from, envelope sender, MAIL FROM, 5321-FROM, return address, From_, Errors-to, etc. It is not uncommon for a single document to use several of these names.

Email agent (infrastructure)

An e-mail agent is a program that is part of the e-mail infrastructure, from composition by sender, to transfer across the network, to viewing by recipient. The best-known are message user agents and message transfer agents, but finer divisions exist.

A mailbox provider, mail service provider or, somewhat improperly, email service provider is a provider of email hosting. It implements email servers to send, receive, accept, and store email for other organizations or end users, on their behalf.

References

  1. "latest releases". Package: maildrop subsection. Retrieved 2021-04-15.
  2. "Maildrop features" . Retrieved 7 July 2011.
  3. That final delivery is outside SMTP is in its defining document: John Klensin (October 2008). "Trace Information". Simple Mail Transfer Protocol. IETF. sec. 4.4. doi: 10.17487/RFC5321 . RFC 5321. final delivery means the message has left the SMTP environment
  4. "maildrop" . Retrieved 8 January 2020.
  5. "Maildrop features (efficiency)" . Retrieved 7 July 2011.