← New search

Other meanings of Sendmail

Software

Sendmail

Sendmail is a widely used open-source mail transfer agent (MTA) that routes and delivers email across networks. First released in 1983 by Eric Allman, it became the standard MTA on Unix systems and played a pivotal role in the growth of the Internet email infrastructure. Its configuration file, sendmail.cf, is notoriously complex, but the program's flexibility and robustness have ensured its continued use in enterprise environments.

1983
First release year
Initial version by Eric Allman
8.17.1
Latest stable version
As of 2023
C
Primary language
Written in C
BSD
License
Open-source (BSD-like)
1

History and development

Sendmail originated from the delivermail program written by Eric Allman at the University of California, Berkeley, in the late 1970s. It was rewritten and renamed Sendmail in 1983, and included in BSD Unix distributions, which helped it spread rapidly across academic and commercial systems. The program's design emphasized flexibility over simplicity, allowing it to handle diverse network protocols and addressing schemes. Over the years, Sendmail Incorporated was founded to provide commercial support, but the software remained open source. The codebase has been maintained by a community of developers, with periodic releases addressing security and feature enhancements.1

2

Architecture and configuration

Sendmail operates as a message transfer agent, accepting mail from user agents and relaying it to other MTAs using protocols such as SMTP. Its core is the sendmail.cf configuration file, which uses a macro language to define rules for address rewriting, routing, and security policies. This file is often generated from higher-level .mc files using the m4 preprocessor, which simplifies customization. The program also supports features like aliases, virtual hosting, and mail queues. Its modular design allows integration with external filters and authentication mechanisms, making it adaptable to complex mail environments.

3

Security and impact

Sendmail's long history has made it a frequent target for security research, leading to numerous patches and the development of best practices for secure configuration. It was one of the first MTAs to implement the SMTP AUTH extension and STARTTLS for encrypted connections. Despite its complexity, Sendmail has been praised for its reliability and scalability, handling millions of messages daily in large organizations. Its influence is evident in the design of later MTAs like Postfix and Exim, which aimed to provide simpler configuration while retaining similar functionality.2

4

Lesser-known aspects

Beyond its mainstream role, Sendmail has several niche features and historical quirks. For instance, it supports the X.400 protocol through gateways, and its configuration language allows for highly customized address rewriting, which has been used to implement unusual routing policies. The program also includes a built-in mailstats utility for monitoring traffic. A lesser-known fact is that Eric Allman originally wrote Sendmail as a student project, and its name was a play on the Unix mail command. Additionally, Sendmail was one of the first MTAs to support the MIME format, enabling multimedia email attachments.

Glossary

MTA
Mail Transfer Agent; software that routes and delivers email.
sendmail.cf
The main configuration file for Sendmail, written in a macro language.
m4
A macro processor used to generate sendmail.cf from .mc files.
SMTP
Simple Mail Transfer Protocol; the standard protocol for email transmission.

Sendmail remains a cornerstone of email infrastructure, with its design influencing modern MTAs.