When it came to design decisions, Allman said he realised that he had to make Delivermail acceptable to the world, not the other way around. "I had to accept that there would be just the one programmer - me," he said. "And I also had to accept that I could not redesign user agents or the local mail/store."
His solution did the job but it created its own share of problems. "It had an inflexible configuration, there was no address translation between networks and address parsing was simplistic and opaque."
The transition to Sendmail came when Berkeley was given a DARPA contract for 4.2BSD. "Bill Joy talked me into it," said Allman.
There were lots of changes required - he had to include SMTP support at a time when the protocol had not been defined, and this forced the creation of queues. "And queues are much harder than they look."
What Allman ended up with was an MTA that did header rewriting, had SMTP support, queuing and runtime configuration.
The years of the UNIX wars followed; Allman left Berkeley in 1981 and, in the years to 1990, most vendors of UNIX systems created their own versions of Sendmail. When Allman returned to Berkeley in 1989, he had to tweak Sendmail to accommodate the university's new computer science subdomain.
The tweaking turned into a major rewrite known as Sendmail 8. Features were taken from other versions as many vendors had created their own extensions, many of which were good. The open source community had done some good work as well.
Sendmail 8 had a major revision of SMTP, supported new protocols, and had more integration with other systems. "That was the time that the Bat book (O'Reilly Press book on Sendmail) came out and it increased uptake dramatically," Allman said. "It taught me the value of good documentation."