`
`Eric Aliman
`
`University of California BerkeI
`Mamm3th Project
`
`ABSTRACT
`
`Version
`
`of sendmail
`
`includes
`
`from previous versions
`number of major changes
`very short history of sendmail
`summary of the major differences
`the last publically available version and version
`and some dis
`cussion of future directions
`
`This paper gives
`between version
`
`In 1987 the author stopped major work on sendmail due to other
`time committments only to return
`have been made
`to active work in 1991 This paper explores why work resumed and what changes
`
`gives
`
`Section
`
`and the motivation behind working on
`short history of sendmail
`through version
`rather detailed description of what has changed between version
`and version
`version
`Section
`has
`needs to be done
`The paper finishes off with some thoughts about what still
`
`HISTORY
`
`As discussed elsewhere Allman83a Allman83b AllmanAmos85J sendmail has existed in var
`in 4BSD and 4.1BSD and as send-
`ious forms since 1980
`It was released under the name delivermail
`mail in 4.2BSD It quickly became the dominant mail system for networked UNIX systems
`
`Prior the release of 4.3BSD in November
`1986 the author had left
`the University for private
`industry but continued to do some work on sendmai with activity slowly trailing off until effectively
`stopping after February 1987 Thei was minimal support done by many people for several years until
`July of 1991 when the original authoi who had returned the University started active work on it again
`
`reasons for renewed work on sendmail There was
`There were several
`desii at Berkeley
`to
`subdomained structure so that
`individuals were identified by their subdomain rather than by
`convert
`to
`their individual workstation although possible in the old code there were some problems and the
`author was the obvious person to address them The Computer Systems Research Group CSRG the
`group that produced the Berkeley Softwai Distributions was working on 4.4BSD and wanted an
`book on sendmai
`that was being reviewed
`update to the mail system Bryan Costales was working on
`by the authoi which encouraged him to make some revisions And the author wanted to try to unify
`some of the disparate versions of send mail that had been penrntted to proliferate
`During the 198791 fallow period many vendors and outside volunteers had produced variants of
`send mail Perhaps the best known is the IDA version IDA87J Originally intended to be
`new set of
`configuration files IDA expanded into
`fairly large set of patches for the code Originally produced in
`Sweden IDA development passed to the University of Illinois and was widely used by the fairly large
`set of people who prefer to get and compile their own source code rather than use vendor-supplied bina
`ries
`
`An earlier version of this paper was printed in the Proceedings of the 1994 AUUG Queensland Summer Technical Conference
`1994
`Gateway Hotel Brisbane March
`
`Changes in Sendmail Version
`
`Petitioner IBM – Ex. 1059, p. 1
`
`
`
`Changes in Sendmail Version
`
`In about
`
`that
`
`the same time frame attempts were made to clean up and extend the Simple Mail Tmns
`port Protocol 5MW
`This involved clarifications of some ambiguities in the protocol and
`correction of some problem areas RFC1 1231 as well as extensions for additional functionality dubbed
`Extended Simple Mail Transport Protocol or ESMTP RFC1425 RFC1426 RFC14271 and
`richer
`set of semantics in the body of messages the Multipurpose Internet Mail Extensions a.k.a MIJVIE
`RFC13441 Neither the IDA group nor most vendors were modifying sendmail
`to conform
`these were good things that should be encouraged
`to these new stanthrds
`It seemed clear
`since no one was working on
`publically available version of sendmai with these updates
`However
`they were unlikely to be widely deployed any time in the near future
`transport agents available such as MM DF zmai er Sinai and PP
`There are of course other mail
`none of these seemed to be gaining the prominence of sendmai
`it appeared that most compa
`However
`nies would not convert
`transport agent any time in the forseeable future However
`to another mail
`they
`newer version of sendmai
`
`might be persuaded to convert
`
`to
`
`All of these convinced the author
`
`to work on
`
`updated version of sendmail
`
`for public clistribu
`
`tion
`
`is referred to as version eight V8 Versions six and seven were
`The new version of sendmai
`files in 4.4BSD would be numbered as 8.1 Rather
`skipped because of an agreement
`have an external version number that differed from the file version numbers sendmai
`just jumped
`directly to V8
`
`that all
`
`than
`
`CHANGES IN VERSION EIGHT
`
`summary of the changes between the last commonly available version of send-
`The following is
`mail from Berkeley 5.67 and the latest version 8.6.6
`Many of these are ideas that had been tried in IDA but many of them were generalized in V8
`
`2.1 Performance Enhancements
`Instead of closing 5MW connections
`immediately open connections
`are cached for possible
`to the number of simultaneous open connections and the idle time of any
`future use There is
`
`limit
`
`individual connection
`
`This is of best help during queue processing since there is the potential of many different
`messages going to one site although it can also help when processing MX records which arent
`handled by MX Piggybacking
`
`single message happen to have the same set of MX
`If two hosts with different names in
`notices this and tries to batch the mes
`in the same transaction Version
`hosts they can be sent
`
`sages
`
`two sites foo.com and bar.com are both sewed by UUNET they will
`For example if
`have the same set of MX hosts and will be sent
`in one transaction UUNET will
`the mes
`then split
`sage and send it to the two individual hosts
`
`2.2 RFC 1123 Changes
`
`number of changes have been made to make sendmail conditionally compliant
`that is it
`satisfies all of the IVIUST clauses and most but not all of the SHOULD clauses in RFC 1123
`are numbers are RFC 1123 section numbers
`
`The major areas of change
`
`5.2.7
`
`Response to RCPT command is fast Previously sendmail expanded all aliases as far
`there were name sewer
`very long time particularly if
`this could take
`as it could
`for the existence of an alias and does the expansion
`only checks
`DNS lookup if
`there is an explicit host name in the RCPT com
`It does still do
`later
`mand but this time is bounded
`
`delays Version
`
`Petitioner IBM – Ex. 1059, p. 2
`
`
`
`Changes in Sendmail Version
`
`5.2.8
`
`Numeric IP addresses are logged in Received
`
`lines This helps tracing spoofed mes
`
`5.2.17
`
`5.3.2
`
`5.3.3
`
`5.3.3
`
`5.3.3
`
`sages
`
`Self domain literal
`is properly handled Previously if someone sent to user@1.2.3.4I
`configu
`where 1.2.3.4 is your IP address the mail would probably be rejected with
`ration error Version
`can handle these addresses
`
`individual
`
`timeouts RFC 821 specified no timeouts Older ver
`Better control over
`sions of sendmail had
`typically set to two hours Version
`single timeout
`allows the
`configuration file to set timeouts for various 5MW commands individually
`Error messages are sent as From This was urged by RFC 821 and reiterated by
`RFC 1123 but older versions of sendmail never really did it properly Version
`However
`some systems cannot handle this perfectly legal address
`if necessary you
`special mailer that uses the
`flag to disable this
`
`does
`
`can create
`
`Previously sendmail was happy
`Error messages are never sent
`to
`which
`sometimes
`resulted
`in responses-to-responses-to-
`responses-to-responses
`responses which resulted in ... you get the idea
`
`to send
`
`syntax are pruned RFC 821
`the ugly @hosta@hostbuser@hostc
`Route-addrs
`urged the use of this bletcherous syntax RFC 1123 has seen the light and officially
`deprecates them further urging that you eliminate all but user@hostc should you
`is slightly more generous than the standards
`receive one of these
`things Version
`instead of stripping off all
`the route addressees it only strips hosts off up to
`suggest
`the one before the last one known to DNS thus allowing you to have pseudo-hosts
`such as foo.BITNET The
`turn this off
`option will
`
`The areas in which sendmail
`
`is not unconditionally
`
`compliant are
`
`5.2.6
`
`5.2.10
`
`5.3.1.1
`
`5.3.1.1
`
`Sendmail does do header munging
`Sendmail doesnt always use the exact SMTP message text
`rather silly requirement
`
`from RFC 821 This is
`
`for each host on queue runs Connec
`Sendmail doesnt guarantee only one connect
`tion caching gives you most of this but
`it does not provide
`
`guarantee
`
`Sendmail doesnt always provide an adequate limit on concurrency
`That
`is there can
`independent sencimails running at once My feeling is that doing an abso
`be several
`lute limit would be mistake it might result in lost mail However
`if you use the
`XLA contributed
`software most of this will be guaranteed but dont guarantee the
`guarantee
`
`2.3 Extended SMTP Support
`Version includes both sending and receiving support for Extended SMTP support as defined
`for RFC 1426 BODY The body
`by RFC 1425 basic and RFC 1427 SIZE and limited support
`the 8BITMIME body type is not cuntntly advertised
`is minimal because
`Although such
`support
`body type will be accepted it will not be correctly converted to
`bits if speaking to
`MIJVIE aware SMTP server
`tries to speak ESMTP if you have the
`ndmai
`in the flags for the mailer descrip
`flag set
`it speaks ESMTR This is
`the other end advertises the fact
`non-standard advertise
`tor or if
`ment sendmai announces ESMTP spoken here during the initial connection message and client
`sendmails search for this message This creates some problems for some PC-based mailers which
`do not understand two-line greeting messages as required by RFC 821
`
`non-8-bit-
`
`that
`
`Petitioner IBM – Ex. 1059, p. 3
`
`
`
`Changes in Sendmail Version
`
`2.4 Eight-Bit Clean
`
`Previous versions of sendmail used the 0200 bit for quoting This version avoids that use
`to get seven bit stripping for compatibility with RFC 821 which is
`However you can set option
`bits on input
`7-bit protocol This option says strip to
`
`Individual mailers can still produce seven bit out put using the
`bits on output
`
`strip to
`
`mailer flag This flag says
`
`2.5 User Database
`The User Database UDB is an as-yet experimental attempt
`to provide unified large-site
`name support We are installing it at Berkeley futum versions may show significant modifications
`Briefly UDB contains
`database
`is intended to contain all
`information for your
`that
`the per-user
`workgroup such as peoples full names their plan information their outgoing mail name and their
`mail drop
`The user database allows you to map both incoming and outgoing addresses much like IDA
`the interface is still better with IDA in particular
`the alias file with incoming/outgoing
`However
`marks provides better
`locality of information
`
`2.6 Improved BIND Support
`The BIND support particularly for MX records had
`number of annoying features which
`have been removed in this release
`these more tightly bind pun intended the name
`In particular
`the name sewer resolution rules are incorporated directly into sendmail
`
`to sendmail so that
`
`sewer
`
`the
`
`operator didnt fully qualify names that were in
`does this qualification
`
`..
`
`has been that
`The major change
`or MX records Version
`DNS as
`run without BIND support
`This has proven to be an annoyance in Sun shops who often still
`that this be supported since MX mcords are mandatory In SunOS you
`However
`is really critical
`can choose either MX support or NIS support but not both This is fixed in Solaris and some send-
`mail support to allow this in SunOS should be forthcoming in future release
`
`it
`
`2.7 Keyed Files
`Generalized keyed files is an idea taken directly from IDA sendmail albeit with
`They can be useful on large sites
`diffemnt implementation
`
`completely
`
`Version includes the following built-in map classes
`
`dbm
`
`hash
`
`btree
`
`nis
`
`host
`
`dequote
`
`Support
`
`Support
`
`for the ndbm3 library
`for the Hash type from the new Berkeley db3 library this library pro
`than ndbm3 including in-memory
`vides
`database
`support
`substantially better
`caching arbitrarily long keys and values and better disk utilization
`for the B-Tree type from the new Berkeley db3 library B-Trees provide
`Support
`better clustering than Hashed files if you are fetching lots of records that have similar
`dictionary for words beginning with detr
`keys such as searching
`for NIS a.k.a YIP maps NIS is not supported in this version
`for DNS lookups
`
`Support
`
`Support
`
`con
`pseudo-map that is once that does not have any external data that allows
`figuration file to break apart
`quoted string in the address This is necessary primarily
`for DECnet addresses which often have quoted addresses that need to be unwrapped
`on gateways
`
`Petitioner IBM – Ex. 1059, p. 4
`
`
`
`Changes in Sendmail Version
`
`2.8 Multi-Word Classes
`
`Macms in Classes
`
`Classes can now be multiple words For example
`
`CShofmann.CS.Berkeley.EDU
`
`allows you to match the entire string hofmann.CS.Berkeley.EDU
`
`using the
`
`single construct
`
`Class definitions are now allowed to include macros
`
`for example
`
`Cw$k
`
`is legal
`
`2.9 IDENT Protocol Support
`
`as defined in RFC 1413 RFC1413I
`The IDENT protocol
`is supported However many sys
`renders this useless and the featum must be turned off Roughly if
`TCP/IP bug that
`tems have
`No
`host message
`of
`these
`receives
`route
`ICIVIP message
`one
`system
`ICIVIP UNREACH HOST on any connection
`Some fire-
`all connections
`to that host are closed
`to the IDENT port so you cant
`receive email from these
`walls return this error if you try to connect
`hosts on these systems Its possible that
`more specific message such as
`the firewall used
`ICMP UNREACH PORT or
`ICMP UNREACH PROTOCOL
`ICMP_UNREACH_NET_PRO
`HIB it would work but this hasnt been verified
`IDENT protocol support cannot be used on 4.3BSD Apollo DomainOS Apple A/UX Con
`vexOS Data General DG/UX HP-UX Sequent Dynix or Ultrix 4.x
`It seems to work on
`4.4BSD IBM AIX 3.x OSF/1 SGI IRIX Solaris SunOS and Ultrix 4.4
`
`to
`
`if
`
`2.10 Separate Envelope/Header
`
`Processing
`
`Since the From line is passed in separately from the envelope sender
`these have both been
`made visible the $g macro is set to the envelope sender during processing of mailer argument vec
`tors and the header sender during processing of headers
`
`It
`
`is also possible to specify separate per-mailer envelope and header processing The Sender
`RWSet and RecipientRWset
`different rewritings for envelope versus header additsses
`
`arguments for mailers can be specified as envelope/header
`
`to give
`
`2.11 Owner-List Propagates to Envelope
`
`When an alias has an associated owner-list name that alias is used to change
`sender address This will cause downstream errors to be returned to that owner
`
`the envelope
`
`the latter
`
`because
`
`the envelope sender
`
`Some people find this confusing
`is what appears in the first
`From_ line in UNIX messages that is the line beginning Fromspace instead of From
`is the header from which does indicate the sender of the message In previous versions
`has tried to avoid changing the envelope sender for back compatibility with UNIX conven
`sendmai
`tion at this point that back compatibility is creating too many problems and it
`is necessary to move
`forward into the 1980s
`
`2.12 Command Line Flags
`
`The
`
`flag has been added to pass in body type information
`
`The
`flag has been added to pass in protocol
`defining the Sr and Ss macros
`
`information that was previously passed in by
`
`The
`
`flag has been added to allow logging of all protocol
`filename and
`ging You can set
`complete transcript will be logged in that file This gets big
`fast the option is only for debugging
`
`in and out of sendmail
`
`for debug
`
`Petitioner IBM – Ex. 1059, p. 5
`
`
`
`Changes in Sendmail Version
`
`The
`run to specific
`flag can limit
`limit
`queue
`qRsub string qSsubstring or qlsub string respectively
`
`recipients senders or queue ids using
`
`2.13 New Configuration Line Types
`
`The
`
`Trusted users configuration line has been deleted
`
`It will still be accepted
`
`but will
`
`be ignored
`
`The
`
`The
`
`The
`
`line has been added to declare database maps
`
`line has been added to declare the configuration version level
`
`mailer line takes
`
`field to specify execution directoiy
`
`2.14 New and Extended Options
`
`Several new options have been added many to support new features others to allow tuning
`that was previously available only by recompiling Briefly
`
`can now be
`The alias file specification
`list of alias files Also the configuration can spec
`class of file For example to search the NIS aliases use OAnismail.aliases
`
`ify
`
`Insist on minimum number of disk blocks
`
`Delivery checkpoint
`
`interval Checkpoint
`
`the queue to avoid duplicate deliveries every
`
`addresses
`
`This message or the contents of the indicated file ai prepended
`
`Default error message
`to error messages
`Enable GECOS matching If you cant find
`local user name and this option is enabled
`full names Previously
`sequential scan of the passwd file to match against
`do
`
`compile
`
`option
`
`Maximum hop count Previously this was compiled in
`
`This option has been extended to allow setting of resolver parameters
`
`Send errors in MIJVIE-encapsulated
`
`format
`
`Forward file path Where to search for forward files
`
`defaults to $HOJVIE/.forward
`
`Coimection cache size The total number of connections that will be kept open at any time
`
`Coimection cache lifetime The amount of time any connection will be penrntted to sit
`idle
`
`Enable Errors-To header These headers violate RFC 1123 this option is included to pro
`vide back compatibility with old versions of sendmail
`Incoming daemon options e.g use alternate SMTP port
`Privacy options These can be used to make your SMTP server less friendly
`
`This option has been extended to allow finer grained control over timeouts For example
`you can set the timeout for SMTP commands individually
`Dont
`an
`Normally
`version
`sees
`address
`route-addrs
`like
`if
`prune
`try to strip off as much as it can up to
`@hostA@hostBuser@hostC sendmail will
`user@hostC as suggested by RFC 1123 This option disables that behaviour
`
`The Return To Sender timeout has been extended to allow specification of
`warning
`typically something on the order of four hours If message cannot be
`warning message is sent back to the sender but
`the message
`interval
`
`message interval
`delivered in that
`
`continues to be tried
`
`User database
`
`spec This is still experimental
`
`Petitioner IBM – Ex. 1059, p. 6
`
`
`
`Changes in Sendmail Version
`
`that has
`
`Failback MDC host This can be thought of as an IVIX host
`very high preference value that is use it only if everything else fails
`if you are the best MX host for
`If set assume that
`host you should send directly to that
`host This is intended for compatibility with UIUC sendmail and may have some use on
`firewalls
`
`that applies to all addresses
`
`Do not run eight bit clean Technically you have to assert this option to be RFC 821 com
`patible
`
`2.15 New Mailer Definitions
`
`Set
`
`the allowable line length In V5 the mailer flag implied
`characters this is now settable to an athitrary value
`Try to use ESMTP It will
`fall back to SMTP if the initial EHLO packet
`
`is rejected
`
`line length limit of 990
`
`Ensure
`
`blank line at the end of messages Useful on the file mailer
`last resort when dealing
`
`from addresses this should only be used as
`
`Strip all comments
`
`with cranky mailers
`Never use the null sender as the envelope sendeL even when rumiing SMTR This violates
`RFC 1123
`
`Strip all output
`
`to this mailer to
`
`bits
`
`to 990 bytes for SMTP compatibility
`Used to set the line limit
`It now does that only if the
`keyletter is not specified This flag is obsolete and should not be used
`
`Fa
`Fb
`Fc
`
`Fg
`
`F7
`FL
`
`2.16 New or Changed Pre-Defined Macros
`UUCP node name from uname2
`
`5k
`
`Sm
`
`Domain part of our full hostname
`
`Sw
`
`Sj
`
`sender address
`
`RFC 1413-provided
`Previously was sometimes the full domain name sometimes just the first word Now guar
`anteed to be the first word of the domain name i.e the host name
`
`Previously had to be defined
`be determined That
`
`it
`
`is now predefined to be the full domain name if
`to Sw.Sm
`is equivalent
`
`is it
`
`that can
`
`2.17 New and Changed Classes
`5k
`5w
`
`Initialized to contain $k
`Now includes 1.2.3.4I where 1.2.3.4 is your IP address to allow the configuration file
`to recognize your own IP address
`
`2.18 New Rewriting Tokens
`
`construct has been adopted from IDA to defer macro evaluation Normally macros
`The
`in rulesets are bound when the rule is first parsed during startup Some macros change during pro
`cessing and are uninteresting during startup However that macro can be referenced using Sx to
`
`defer the evaulation of Sx until
`
`the rule is processed
`
`The tokens
`
`and
`
`have been added to allow specification of map rewriting
`
`Version
`
`allows
`
`on the Left Hand Side of an
`intended to be used to match the null
`
`input
`
`line to match zero tokens
`
`This is
`
`Petitioner IBM – Ex. 1059, p. 7
`
`
`
`2.19 Bigger Defaults
`
`Changes in Sendmail Version
`
`Version
`
`allows up to 100 rulesets instead of 30 It
`reserved for sendmails dedicated use in future releases
`The total number of MX records that can be used has been raised to 20
`
`is recommended
`
`that
`
`rulesets 09 be
`
`The number of queued messages that can be handled at one time has been raised from 600 to
`
`1000
`
`2.20 Different Default Tuning Parameters
`
`Version
`
`has changed the default parameters for tuning queue costs to make the number of
`recipients more important than the size of the message for small messages This is reasonable if
`you are connected with reasonably fast links
`
`2.21 Auto-Quoting in Addresses
`Previously the Full Name email address syntax would generate incorrect protocol out
`put if Full Name had special characters such as dot This version puts quotes around such names
`
`2.22 Symbolic Names On Error Mailer
`
`Several names have been built in to the $@ portion of the $error mailer For example
`
`$error $@NOHOST
`
`Host unknown
`
`Prints the indicated message and sets the exit status of send mai
`
`to EX_NOHOST
`
`2.23 New Built-In Mailers
`
`Two new mailers file and include are included to define options when mailing to
`include file respectively Previously these were overloaded on the local mailer
`
`or
`
`file
`
`2.24 SMTP VRFY Doesnt Expand
`
`treated VRFY and EXPN the same
`Previous versions of sendmail
`doesnt expand aliases or follow forward files
`
`In this version VRFY
`
`As an optimization if you run with your default delivery mode being queue-only the RCPT
`command will also not chase aliases and forward files It will chase them when it processes the
`queue This speeds up RCPT processing
`
`2.25 IIPCI Mailers Allow Multiple Hosts
`When an address resolves to mailer that has IJPCI as its Path the $@ part host name
`single hostname
`This asks sendmail
`to search the
`colon-separated list of hosts instead of
`is available exactly as though it were an IVIX record The intent
`for the first entry that
`traffic through internal networks without publishing an MX record to the net MX expan
`sion is still done on the individual
`
`can be
`
`list
`
`is to route
`
`internal
`
`items
`
`2.26 Aliases Extended
`
`The implementation has been merged with maps Among other things this supports multiple
`alias files and NIS-based aliases For example
`
`OAIetc/aliasesnis mail.aliases
`
`will search first
`
`the local database /etc/aliases
`
`followed by the NIS map
`
`Petitioner IBM – Ex. 1059, p. 8
`
`
`
`Changes in Sendmail Version
`
`2.27 Portability and Security Enhancements
`
`number of internal changes
`
`have been made to enhance portability
`
`Several fixes have been made to increase the paranoia factor
`
`forward and include files have been tightened up
`In particulai
`the permissions mquired for
`considerably VS would pretty much read any file it could get to as root which exposed some secu
`rity holes V8 insists that all directories
`include file be searchable
`leading up to the forward or
`the file itself be madable by the con
`permission by the controlling user defined below that
`forward files be owned by the user who is being forwarded to or root
`trolling usei and that
`
`The controlling user is the user on whose behalf the mail
`is being delivered For example
`if you mail to userl then the controlling user for user1/.forward and any mailers invoked by that
`forward file including include files
`Previously anyone who had
`home directory could create
`forward could forward to pro
`grant Now sendmail checks
`to make sure that
`they have an approved shell that
`shell
`listed
`is
`
`in the /etc/shells file
`
`2.28 Miscellaneous Fixes and Enhancements
`
`number of small bugs having to do with things like backslash-escaped
`comments have been fixed
`
`quotes inside of
`
`The fixed size limit on header lines such as To and Cc has been eliminated those
`
`buffers are dynamically allocated now
`
`Sendmail writes
`
`/etc/sendmail.pid
`
`file with the cuntnt process id and the current
`
`invocation
`
`flags
`
`Two people using the same program e.g submit are considered different so that duplicate
`elimination doesnt delete one of them For example two people forwarding their email to submit
`will be tmated as two recipients
`
`The mailstats program prints mailer names and gets the location of the sendmail.st
`/etc/sendmail.cfi
`
`file from
`
`Many minor bugs have been fixed such as handling of backslashes inside of quotes
`
`hook has been added to allow rewriting of local addresses after aliasing
`
`FUTURE WORK
`
`The previous
`section describes sendmail
`Some high points are described below This list
`
`as of version 8.6.6 There is still much to be done
`is by no means exhaustive
`
`3.1 Full MIME Support
`Currently sendmai only supports seven bit MIME messages Although it can pass eight bit
`MIME messages it caimot advertise that
`the mail agent must be
`fact because the standards say that
`able to do 8- to 7-bit conversion to have full 8-bit support This requires far more extensive modifi
`cation of the message body than is cuntntly supported
`The best way to do this would be to support
`the general concept of an external message fil
`This would allow MIME conversion as
`ter that could do arbitrary modifications of the message
`well as such things as automatic encryption of messages sent over external
`links This is probably
`an extremely non-trivial change
`
`3.2 Service Switch Abstraction
`
`Most modern systems include some concept of
`for example to look up
`host names you can try DNS NIS NIS text
`tables Netlnfo or other services in some arbitrary
`
`service switch
`
`Petitioner IBM – Ex. 1059, p. 9
`
`
`
`10
`
`Changes in Sendmail Version
`
`order This is currently very clumsy in sendmai with only limited control of the services provided
`
`3.3 More Control of Local Addresses
`
`Currently some addresses are declared as local and are handled specially
`for example
`forward files may be translated into program calls or file deliveries and so forth
`they may have
`These should be broken out into separate flags to allow the local system administrator to have more
`
`fine-grained control over operations
`
`3.4 More Run-Time Configuration Options
`
`There are many options that are configured at compile time such as the method of file locking
`and the use of the IDENT protocol RFC 141
`These should be transfered to run time by adding
`new options
`
`Similarly some options are currently overloaded
`one thing These should probably be broken out
`
`into separate options
`
`that
`
`is
`
`single option controls more than
`
`This implies that options will change
`
`from single characters to words
`
`3.5 More Configuration Control Over Errors
`
`cannot
`
`can generate an error message during parsing However
`Currently the configuration file
`tweak other operations such as issuing warning message to the system postmaster Simi
`larly some errors should not be triggered if
`they are in aliases during an alias file rebuild but should
`be triggered if that alias is actually used
`
`it
`
`3.6 Long Term Host State
`
`Currently sendmai only remembers host status during
`single queue run This should be
`converted to long term status stored on disk so it can be shared between instantiations of sendmai
`so they can time out This will allow send mai
`Entries will have to be timestamped
`to implement
`exponential backoff on queue runs on
`
`per-host basis
`
`3.7 Connection Control
`
`Modem networks have different
`In particula the rising
`than the past
`types of connectivity
`is not uncommon
`prominence of dialup IP has created certain challenges for automated servers
`host and have it fail
`to try to make
`even though if you tried again it would suc
`connection to
`ceed The connection management could be
`bit cleverer
`to try to adapt to such situations
`
`It
`
`3.8 Other Caching
`When you do an MX record lookup the name server automatically returns the IP addresses of
`the associated MX servers This information is currently ignored and another query is done to get
`this information It should be cached to avoid excess name server traffic
`
`REFERENCES
`
`Allman83aI
`An Intemetwork Mail Router
`Sendmail
`Allman In Unix Prograrrnnss Manual 4.2
`Berkeley Software Distribution volume 2C August 1983
`
`Allman83bI
`Mail Systems and Addressing in 4.2BSD
`San Diego California January 1983
`
`AllmanAmos85I
`Sendmail Revisited
`Allman and
`ceeli ngs Portland Oregon June 1985
`
`Allman In UNICOM Conference Proceelings
`
`Amos In Usenix Srmer 1985 Conference Pro
`
`Petitioner IBM – Ex. 1059, p. 10
`
`
`
`Changes in Sendmail Version
`
`11
`
`IDA87J Electronic Mail Addressing in Theory and Practice with the IDA ndmail Enhancerrnt Kit
`or The Postmasters Last WIl and Testarmit
`Lennart Lövstrand Department of Computer
`and Information Science University of Linköping Sweden Report no LiTH-IDA-Ex-87 15
`May 1987
`
`11
`
`Srrple Mail Transport Protocol
`
`Postel August 1982
`
`1231
`Ruirerrntsfor lntern HostsApplication
`Braden Editor October 1989
`
`and Spport
`
`Internet Engineering Task Force
`
`lrrplicationsof MIME for Internet Mail Gateways
`
`Borenstein June 1992
`
`Identification Protocol
`
`St Johns February 1993
`
`1425JTP Service Extensions
`
`February 1993
`
`Kiensin
`
`Freed
`
`Rose
`
`Stefferud and
`
`Crocker
`
`SV1TP rvice Extension for 8bit-MlMEtransport
`andD Crocker February 1993
`
`Kiensin
`
`Freed
`
`Rose
`
`Stefferud
`
`SV1TP rvice Extension for Message ze Declaration
`February 1993
`
`Kiensin
`
`Freed and
`
`Moore
`
`MIME Multipurpose
`Internet Mail Extensions Frt One Mechanisrrs for ecifying and
`Borenstein and
`Describing the Format of lntern Message Bodies
`Freed September
`1993
`
`Petitioner IBM – Ex. 1059, p. 11