*** KNOWNBUGS.OLD Sun Nov 7 10:28:55 1993 --- KNOWNBUGS Wed Jan 12 06:00:44 1994 *************** *** 1,7 **** K N O W N B U G S I N S E N D M A I L ! (for 8.6.3) The following are bugs or deficiencies in sendmail that I am aware of --- 1,7 ---- K N O W N B U G S I N S E N D M A I L ! (for 8.6.5) The following are bugs or deficiencies in sendmail that I am aware of *************** *** 9,23 **** want to get the most up to date version of this from FTP.CS.Berkeley.EDU in /ucb/sendmail/KNOWNBUGS. ! * "SYSERR: openmailer(local): fd 1 not open" message - File descriptor 1 (standard output) should not be closed during normal - processing. This is checked periodically, and sometimes this condition - is found and this message is produced. Sendmail repairs the problem, - and the mail is still delivered, but I still don't know why it happens. - (There was a bug that was fixed in 8.6.beta.13 that might be related, - but I think this bug still exists.) * Null bytes are not handled properly. Sendmail should handle full binary data. As it stands, it handles --- 9,25 ---- want to get the most up to date version of this from FTP.CS.Berkeley.EDU in /ucb/sendmail/KNOWNBUGS. ! This list is not guaranteed to be complete, especially for fixed bugs. ! Many bugs are reported and fixed without ever making it as far as this ! file. See the file RELEASE_NOTES (in the root directory of the sendmail ! distribution) for more details. + +----------------------------------------------+ + | THE FOLLOWING PROBLEMS ARE STILL OUTSTANDING | + +----------------------------------------------+ + + * Null bytes are not handled properly. Sendmail should handle full binary data. As it stands, it handles *************** *** 26,37 **** restructuring of the code -- for example, almost no C library support could be used to handle strings. - * Route-addrs missing angle brackets. - - There are cases where route-addrs do not get angle brackets around them, - such as in the "-r" flag on mailers or in the From_ line created when - mailing to files. - * Duplicate error messages. Sometimes identical, duplicate error messages can be generated. As --- 28,33 ---- *************** *** 56,59 **** this address. It's not clear what the right behaviour is in this circumstance. ! (Version 8.9, last updated 10/31/93) --- 52,171 ---- this address. It's not clear what the right behaviour is in this circumstance. ! * REDIRECT aliases don't work with `n' option. ! ! If you have option `n' set when you use newaliases and have ! REDIRECT addresses in your aliases file, you'll get the error ! messages during the newaliases instead of when email is sent to ! the address in question. The workaround is to turn off the `n' ! option. ! ! * MX records that point at non-existent hosts work strangly. ! ! Consider the DNS records: ! ! hostH MX 1 hostA ! MX 2 hostB ! hostA A 128.32.8.9 ! ! (note that there is no A record for hostB). If hostA is down, ! an attempt to send to hostH gives "host unknown" -- that is, it ! reflects out the status on the last host it tries, which in this ! case is hostB, which is unknown. It probably ought to eliminate ! hostB early in processing. ! ! * NAME environment variables with commas break. ! ! If you define your NAME environment variable to have a comma ! (e.g., ``Lastname, Firstname''), and you are using the $q definition ! that uses ``name
'' format, sendmail treats the first and ! last names as two addresses, thus producing a bogus From line. You ! can work around this by changing the $q definition to use ! ``address (name)''. ! ! * \231 considered harmful. ! ! Header addresses that have the \231 character (and possibly others ! in the range \201 - \237) behave in odd and usually unexpected ways. ! ! * DEC Alphas (OSF/1 1.3) sometimes time out on sending mail. ! ! I have one report that DEC Alphas acting as SMTP clients sometimes ! will apparently not see the "250 OK" message in response to the ! dot that indicates the end of the message. This only happens if ! the message is run from the queue -- if it gets through on first ! try, everything is fine. I have been unable to reproduce this ! problem at Berkeley. ! ! * accept() problem on SVR4. ! ! Apparently, the sendmail daemon loop (doing accept()s on the network) ! can get into a wierd state on SVR4; it starts logging ``SYSERR: ! getrequests: accept: Protocol Error''. The workaround is to kill ! and restart the sendmail daemon. We don't have an SVR4 system at ! Berkeley that carries more than token mail load, so I can't validate ! this. It is likely to be a glitch in the sockets emulation, since ! "Protocol Error" is not possible error code with Berkeley TCP/IP. ! ! I've also had someone report the message ``sendmail: accept: ! SIOCGPGRP failed errno 22'' on an SVR4 system. This message is ! not in the sendmail source code, so I assume it is also a bug ! in the sockets emulation. (Errno 22 is EINVAL "Invalid Argument" ! on all the systems I have available, including Solaris 2.x.) ! ! * Sending user deletion not done properly in :include: lists. ! ! If you don't have the "m" (me too) option set, then a person ! sending to a list that contains themselves should not get a copy ! of the message. However, if that list points to a :include: file ! that has one address per line, this will break, and the sender ! will always get a copy of their own message, just as though the ! "m" option were set. ! ! You can eliminate this by adding commas at the end of each line ! of the :include: file. ! ! ! +-------------------------------------------+ ! | THE FOLLOWING PROBLEMS ARE FIXED IN 8.6.5 | ! +-------------------------------------------+ ! ! * Route-addrs missing angle brackets. ! ! There are cases where route-addrs do not get angle brackets around them, ! such as in the "-r" flag on mailers or in the From_ line created when ! mailing to files. ! ! * No "exposed users" in "nullrelay" configuration. ! ! The "nullrelay" configuration hides all addresses behind the mail ! hub name. Some sites might prefer to expose some names such as ! root. This information is always available in Received: lines. ! ! * owner-* alias that uses :include: broken. ! ! If you have aliases set up as: ! ! owner-listname: :include:/some/file ! ! sendmail will break because it considers this a "sender address", ! which is not permitted to use the :include: syntax. The easiest ! workaround is to change this to: ! ! owner-listname: :include:/some/file, ! ! (note the trailing comma); a somewhat cleaner solution is to use: ! ! owner-listname: listname-request ! listname-request: :include:/some/file ! ! * "SYSERR: openmailer(local): fd 1 not open" message ! ! File descriptor 1 (standard output) should not be closed during normal ! processing. This is checked periodically, and sometimes this condition ! is found and this message is produced. Sendmail repairs the problem, ! and the mail is still delivered, but I still don't know why it happens. ! (There was a bug that was fixed in 8.6.beta.13 that might be related, ! but I think this bug still exists.) ! ! (Version 8.15, last updated 1/12/94) *** READ_ME.OLD Thu Nov 25 07:55:57 1993 --- READ_ME Tue Jan 4 07:52:09 1994 *************** *** 1,5 **** /*- ! * @(#)READ_ME 8.5 (Berkeley) 9/28/93 */ SENDMAIL RELEASE 8 --- 1,5 ---- /*- ! * @(#)READ_ME 8.8 (Berkeley) 1/4/94 */ SENDMAIL RELEASE 8 *************** *** 41,46 **** --- 41,83 ---- macro set that is compatible with these macros. + +-----------------------+ + | RELATED DOCUMENTATION | + +-----------------------+ + + There are other files you should read. Rooted in this directory are: + + CHANGES-R5-R8 + Describes changes between Release 5 and Release 8 of sendmail. + There are some things that may behave somewhat differently. + For example, the rules governing when :include: files will + be read have been tightened up for security reasons. + FAQ + Answers to Frequently Asked Questions. + KNOWNBUGS + Known bugs in the current release. I try to keep this up + to date -- get the latest version from FTP.CS.Berkeley.EDU + in /ucb/sendmail/KNOWNBUGS. + RELEASE_NOTES + A detailed description of the changes in each version. This + is quite long, but informative. + src/READ_ME + Details on compiling and installing sendmail. + cf/README + Details on configuring sendmail. + doc/op/op.me + The sendmail Installation & Operations Guide. Be warned: if + you are running this off on SunOS or some other system with an + old version of -me, you need to add the following macro to the + macros: + + .de sm + \s-1\\$1\\s0\\$2 + .. + + This sets a word in a smaller pointsize. + + +--------------+ | RELATED RFCS | +--------------+ *************** *** 96,101 **** --- 133,169 ---- faster, and the interface is nicer to animals and plants. You will also probably find that you have to add -I/where/you/put/db/include to the sendmail makefile to get db.h to work properly. + + + +-------------+ + | USE WITH MH | + +-------------+ + + This version of sendmail notices and reports certain kinds of SMTP + protocol violations that were ignored by older versions. If you + are running MH you may wish to install the patch in contrib/mh.patch + that will prevent these warning reports. This patch also works + with the old version of sendmail, so it's safe to go ahead and + install it. + + + +-----------+ + | MAKEFILES | + +-----------+ + + The Makefiles in this release use the new Berkeley "make" that is + available in BSD Net/2 and 4.4BSD. If you are using this version + of make, you may notice one or two places where the Makefile includes + "../../Makefile.inc". This file is not included with the sendmail + distribution because it's not part of sendmail. However, it is, + in toto: + + # @(#)Makefile.inc 8.1 (Berkeley) 6/6/93 + + BINDIR?= /usr/sbin + + The other directories should all have Makefile.dist files that work + on the old make. For more details, see src/READ_ME. +---------------------+ *** RELEASE_NOTES.OLD Sun Nov 7 10:29:11 1993 --- RELEASE_NOTES Thu Jan 13 06:45:11 1994 *************** *** 1,3 **** --- 1,287 ---- + 8.6.5/8.6.5 94/01/13 + Security fix: /.forward could be owned by anyone (the test + to allow root to own any file was backwards). From + Bob Campbell at U.C. Berkeley. + Security fix: group ids were not completely set when programs + were invoked. This caused programs to have group + permissions they should not have had (usually group + daemon instead of their own group). In particular, + Perl scripts would refuse to run. + Security: check to make sure files that are written are not + symbolic links (at least under some circumstances). + Although this does not respond to a specific known + attack, it's just a good idea. Suggested by + Christian Wettergren. + Security fix: if a user had an NFS mounted home directory on + a system with a restricted shell listed in their + /etc/passwd entry, they could still execute any + program by putting that in their .forward file. + This fix prevents that by insisting that their shell + appear in /etc/shells before allowing a .forward to + execute a program or write a file. You can disable + this by putting "*" in /etc/shells. It also won't + permit world-writable :include: files to reference + programs or files (there's no way to disable this). + These behaviours are only one level deep -- for + example, it is legal for a world-writable :include: + file to reference an alias that writes a file, on + the assumption that the alias file is well controlled. + Security fix: root was not treated suspiciously enough when + looking into subdirectories. This would potentially + allow a cracker to examine files that were publically + readable but in a non-publically searchable directory. + Fix a problem that causes an error on QUIT on a cached + connection to create problems on the current job. + These are typically unrelated, so errors occur in + the wrong place. + Reset CurrentLA in sendall() -- this makes sendmail queue + runs more responsive to load average, and fixes a + problem that ignored the load average in locally + generated mail. From Eric Wassenaar. + Fix possible core dump on aliases with null LHS. From + John Orthoefer of BB&N. + Revert to using flock() whenever possible -- there are just + too many bugs in fcntl() locking, particularly over + NFS, that cause sendmail to fail in perverse ways. + Fix a bug that causes the connection cache to get confused + when sending error messages. This resulted in + "unexpected close" messages. It should fix itself + on the following queue run. Problem noted by + Liudvikas Bukys of Rochester University. + Include $k in $=k as documented in the Install & Op Guide. + This seems odd, but it was documented.... From + Michael Corrigan of UCSD. + Fix problem that caused :include:s from alias files to be + forced to be owned by root instead of daemon + (actually DefUid). From Tim Irvin. + Diagnose unrecognized I option values -- from Mortin Forssen + of the Chalmers University of Technology. + Make "error" mailer work consistently when there is no error + code associated with it -- previously it returned OK + even though there was a real problem. Now it assumes + EX_UNAVAILABLE. + Fix bug that caused the last header line of messages that had + no body and which were terminated with EOF instead of + "." to be discarded. Problem noted by Liudvikas Bukys. + Fix core dump on SMTP mail to programs that failed -- it tried + to go to a "next MX host" when none existed, causing + a core dump. From der Mouse at McGill University. + Change IDENTPROTO from a defined/not defined to a 0/1 switch; + this makes it easier to turn it off (using + -DIDENTPROTO=0 in the Makefile). From der Mouse. + Fix YP_MASTER_NAME store to use the unupdated result of + gethostname() (instead of myhostname(), which tries + to fully qualify the name) to be consistent with + SunOS. If your hostname is unqualified, this fixes + transfers to slave servers. Bug noted by Keith + McMillan of Ameritech Services, Inc. + Fix Ultrix problem: gethostbyname() can return a very large + (> 500) h_length field, which causes the sockaddr + to be trashed. Use the size of the sockaddr instead. + Fix from Bob Manson of Ohio State. + Don't assume "-a." on host lookups if NAMED_BIND is not + defined -- this confuses gethostbyname on hosts + file lookups, which doesn't understand the trailing + dot convention. + Log SMTP server subprocesses that die with a signal instead + of from a clean exit. + If you don't have option "I" set, don't assume that a DNS + "host unknown" message is authoritative -- it + might still be found in /etc/hosts. + Fix a problem that would cause Deferred: messages to be sent + as the subject of an error message, even though the + actual cause of a message was more severe than that. + Problem noted by Chris Seabrook of OSSI. + Fix race condition in DBM alias file locking. From Kyle + Jones of UUNET. + Limit delivery syslog line length to avoid bugs in some + versions of syslog(3). This adds a new compile time + variable SYSLOG_BUFSIZE. From Jay Plett of Princeton + University, which is in turn derived from IDA. + Fix quotes inside of comments in addresses -- previously + it insisted that they be balanced, but the 822 spec + says that they should be ignored. + Dump open file state to syslog upon receiving SIGUSR1 (for + debugging). This also evaluates ruleset 89, if set + (with the null input), and logs the result. This + should be used sparingly, since the rewrite process + is not reentrant. + Change -qI, -qR, and -qS flags to be case-insensitive as + documented in the Bat Book. + If the mailer returned EX_IOERR or EX_OSERR, sendmail did not + return an error message and did not requeue the message. + Fix based on code from Roland Dirlewanger of + Reseau Regional Aquarel, Bordeaux, France. + Fix a problem that caused a seg fault if you got a 421 error + code during some parts of connection initialization. + I've only seen this when talking to buggy mailers on + the other end, but it shouldn't give a seg fault in + any case. From Amir Plivatsky. + Fix core dump caused by a ruleset call that returns null. + Fix from Bryan Costales of ICSI. + Full-Name: field was being ignored. Fix from Motonori Nakamura + of Kyoto University. + Fix a possible problem with very long input lines in setproctitle. + From P{r Emanuelsson. + Avoid putting "This is a warning message" out on return receipts. + Suggested by Douglas Anderson. + Detect loops caused by recursive ruleset calls. Suggested by + Bryan Costales. + Initialize non-alias maps during alias rebuilds -- they may be + needed for parsing. Problem noted by Douglas Anderson. + Log sender address even if no message was collected in SMTP + (e.g., if all RCPTs failed). Suggested by Motonori + Nakamura. + Don't reflect the owner-list contents into the envelope sender + address if the value contains ", :, /, or | (to avoid + illegal addresses appearing there). + Efficiency hack for toktype macro -- from Craig Partridge of + BB&N. + Clean up DNS error printing so that a host name is always + included. + Remember to set $i during queue runs. Reported by Stephen + Campbell of Dartmouth University. + If ${HOSTALIASES} is set, use it during canonification so that + headers are properly mapped. Reported by Anne Bennett + of Concordia University. + Avoid printing misleading error message if SMTP mailer (not + using [IPC]) should die on a core dump. + Avoid incorrect diagnosis of "file 1 closed" when it is caused + by the other end closing the connection. From + Dave Morrison of Oracle. + Improve several of the error messages printed by "mailq" + to include a host name or other useful information. + Add preliminary NetInfo support for NeXT systems. From Vince + DeMarco. + Fix a glitch that sometimes caused :include:s that pointed to + NFS filesystems that were down to give an "aliasing/ + forwarding loop broken" message instead of queueing + the message for retry. Noted by William C Fenner of + the NRL Connection Machine Facility. + Fix a problem that could cause a core dump if the input sequence + had (or somehow acquired) a \231 character. + Make sure that route-addrs always have around + them in non-SMTP envelopes (SMTP envelopes already do + this properly). + Avoid wierd headers on unbalanced punctuation of the form: + ``Joe User ; this + has uucp-dom semantics but old UUCP syntax. This + also permits "uucp-old" as an alias for "uucp" and + "uucp-new" as a synonym for "suucp" for consistency. + CONFIG: add POP mailer support (from Kimmo Suominen + ). + CONFIG: drop CSNET_RELAY support -- CSNET is long gone. + CONFIG: fix bug caused with domain literal addresses (e.g., + ``[128.32.131.12]'') when FEATURE(allmasquerade) + was set; it would get an additional @masquerade.host + added to the address. Problem noted by Peter Wan + of Georgia Tech. + CONFIG: make sure that the local UUCP name is in $=w. From + Jim Murray of Stratus. + CONFIG: changes to UUCP rewriting to simulate IDA-style "V" + mailer flag. Briefly, if you are sending to host + "foo", then it rewrites "foo!...!baz" to "...!baz", + "foo!baz" remains "foo!baz", and anything else has + the local name prepended. + CONFIG: portability fixes for HP-UX. + DOC: several minor problems fixed in the Install & Op Guide. + MAKEMAP: fix core dump problem on lines that are too long or + which lack newline. From Mark Delany. + MAILSTATS: print sums of columns (total messages & kbytes + in and out of the system). From Tom Ferrin of UC + San Francisco Computer Graphics Lab. + SIGNIFICANT USER- OR SYSAD-VISIBLE CHANGES: + On HP-UX, /etc/sendmail.cf has been moved to + /usr/lib/sendmail.cf to match HP sendmail. + Permissions have been tightened up on world-writable + :include: files and accounts that have shells + that are not listed in /etc/shells. This may + cause some .forward files that have worked + before to start failing. + SIGUSR1 dumps some state to the log. + NEW FILES: + src/Makefile.DGUX + src/Makefile.Dynix + src/Makefile.FreeBSD + src/Makefile.Mach386 + src/Makefile.NetBSD + src/Makefile.RISCos + src/Makefile.SCO + src/Makefile.SVR4 + src/Makefile.Titan + cf/mailer/pop.m4 + cf/ostype/bsdi1.0.m4 + cf/ostype/dgux.m4 + cf/ostype/dynix3.2.m4 + cf/ostype/sco3.2.m4 + makemap/Makefile.dist + praliases/Makefile.dist + 8.6.4/8.6.4 93/10/31 Repair core-dump problem (write to read-only memory segment) if you fall back to the return-to-Postmaster case in *** cf/README.OLD Mon Nov 8 13:14:32 1993 --- cf/README Wed Jan 12 06:19:02 1994 *************** *** 4,10 **** Eric Allman ! @(#)README 8.15 (Berkeley) 10/31/93 This document describes the sendmail configuration files being used --- 4,10 ---- Eric Allman ! @(#)README 8.21 (Berkeley) 1/12/94 This document describes the sendmail configuration files being used *************** *** 31,40 **** This package requires a post-V7 version of m4; if you are running the 4.2bsd, SysV.2, or 7th Edition version, I suggest finding a friend with a newer version. You can m4-expand on their system, then run locally. ! SunOS's /usr/5bin/m4 or BSD-Net/2's m4 both work. GNU m4 (which is a ! language unto itself) also works, but I don't intend to work so hard ! to keep this up in the future. [Note to GNU folks: the construct ! "define(`FOO')" should work without my having to add a null value.] IF YOU DON'T HAVE A BERKELEY MAKE, don't despair! Just run "m4 foo.mc > foo.cf" -- that should be all you need. There is also --- 31,39 ---- This package requires a post-V7 version of m4; if you are running the 4.2bsd, SysV.2, or 7th Edition version, I suggest finding a friend with a newer version. You can m4-expand on their system, then run locally. ! SunOS's /usr/5bin/m4 or BSD-Net/2's m4 both work. GNU m4 version 1.1 ! also works. Unfortunately, I'm told that the M4 on BSDI 1.0 doesn't ! work -- you'll have to use a Net/2 or GNU version. IF YOU DON'T HAVE A BERKELEY MAKE, don't despair! Just run "m4 foo.mc > foo.cf" -- that should be all you need. There is also *************** *** 52,58 **** --- 51,64 ---- configuration files can do; clever people can probably tweak them to great effect. But it should get you started. + ******************************************************************* + *** BE SURE YOU CUSTOMIZE THESE FILES! They have some *** + *** Berkeley-specific assumptions built in, such as the name *** + *** of our UUCP-relay. You'll want to create your own domain *** + *** description, and use that in place of domain/Berkeley.m4. *** + ******************************************************************* + +--------------------------+ | INTRODUCTION AND EXAMPLE | +--------------------------+ *************** *** 186,193 **** connected. BITNET_RELAY The host that will forward BITNET-addressed email. If not defined, the .BITNET pseudo-domain won't work. - CSNET_RELAY The host that will forward CSNET-addressed email. - If not defined, the .CSNET pseudo-domain won't work. LOCAL_RELAY The site that will handle unqualified names -- that is, names with out an @domain extension. If not set, they are assumed to belong on this machine. This --- 192,197 ---- *************** *** 241,252 **** is for when you know that the UUCP mailer at the other end can handle multiple recipients in one transfer. When you invoke this, sendmail looks for all names in ! the $=U class and sends them to the uucp mailer; all ! names in the $=Y class are sent to suucp. Note that this is a function of what version of rmail runs on the receiving end, and hence may be out of your control. ! If smtp is defined, it also defines a "uucp-dom" mailer ! that uses domain-style rewriting. usenet Usenet (network news) delivery. If this is specified, an extra rule is added to ruleset 0 that forwards all --- 245,259 ---- is for when you know that the UUCP mailer at the other end can handle multiple recipients in one transfer. When you invoke this, sendmail looks for all names in ! the $=U class and sends them to the uucp-old mailer; all ! names in the $=Y class are sent to uucp-new; and all ! names in the $=Z class are sent to uucp-uudom. Note that this is a function of what version of rmail runs on the receiving end, and hence may be out of your control. ! If smtp is defined, it also defines "uucp-dom" and ! "uucp-uudom" mailers that use domain-style rewriting. ! See the section below describing UUCP mailers in more ! detail. usenet Usenet (network news) delivery. If this is specified, an extra rule is added to ruleset 0 that forwards all *************** *** 258,264 **** --- 265,273 ---- on Sam Leffler's FlexFAX software. For more information, see below. + pop Post Office Protocol. + +----------+ | FEATURES | +----------+ *************** *** 433,438 **** --- 442,533 ---- least in the same company). + +--------------------+ + | USING UUCP MAILERS | + +--------------------+ + + It's hard to get UUCP mailers right because of the extremely ad hoc + nature of UUCP addressing. These config files are really designed + for domain-based addressing, even for UUCP sites. + + There are four UUCP mailers available. The choice of which one to + use is partly a matter of local preferences and what is running at + the other end of your UUCP connection. Unlike good protocols that + define what will go over the wire, UUCP uses the policy that you + should do what is right for the other end; if they change, you have + to change. This makes it hard to do the right thing, and discourages + people from updating their software. In general, if you can avoid + UUCP, please do. + + The major choice is whether to go for a domainized scheme or a + non-domainized scheme. This depends entirely on what the other + end will recognize. If at all possible, you should encourage the + other end to go to a domain-based system -- non-domainized addresses + don't work entirely properly. + + The four mailers are: + + uucp-old (obsolete name: "uucp") + This is the oldest, the worst (but the closest to UUCP) way of + sending messages accros UUCP connections. It does bangify + everything and prepends $U (your UUCP name) to the sender's + address (which can already be a bang path itself). It can + only send to one address at a time, so it spends a lot of + time copying duplicates of messages. Avoid this if at all + possible. + + uucp-new (obsolete name: "suucp") + The same as above, except that it assumes that in one rmail + command you can specify several recipients. It still has a + lot of other problems. + + uucp-dom + This UUCP mailer keeps everything as domain addresses. + Basically, it uses the SMTP mailer rewriting rules. + + Unfortunately, a lot of UUCP mailer transport agents require + bangified addresses in the envelope, although you can use + domain-based addresses in the message header. (The envelope + shows up as the From_ line on UNIX mail.) So.... + + uucp-uudom + This is a cross between uucp-new (for the envelope addresses) + and uucp-dom (for the header addresses). It bangifies the + envelope sender (From_ line in messages) without adding the + local hostname, unless there is no host name on the address + at all (e.g., "wolf") or the host component is a UUCP host name + instead of a domain name ("somehost!wolf" instead of + "some.dom.ain!wolf"). + + Examples: + + We are on host grasp.insa-lyon.fr (UUCP host name "grasp"). The + following summarizes the sender rewriting for various mailers. + + Mailer sender rewriting in the envelope + ------ ------ ------------------------- + uucp-{old,new} wolf grasp!wolf + uucp-dom wolf wolf@grasp.insa-lyon.fr + uucp-uudom wolf grasp.insa-lyon.fr!wolf + + uucp-{old,new} wolf@fr.net grasp!fr.net!wolf + uucp-dom wolf@fr.net wolf@fr.net + uucp-uudom wolf@fr.net fr.net!wolf + + uucp-{old,new} somehost!wolf grasp!somehost!wolf + uucp-dom somehost!wolf somehost!wolf@grasp.insa-lyon.fr + uucp-uudom somehost!wolf grasp.insa-lyon.fr!somehost!wolf + + If you are using one of the domainized UUCP mailers, you really want + to convert all UUCP addresses to domain format -- otherwise, it will + do it for you (and probably not the way you expected). For example, + if you have the address foo!bar!baz (and you are not sending to foo), + the heuristics will add the @uucp.relay.name or @local.host.name to + this address. However, if you map foo to foo.host.name first, it + will not add the local hostname. You can do this using the uucpdomain + feature. + + +-------------------+ | TWEAKING RULESETS | +-------------------+ *************** *** 826,832 **** --- 921,934 ---- the option is only included to provide back-compatibility. These are marked with "*". + Remember that these options are M4 variables, and hence may need to + be quoted. In particular, arguments with commas will usually have to + be ``double quoted, like this phrase'' to avoid having the comma + confuse things. This is common for alias file definitions and for + the read timeout. + M4 Variable Name Default Mac/Opt Description + ================ ======= ======= =========== confMAILER_NAME MAILER-DAEMON Dn The sender name used for internally generated outgoing messages. *************** *** 846,853 **** SMTP mail. confBLANK_SUB . OB Blank (space) substitution character. ! confCON_EXPENSIVE False Oc Connect immediately to ! mailers marked expensive? confCHECKPOINT_INTERVAL 10 OC Checkpoint queue files every N recipients. confDELIVERY_MODE background Od Default delivery mode. --- 948,955 ---- SMTP mail. confBLANK_SUB . OB Blank (space) substitution character. ! confCON_EXPENSIVE False Oc Avoid connecting immediately ! to mailers marked expensive? confCHECKPOINT_INTERVAL 10 OC Checkpoint queue files every N recipients. confDELIVERY_MODE background Od Default delivery mode. *************** *** 1019,1026 **** MAILERS 0 local, prog local and program mailers ! 1 smtp SMTP channel ! 2 uucp UNIX-to-UNIX Copy Program 3 netnews Network News delivery 4 fax Sam Leffler's FlexFAX software --- 1121,1128 ---- MAILERS 0 local, prog local and program mailers ! 1 [e]smtp, relay SMTP channel ! 2 uucp-* UNIX-to-UNIX Copy Program 3 netnews Network News delivery 4 fax Sam Leffler's FlexFAX software *************** *** 1029,1035 **** A B Bitnet Relay ! C CSNET Relay D The local domain -- usually not needed E F FAX Relay --- 1131,1137 ---- A B Bitnet Relay ! C D The local domain -- usually not needed E F FAX Relay *** cf/cf/Makefile.OLD Wed Dec 1 11:54:48 1993 --- cf/cf/Makefile Wed Dec 1 11:55:31 1993 *************** *** 1,4 **** ! # @(#)Makefile 8.4 (Berkeley) 10/15/93 M4= m4 #M4= /usr/src/usr.bin/m4/obj/m4 --- 1,4 ---- ! # @(#)Makefile 8.5 (Berkeley) 12/1/93 M4= m4 #M4= /usr/src/usr.bin/m4/obj/m4 *************** *** 15,20 **** --- 15,21 ---- ALL= cs-hidden.cf cs-exposed.cf \ hpux-cs-exposed.cf hpux-cs-hidden.cf \ + riscos-cs-exposed.cf \ sunos3.5-cs-exposed.cf sunos3.5-cs-hidden.cf \ sunos4.1-cs-exposed.cf sunos4.1-cs-hidden.cf \ ultrix4.1-cs-exposed.cf ultrix4.1-cs-hidden.cf \ *** cf/domain/Berkeley.m4.OLD Tue Oct 5 13:28:20 1993 --- cf/domain/Berkeley.m4 Mon Dec 20 10:49:11 1993 *************** *** 33,42 **** # SUCH DAMAGE. # divert(0) ! VERSIONID(`@(#)Berkeley.m4 8.3 (Berkeley) 10/5/93') define(`UUCP_RELAY', `ucbvax.Berkeley.EDU')dnl define(`BITNET_RELAY', `jade.Berkeley.EDU')dnl - define(`CSNET_RELAY', `Relay.CV.COM')dnl define(`confFORWARD_PATH', `$z/.forward.$w:$z/.forward')dnl define(`confCW_FILE', `-o /etc/sendmail.cw')dnl FEATURE(redirect)dnl --- 33,41 ---- # SUCH DAMAGE. # divert(0) ! VERSIONID(`@(#)Berkeley.m4 8.4 (Berkeley) 12/20/93') define(`UUCP_RELAY', `ucbvax.Berkeley.EDU')dnl define(`BITNET_RELAY', `jade.Berkeley.EDU')dnl define(`confFORWARD_PATH', `$z/.forward.$w:$z/.forward')dnl define(`confCW_FILE', `-o /etc/sendmail.cw')dnl FEATURE(redirect)dnl *** cf/feature/bitdomain.m4.OLD Tue Nov 30 08:58:24 1993 --- cf/feature/bitdomain.m4 Tue Nov 30 09:01:07 1993 *************** *** 34,40 **** # divert(0) ! VERSIONID(`@(#)bitdomain.m4 8.3 (Berkeley) 8/7/93') divert(-1) --- 34,40 ---- # divert(0) ! VERSIONID(`@(#)bitdomain.m4 8.4 (Berkeley) 11/30/93') divert(-1) *************** *** 45,49 **** PUSHDIVERT(8) # handle BITNET mapping ! R$* < @ $+ .BITNET > $* $: $1 < @ $(bitdomain $2 $: $2.BITNET $) > $3 POPDIVERT --- 45,49 ---- PUSHDIVERT(8) # handle BITNET mapping ! R$* < @ $+ .BITNET. > $* $: $1 < @ $(bitdomain $2 $: $2.BITNET. $) > $3 POPDIVERT *** cf/feature/redirect.m4.OLD Mon Jun 7 10:10:46 1993 --- cf/feature/redirect.m4 Mon Dec 27 14:48:46 1993 *************** *** 34,46 **** # divert(0) ! VERSIONID(`@(#)redirect.m4 8.1 (Berkeley) 6/7/93') divert(-1) PUSHDIVERT(3) # addresses sent to foo@host.REDIRECT will give a 551 error code ! R$* < @ $+ .REDIRECT > $# error $@ NOUSER $: "551 User not local; please try " <$1@$2> POPDIVERT PUSHDIVERT(6) --- 34,46 ---- # divert(0) ! VERSIONID(`@(#)redirect.m4 8.2 (Berkeley) 12/27/93') divert(-1) PUSHDIVERT(3) # addresses sent to foo@host.REDIRECT will give a 551 error code ! R$* < @ $+ .REDIRECT. > $# error $@ NOUSER $: "551 User not local; please try " <$1@$2> POPDIVERT PUSHDIVERT(6) *** cf/feature/uucpdomain.m4.OLD Tue Nov 30 07:18:13 1993 --- cf/feature/uucpdomain.m4 Tue Nov 30 09:01:08 1993 *************** *** 34,40 **** # divert(0) ! VERSIONID(`@(#)uucpdomain.m4 8.3 (Berkeley) 8/7/93') divert(-1) --- 34,40 ---- # divert(0) ! VERSIONID(`@(#)uucpdomain.m4 8.4 (Berkeley) 11/30/93') divert(-1) *************** *** 45,49 **** PUSHDIVERT(8) # handle UUCP mapping ! R$* < @ $+ .UUCP > $* $: $1 < @ $(uudomain $2 $: $2.UUCP $) > $3 POPDIVERT --- 45,49 ---- PUSHDIVERT(8) # handle UUCP mapping ! R$* < @ $+ .UUCP. > $* $: $1 < @ $(uudomain $2 $: $2.UUCP. $) > $3 POPDIVERT *** cf/m4/cf.m4.OLD Sun Jul 18 10:58:54 1993 --- cf/m4/cf.m4 Fri Dec 24 06:34:40 1993 *************** *** 51,56 **** --- 51,57 ---- changecom() undefine(`format') + undefine(`hpux') ifdef(`pushdef', `', `errprint(`You need a newer version of M4, at least as new as System V or GNU') *************** *** 92,98 **** define(`SITECONFIG', `CONCAT(D, $3, $2) define(`_CLASS_$3_', `')dnl ! ifelse($3, U, Cw$2, `dnl') define(`SITE', `ifelse(CONCAT($'2`, $3), SU, CONCAT(CY, $'1`), CONCAT(C, $3, $'1`))') --- 93,99 ---- define(`SITECONFIG', `CONCAT(D, $3, $2) define(`_CLASS_$3_', `')dnl ! ifelse($3, U, Cw$2 $2.UUCP, `dnl') define(`SITE', `ifelse(CONCAT($'2`, $3), SU, CONCAT(CY, $'1`), CONCAT(C, $3, $'1`))') *************** *** 145,148 **** define(`confTRY_NULL_MX_LIST', `False') divert(0)dnl ! VERSIONID(`@(#)cf.m4 8.2 (Berkeley) 7/18/93') --- 146,149 ---- define(`confTRY_NULL_MX_LIST', `False') divert(0)dnl ! VERSIONID(`@(#)cf.m4 8.4 (Berkeley) 12/24/93') *** cf/m4/proto.m4.OLD Tue Nov 23 09:55:51 1993 --- cf/m4/proto.m4 Thu Jan 13 06:40:24 1994 *************** *** 34,40 **** # divert(0) ! VERSIONID(`@(#)proto.m4 8.20 (Berkeley) 10/31/93') MAILER(local)dnl --- 34,40 ---- # divert(0) ! VERSIONID(`@(#)proto.m4 8.30 (Berkeley) 1/12/94') MAILER(local)dnl *************** *** 93,104 **** CPBITNET ')dnl - ifdef(`CSNET_RELAY', - `# CSNET relay host - DC`'CSNET_RELAY - CPCSNET - - ')dnl ifdef(`FAX_RELAY', `# FAX relay host DF`'FAX_RELAY --- 93,98 ---- *************** *** 185,191 **** # substitution for space (blank) characters OB`'confBLANK_SUB ! # connect to "expensive" mailers on initial submission? Oc`'confCON_EXPENSIVE # checkpoint queue runs after every N successful deliveries --- 179,185 ---- # substitution for space (blank) characters OB`'confBLANK_SUB ! # avoid connecting to "expensive" mailers on initial submission? Oc`'confCON_EXPENSIVE # checkpoint queue runs after every N successful deliveries *************** *** 420,425 **** --- 414,422 ---- R$+ < $+ @ $+ > $1 $2 < @ $3 > move gaze right R$+ < @ $+ > $@ $>_SET_96_ $1 < @ $2 > already canonical + # do some sanity checking + R$* < @ $* : $* > $* $1 < @ $2 $3 > $4 nix colons in addrs + ifdef(`_NO_UUCP_', `dnl', `# convert old-style addresses to a domain-based address R$- ! $+ $@ $>_SET_96_ $2 < @ $1 .UUCP > resolve uucp names *************** *** 458,488 **** ifdef(`_NO_UUCP_', `dnl', `ifdef(`UUCP_RELAY', `# pass UUCP addresses straight through ! R$* < @ $+ . UUCP > $* $@ $1 < @ $2 . UUCP > $3', `# if really UUCP, handle it immediately ifdef(`_CLASS_U_', ! `R$* < @ $=U . UUCP > $* $@ $1 < @ $2 . UUCP > $3', `dnl') ifdef(`_CLASS_V_', ! `R$* < @ $=V . UUCP > $* $@ $1 < @ $2 . UUCP > $3', `dnl') ifdef(`_CLASS_W_', ! `R$* < @ $=W . UUCP > $* $@ $1 < @ $2 . UUCP > $3', `dnl') ifdef(`_CLASS_X_', ! `R$* < @ $=X . UUCP > $* $@ $1 < @ $2 . UUCP > $3', `dnl') ifdef(`_CLASS_Y_', ! `R$* < @ $=Y . UUCP > $* $@ $1 < @ $2 . UUCP > $3', `dnl') # try UUCP traffic as a local address ! R$* < @ $+ . UUCP > $* $: $1 < @ $[ $2 $] . UUCP > $3 ifdef(`_OLD_SENDMAIL_', ! `R$* < @ $+ . $+ . UUCP > $* $@ $1 < @ $2 . $3 . > $4', ! `R$* < @ $+ . . UUCP > $* $@ $1 < @ $2 . > $3')') ') ! ifdef(`_NO_CANONIFY_', ! `# make sure local host names appear canonical ! R$* < @ $=w > $* $: $1 < @ $2 . > $3', `# pass to name server to make hostname canonical R$* < @ $* $~P > $* $: $1 < @ $[ $2 $3 $] > $4') undivert(8)dnl # if this is the local hostname, make sure we treat is as canonical --- 455,488 ---- ifdef(`_NO_UUCP_', `dnl', `ifdef(`UUCP_RELAY', `# pass UUCP addresses straight through ! R$* < @ $+ . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `# if really UUCP, handle it immediately ifdef(`_CLASS_U_', ! `R$* < @ $=U . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl') ifdef(`_CLASS_V_', ! `R$* < @ $=V . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl') ifdef(`_CLASS_W_', ! `R$* < @ $=W . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl') ifdef(`_CLASS_X_', ! `R$* < @ $=X . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl') ifdef(`_CLASS_Y_', ! `R$* < @ $=Y . UUCP > $* $@ $1 < @ $2 . UUCP . > $3', `dnl') # try UUCP traffic as a local address ! R$* < @ $+ . UUCP > $* $: $1 < @ $[ $2 $] . UUCP . > $3 ifdef(`_OLD_SENDMAIL_', ! `R$* < @ $+ . $+ . UUCP . > $* $@ $1 < @ $2 . $3 . > $4', ! `R$* < @ $+ . . UUCP . > $* $@ $1 < @ $2 . > $3')') ') ! ifdef(`_NO_CANONIFY_', `dnl', `# pass to name server to make hostname canonical R$* < @ $* $~P > $* $: $1 < @ $[ $2 $3 $] > $4') + # local host aliases and pseudo-domains are always canonical + R$* < @ $=w > $* $: $1 < @ $2 . > $3 + R$* < @ $* $=P > $* $: $1 < @ $2 $3 . > $4 + R$* < @ $* . . > $* $1 < @ $2 . > $3 + undivert(8)dnl # if this is the local hostname, make sure we treat is as canonical *************** *** 534,539 **** --- 534,540 ---- R<@> $#_LOCAL_ $: <> special case error msgs R$*:;<@> $#error $@ USAGE $: "list:; syntax illegal for recipient addresses" + R<@ $+> $#error $@ USAGE $: "user address required" ifdef(`_MAILER_smtp_', `# handle numeric address spec *************** *** 540,546 **** ifdef(`_NO_CANONIFY_', `dnl', `R$* < @ [ $+ ] > $* $: $1 < @ $[ [$2] $] > $3 numeric internet addr') R$* < @ [ $+ ] > $* $: $>_SET_98_ $1 < @ [ $2 ] > $3 numeric internet spec ! R$* < @ [ $+ ] > $* $#_SMTP_ $@ [$2] $: $1 @ [$2] $3 still numeric: send', `dnl') # now delete the local info -- note $=O to find characters that cause forwarding --- 541,547 ---- ifdef(`_NO_CANONIFY_', `dnl', `R$* < @ [ $+ ] > $* $: $1 < @ $[ [$2] $] > $3 numeric internet addr') R$* < @ [ $+ ] > $* $: $>_SET_98_ $1 < @ [ $2 ] > $3 numeric internet spec ! R$* < @ [ $+ ] > $* $#_SMTP_ $@ [$2] $: $1 < @ [$2] > $3 still numeric: send', `dnl') # now delete the local info -- note $=O to find characters that cause forwarding *************** *** 564,570 **** ifdef(`_LOCAL_NOT_STICKY_', `R$=L < @ $=w . > $#_LOCAL_ $: @ $1 special local names R$+ < @ $=w . > $#_LOCAL_ $: $1 dispose directly', ! `R$+ < @ $=w . > $: $1 < @ $2 @ $H > first try hub ifdef(`_OLD_SENDMAIL_', `R$+ < $+ @ $-:$+ > $# $3 $@ $4 $: $1 < $2 > yep .... R$+ < $+ @ $+ > $#relay $@ $3 $: $1 < $2 > yep .... --- 565,571 ---- ifdef(`_LOCAL_NOT_STICKY_', `R$=L < @ $=w . > $#_LOCAL_ $: @ $1 special local names R$+ < @ $=w . > $#_LOCAL_ $: $1 dispose directly', ! `R$+ < @ $=w . > $: $1 < @ $2 . @ $H > first try hub ifdef(`_OLD_SENDMAIL_', `R$+ < $+ @ $-:$+ > $# $3 $@ $4 $: $1 < $2 > yep .... R$+ < $+ @ $+ > $#relay $@ $3 $: $1 < $2 > yep .... *************** *** 576,614 **** ifdef(`_NO_UUCP_', `dnl', `# resolve remotely connected UUCP links (if any) ifdef(`_CLASS_V_', ! `R$* < @ $=V . UUCP > $* $: $>_SET_95_ < $V > $1 <@$2.UUCP> $3', `dnl') ifdef(`_CLASS_W_', ! `R$* < @ $=W . UUCP > $* $: $>_SET_95_ < $W > $1 <@$2.UUCP> $3', `dnl') ifdef(`_CLASS_X_', ! `R$* < @ $=X . UUCP > $* $: $>_SET_95_ < $X > $1 <@$2.UUCP> $3', `dnl')') # resolve fake top level domains by forwarding to other hosts ifdef(`BITNET_RELAY', ! `R$*<@$+.BITNET>$* $: $>_SET_95_ < $B > $1 <@$2.BITNET> $3 user@host.BITNET', `dnl') ! ifdef(`CSNET_RELAY', ! `R$*<@$+.CSNET>$* $: $>_SET_95_ < $C > $1 <@$2.CSNET> $3 user@host.CSNET', `dnl') ifdef(`_MAILER_fax_', ! `R$+ < @ $+ .FAX > $#fax $@ $2 $: $1 user@host.FAX', `ifdef(`FAX_RELAY', ! `R$*<@$+.FAX>$* $: $>_SET_95_ < $F > $1 <@$2.FAX> $3 user@host.FAX', `dnl')') ifdef(`UUCP_RELAY', `# forward non-local UUCP traffic to our UUCP relay ! R$*<@$*.UUCP>$* $: $>_SET_95_ < $Y > $1 @ <$2.UUCP> $3 uucp mail', `ifdef(`_MAILER_uucp_', `# forward other UUCP traffic straight to UUCP ! R< @ $+ .UUCP > : $+ $#uucp $@ $1 $: $2 @host.UUCP:... ! R$+ < @ $+ .UUCP > $#uucp $@ $2 $: $1 user@host.UUCP', `dnl')') ifdef(`_MAILER_usenet_', ` # addresses sent to net.group.USENET will get forwarded to a newsgroup ! R$+ . USENET $#usenet $: $1', `dnl') ifdef(`_LOCAL_RULES_', --- 577,614 ---- ifdef(`_NO_UUCP_', `dnl', `# resolve remotely connected UUCP links (if any) ifdef(`_CLASS_V_', ! `R$* < @ $=V . UUCP . > $* $: $>_SET_95_ < $V > $1 <@$2.UUCP.> $3', `dnl') ifdef(`_CLASS_W_', ! `R$* < @ $=W . UUCP . > $* $: $>_SET_95_ < $W > $1 <@$2.UUCP.> $3', `dnl') ifdef(`_CLASS_X_', ! `R$* < @ $=X . UUCP . > $* $: $>_SET_95_ < $X > $1 <@$2.UUCP.> $3', `dnl')') # resolve fake top level domains by forwarding to other hosts ifdef(`BITNET_RELAY', ! `R$*<@$+.BITNET.>$* $: $>_SET_95_ < $B > $1 <@$2.BITNET.> $3 user@host.BITNET', `dnl') ! ifdef(`_MAILER_pop_', ! `R$+ < @ POP. > $#pop $: $1 user@POP', `dnl') ifdef(`_MAILER_fax_', ! `R$+ < @ $+ .FAX. > $#fax $@ $2 $: $1 user@host.FAX', `ifdef(`FAX_RELAY', ! `R$*<@$+.FAX.>$* $: $>_SET_95_ < $F > $1 <@$2.FAX.> $3 user@host.FAX', `dnl')') ifdef(`UUCP_RELAY', `# forward non-local UUCP traffic to our UUCP relay ! R$*<@$*.UUCP.>$* $: $>_SET_95_ < $Y > $1 <@$2.UUCP.> $3 uucp mail', `ifdef(`_MAILER_uucp_', `# forward other UUCP traffic straight to UUCP ! R$* < @ $+ .UUCP. > $* $#uucp $@ $2 $: $1 < @ $2 .UUCP. > $3 user@host.UUCP', `dnl')') ifdef(`_MAILER_usenet_', ` # addresses sent to net.group.USENET will get forwarded to a newsgroup ! R$+ . USENET. $#usenet $: $1', `dnl') ifdef(`_LOCAL_RULES_', *** cf/m4/version.m4.OLD Tue Nov 30 08:59:13 1993 --- cf/m4/version.m4 Thu Jan 13 06:42:08 1994 *************** *** 32,39 **** # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # ! VERSIONID(`@(#)version.m4 8.6.1.4 (Berkeley) 10/31/93') # divert(0) # Configuration version number ! DZ8.6.4 --- 32,39 ---- # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # ! VERSIONID(`@(#)version.m4 8.6.1.5 (Berkeley) 1/13/94') # divert(0) # Configuration version number ! DZ8.6.5 *** cf/mailer/pop.m4.OLD Tue Dec 14 14:29:44 1993 --- cf/mailer/pop.m4 Wed Dec 15 06:36:42 1993 *************** *** 0 **** --- 1,54 ---- + PUSHDIVERT(-1) + # + # Copyright (c) 1983 Eric P. Allman + # Copyright (c) 1988, 1993 + # The Regents of the University of California. All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, are permitted provided that the following conditions + # are met: + # 1. Redistributions of source code must retain the above copyright + # notice, this list of conditions and the following disclaimer. + # 2. Redistributions in binary form must reproduce the above copyright + # notice, this list of conditions and the following disclaimer in the + # documentation and/or other materials provided with the distribution. + # 3. All advertising materials mentioning features or use of this software + # must display the following acknowledgement: + # This product includes software developed by the University of + # California, Berkeley and its contributors. + # 4. Neither the name of the University nor the names of its contributors + # may be used to endorse or promote products derived from this software + # without specific prior written permission. + # + # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + # + + ifdef(`POP_MAILER_PATH',, `define(`POP_MAILER_PATH', /usr/lib/mh/spop)') + ifdef(`POP_MAILER_FLAGS',, `define(`POP_MAILER_FLAGS', `eu')') + ifdef(`POP_MAILER_ARGS',, `define(`POP_MAILER_ARGS', `pop $u')') + + POPDIVERT + + LOCAL_CONFIG + # POP mailer is a pseudo-domain + CPPOP + POPDIVERT + + #################################### + ### POP Mailer specification ### + #################################### + + VERSIONID(`@(#)pop.m4 8.1 (Berkeley) 12/15/93') + + Mpop, P=POP_MAILER_PATH, F=CONCAT(`lsDFM', POP_MAILER_FLAGS), S=10, R=20/40, + A=POP_MAILER_ARGS *** cf/mailer/smtp.m4.OLD Wed Nov 10 07:02:30 1993 --- cf/mailer/smtp.m4 Mon Dec 27 14:49:22 1993 *************** *** 40,52 **** ### SMTP Mailer specification ### ##################################### ! VERSIONID(`@(#)smtp.m4 8.7 (Berkeley) 10/31/93') Msmtp, P=[IPC], F=CONCAT(mDFMuX, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n, ifdef(`_OLD_SENDMAIL_',, `L=990, ')A=IPC $h Mesmtp, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n, ifdef(`_OLD_SENDMAIL_',, `L=990, ')A=IPC $h ! Mrelay, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=51, E=\r\n, ifdef(`_OLD_SENDMAIL_',, `L=2040, ')A=IPC $h # --- 40,52 ---- ### SMTP Mailer specification ### ##################################### ! VERSIONID(`@(#)smtp.m4 8.13 (Berkeley) 12/27/93') Msmtp, P=[IPC], F=CONCAT(mDFMuX, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n, ifdef(`_OLD_SENDMAIL_',, `L=990, ')A=IPC $h Mesmtp, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), E=\r\n, ifdef(`_OLD_SENDMAIL_',, `L=990, ')A=IPC $h ! Mrelay, P=[IPC], F=CONCAT(mDFMuXa, SMTP_MAILER_FLAGS), S=11/31, R=61, E=\r\n, ifdef(`_OLD_SENDMAIL_',, `L=2040, ')A=IPC $h # *************** *** 55,66 **** S11 R$+ $: $>51 $1 sender/recipient common R$* :; <@> $@ $1 :; list:; special case - # handle unqualified names - R$* < @ $* > $* $@ $1 < @ $2 > $3 already qualified - R$* $@ $>61 $1 - # # header recipient rewriting if not masquerading recipients # --- 55,63 ---- S11 R$+ $: $>51 $1 sender/recipient common R$* :; <@> $@ $1 :; list:; special case + R$* $@ $>61 $1 qualify unqual'ed names # # header recipient rewriting if not masquerading recipients # *************** *** 87,100 **** R$=E < @ $=w . > $@ $1 < @ $2 > exposed user as is R$* < @ $=w . > $: $1 < @ $M > masquerade as domain R$* < @ > $: $1 < @ $j > in case $M undefined - # handle unqualified names - R$* < @ $* > $* $@ $1 < @ $2 > $3 already qualified - R$* $@ $>61 $1 - # ! # common rewriting for all SMTP addresses # S51 --- 84,94 ---- R$=E < @ $=w . > $@ $1 < @ $2 > exposed user as is R$* < @ $=w . > $: $1 < @ $M > masquerade as domain R$* < @ > $: $1 < @ $j > in case $M undefined + R$* $@ $>61 $1 qualify unqual'ed names # ! # convert pseudo-domain addresses to real domain addresses # S51 *************** *** 103,124 **** # output fake domains as user%fake@relay ifdef(`BITNET_RELAY', ! `R$+ <@ $+ . BITNET > $: $1 % $2 .BITNET < @ $B > user@host.BITNET R$+.BITNET <@ $+:$+ > $: $1 .BITNET < @ $3 > strip mailer: part', `dnl') ! ifdef(`CSNET_RELAY', ! `R$+ <@ $+ . CSNET > $: $1 % $2 .CSNET < @ $C > user@host.CSNET ! R$+.CSNET <@ $+:$+ > $: $1 .CSNET < @ $3 > strip mailer: part', ! `dnl') ! ifdef(`_NO_UUCP_', `dnl', ! `R$+ <@ $+ . UUCP > $: $2 ! $1 < @ $j > user@host.UUCP') # # common sender and masquerading recipient rewriting # S61 R$=E $@ $1 < @ $j> show exposed names R$+ $: $1 < @ $M > user w/o host R$+ <@> $: $1 < @ $j > in case $M undefined --- 97,125 ---- # output fake domains as user%fake@relay ifdef(`BITNET_RELAY', ! `R$+ <@ $+ .BITNET. > $: $1 % $2 .BITNET < @ $B > user@host.BITNET R$+.BITNET <@ $+:$+ > $: $1 .BITNET < @ $3 > strip mailer: part', `dnl') ! ifdef(`_NO_UUCP_', `dnl', ` ! # do UUCP heuristics; note that these are shared with UUCP mailers ! R$+ < @ $+ .UUCP. > $: < $2 ! > $1 convert to UUCP form ! R$+ < @ $* > $* $@ $1 < @ $2 > $3 not UUCP form + # leave these in .UUCP form to avoid further tampering + R< $&h ! > $- ! $+ $@ $2 < @ $1 .UUCP. > + R< $&h ! > $-.$+ ! $+ $@ $3 < @ $1.$2 > + R< $&h ! > $+ $@ $1 < @ $&h .UUCP. > + R< $+ ! > $+ $: $1 ! $2 < @ $Y > + R$+ < @ > $: $1 < @ $j > in case $Y undefined + R$+ < @ $+ : $+ > $: $1 < @ $3 > strip mailer: part') + # # common sender and masquerading recipient rewriting # S61 + R$* < @ $* > $* $@ $1 < @ $2 > $3 already qualified R$=E $@ $1 < @ $j> show exposed names R$+ $: $1 < @ $M > user w/o host R$+ <@> $: $1 < @ $j > in case $M undefined *** cf/mailer/uucp.m4.OLD Thu Nov 11 06:21:23 1993 --- cf/mailer/uucp.m4 Mon Jan 10 08:01:11 1994 *************** *** 42,60 **** ### UUCP Mailer specification ### ##################################### ! VERSIONID(`@(#)uucp.m4 8.6 (Berkeley) 10/31/93') ! # old UUCP mailer Muucp, P=UUCP_MAILER_PATH, F=CONCAT(DFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE, A=UUCP_MAILER_ARGS ! # smart UUCP mailer (handles multiple addresses) Msuucp, P=UUCP_MAILER_PATH, F=CONCAT(mDFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE, A=UUCP_MAILER_ARGS ifdef(`_MAILER_smtp_', `# domain-ized UUCP mailer Muucp-dom, P=UUCP_MAILER_PATH, F=CONCAT(mDFMhu, UUCP_MAILER_FLAGS), S=52/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), M=UUCP_MAX_SIZE, A=UUCP_MAILER_ARGS') --- 42,73 ---- ### UUCP Mailer specification ### ##################################### ! VERSIONID(`@(#)uucp.m4 8.13 (Berkeley) 1/10/94') ! # ! # There are innumerable variations on the UUCP mailer. It really ! # is rather absurd. ! # ! ! # old UUCP mailer (two names) Muucp, P=UUCP_MAILER_PATH, F=CONCAT(DFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE, A=UUCP_MAILER_ARGS + Muucp-old, P=UUCP_MAILER_PATH, F=CONCAT(DFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE, + A=UUCP_MAILER_ARGS ! # smart UUCP mailer (handles multiple addresses) (two names) Msuucp, P=UUCP_MAILER_PATH, F=CONCAT(mDFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE, A=UUCP_MAILER_ARGS + Muucp-new, P=UUCP_MAILER_PATH, F=CONCAT(mDFMhuU, UUCP_MAILER_FLAGS), S=12, R=22, M=UUCP_MAX_SIZE, + A=UUCP_MAILER_ARGS ifdef(`_MAILER_smtp_', `# domain-ized UUCP mailer Muucp-dom, P=UUCP_MAILER_PATH, F=CONCAT(mDFMhu, UUCP_MAILER_FLAGS), S=52/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), M=UUCP_MAX_SIZE, + A=UUCP_MAILER_ARGS + + # domain-ized UUCP mailer with UUCP-style sender envelope + Muucp-uudom, P=UUCP_MAILER_PATH, F=CONCAT(mDFMhu, UUCP_MAILER_FLAGS), S=72/31, R=ifdef(`_ALL_MASQUERADE_', `11/31', `21'), M=UUCP_MAX_SIZE, A=UUCP_MAILER_ARGS') *************** *** 70,79 **** R$* :; <@> $@ $1 :; R$* < @ $* . > $1 < @ $2 > strip trailing dots ! R$* < @ $j > $1 strip local name R$* < @ $- . UUCP > $2 ! $1 convert to UUCP format R$* < @ $+ > $2 ! $1 convert to UUCP format R$+ $: $U ! $1 prepend our name # # envelope and header recipient rewriting --- 83,97 ---- R$* :; <@> $@ $1 :; R$* < @ $* . > $1 < @ $2 > strip trailing dots ! R$* < @ $=w > $1 strip local name ! R<@ $- . UUCP > : $+ $1 ! $2 convert to UUCP format ! R<@ $+ > : $+ $1 ! $2 convert to UUCP format R$* < @ $- . UUCP > $2 ! $1 convert to UUCP format R$* < @ $+ > $2 ! $1 convert to UUCP format + R$&h ! $+ ! $+ $@ $1 ! $2 $h!...!user => ...!user + R$&h ! $+ $@ $&h ! $1 $h!user => $h!user R$+ $: $U ! $1 prepend our name + R! $+ $: $k ! $1 in case $U undefined # # envelope and header recipient rewriting *************** *** 81,95 **** S22 # don't touch list:; syntax ! R$* :; <@> $@ $1 ;: R$* < @ $* . > $1 < @ $2 > strip trailing dots R$* < @ $j > $1 strip local name R$* < @ $- . UUCP > $2 ! $1 convert to UUCP format R$* < @ $+ > $2 ! $1 convert to UUCP format ! # # envelope sender rewriting for uucp-dom mailer # S52 --- 99,120 ---- S22 # don't touch list:; syntax ! R$* :; <@> $@ $1 :; R$* < @ $* . > $1 < @ $2 > strip trailing dots R$* < @ $j > $1 strip local name + R<@ $- . UUCP > : $+ $1 ! $2 convert to UUCP format + R<@ $+ > : $+ $1 ! $2 convert to UUCP format R$* < @ $- . UUCP > $2 ! $1 convert to UUCP format R$* < @ $+ > $2 ! $1 convert to UUCP format + R$&h ! $+ ! $+ $@ $1 ! $2 $h!...!user => ...!user + R$&h ! $+ $@ $&h ! $1 $h!user => $h!user + R$+ $: $U ! $1 prepend our name + R! $+ $: $k ! $1 in case $U undefined ! ifdef(`_MAILER_smtp_', ! `# # envelope sender rewriting for uucp-dom mailer # S52 *************** *** 100,112 **** # pass everything to standard SMTP mailer rewriting R$* $@ $>11 $1 PUSHDIVERT(4) # resolve locally connected UUCP links ! R< @ $=Z . UUCP > : $+ $#uucp-dom $@ $1 $: $2 @host.UUCP: ... ! R$+ < @ $=Z . UUCP > $#uucp-dom $@ $2 $: $1 user@host.UUCP ! R< @ $=Y . UUCP > : $+ $#suucp $@ $1 $: $2 @host.UUCP: ... ! R$+ < @ $=Y . UUCP > $#suucp $@ $2 $: $1 user@host.UUCP ! R< @ $=U . UUCP > : $+ $#uucp $@ $1 $: $2 @host.UUCP: ... ! R$+ < @ $=U . UUCP > $#uucp $@ $2 $: $1 user@host.UUCP POPDIVERT --- 125,157 ---- # pass everything to standard SMTP mailer rewriting R$* $@ $>11 $1 + # + # envelope sender rewriting for uucp-uudom mailer + # + S72 + # handle error address as a special case + R<@> $n errors to mailer-daemon + + # do not qualify list:; syntax + R$* :; <@> $@ $1 :; + + R$* < @ $* . > $1 < @ $2 > strip trailing dots + R$* < @ $=w > $1 strip local name + R<@ $- . UUCP > : $+ $1 ! $2 convert to UUCP format + R<@ $+ > : $+ $1 ! $2 convert to UUCP format + R$* < @ $- . UUCP > $2 ! $1 convert to UUCP format + R$* < @ $+ > $@ $2 ! $1 convert to UUCP format + + R$&h ! $+ ! $+ $@ $1 ! $2 $h!...!user => ...!user + R$&h ! $+ $@ $&h ! $1 $h!user => $h!user + R$+ $: $M ! $1 prepend masquerade name + R! $+ $: $j ! $1 in case $M undefined') + + PUSHDIVERT(4) # resolve locally connected UUCP links ! R$* < @ $=Z . UUCP. > $* $#uucp-uudom $@ $1 $: $1 < @ $2 .UUCP. > $3 @host.UUCP: ... ! R$* < @ $=Y . UUCP. > $* $#uucp-new $@ $2 $: $1 < @ $2 .UUCP. > $3 ! R$* < @ $=U . UUCP. > $* $#uucp-old $@ $2 $: $1 < @ $2 .UUCP. > $3 POPDIVERT *** cf/ostype/bsdi1.0.m4.OLD Sat Dec 11 13:05:45 1993 --- cf/ostype/bsdi1.0.m4 Sat Dec 11 13:05:41 1993 *************** *** 0 **** --- 1,38 ---- + divert(-1) + # + # Copyright (c) 1983 Eric P. Allman + # Copyright (c) 1988, 1993 + # The Regents of the University of California. All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, are permitted provided that the following conditions + # are met: + # 1. Redistributions of source code must retain the above copyright + # notice, this list of conditions and the following disclaimer. + # 2. Redistributions in binary form must reproduce the above copyright + # notice, this list of conditions and the following disclaimer in the + # documentation and/or other materials provided with the distribution. + # 3. All advertising materials mentioning features or use of this software + # must display the following acknowledgement: + # This product includes software developed by the University of + # California, Berkeley and its contributors. + # 4. Neither the name of the University nor the names of its contributors + # may be used to endorse or promote products derived from this software + # without specific prior written permission. + # + # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + # + + divert(0) + VERSIONID(`@(#)bsdi1.0.m4 8.1 (Berkeley) 12/11/93')dnl + OSTYPE(bsd4.4) *** cf/ostype/dgux.m4.OLD Sat Nov 27 09:28:04 1993 --- cf/ostype/dgux.m4 Sat Nov 27 09:25:45 1993 *************** *** 0 **** --- 1,39 ---- + divert(-1) + # + # Copyright (c) 1983 Eric P. Allman + # Copyright (c) 1988, 1993 + # The Regents of the University of California. All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, are permitted provided that the following conditions + # are met: + # 1. Redistributions of source code must retain the above copyright + # notice, this list of conditions and the following disclaimer. + # 2. Redistributions in binary form must reproduce the above copyright + # notice, this list of conditions and the following disclaimer in the + # documentation and/or other materials provided with the distribution. + # 3. All advertising materials mentioning features or use of this software + # must display the following acknowledgement: + # This product includes software developed by the University of + # California, Berkeley and its contributors. + # 4. Neither the name of the University nor the names of its contributors + # may be used to endorse or promote products derived from this software + # without specific prior written permission. + # + # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + # + + divert(0) + VERSIONID(`@(#)dgux.m4 8.1 (Berkeley) 11/27/93') + define(`LOCAL_MAILER_FLAGS', m)dnl + define(`confTIME_ZONE', `USE_TZ')dnl *** cf/ostype/dynix3.2.m4.OLD Sat Nov 27 14:28:30 1993 --- cf/ostype/dynix3.2.m4 Sat Nov 27 14:28:24 1993 *************** *** 0 **** --- 1,39 ---- + divert(-1) + # + # Copyright (c) 1983 Eric P. Allman + # Copyright (c) 1988, 1993 + # The Regents of the University of California. All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, are permitted provided that the following conditions + # are met: + # 1. Redistributions of source code must retain the above copyright + # notice, this list of conditions and the following disclaimer. + # 2. Redistributions in binary form must reproduce the above copyright + # notice, this list of conditions and the following disclaimer in the + # documentation and/or other materials provided with the distribution. + # 3. All advertising materials mentioning features or use of this software + # must display the following acknowledgement: + # This product includes software developed by the University of + # California, Berkeley and its contributors. + # 4. Neither the name of the University nor the names of its contributors + # may be used to endorse or promote products derived from this software + # without specific prior written permission. + # + # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + # + + divert(0) + VERSIONID(`@(#)dynix3.2.m4 8.1 (Berkeley) 11/27/93') + define(`ALIAS_FILE', /usr/lib/aliases)dnl + define(`QUEUE_DIR', /usr/spool/mqueue)dnl *** cf/ostype/hpux.m4.OLD Tue Aug 24 20:31:55 1993 --- cf/ostype/hpux.m4 Sun Jan 9 09:50:51 1994 *************** *** 34,43 **** # divert(0) ! VERSIONID(`@(#)hpux.m4 8.4 (Berkeley) 8/24/93') define(`QUEUE_DIR', /usr/spool/mqueue)dnl define(`ALIAS_FILE', /usr/lib/aliases)dnl define(`STATUS_FILE', /usr/lib/sendmail.st)dnl define(`LOCAL_MAILER_FLAGS', `m')dnl define(`confTIME_ZONE', `USE_TZ')dnl --- 34,44 ---- # divert(0) ! VERSIONID(`@(#)hpux.m4 8.5 (Berkeley) 1/9/94') define(`QUEUE_DIR', /usr/spool/mqueue)dnl define(`ALIAS_FILE', /usr/lib/aliases)dnl define(`STATUS_FILE', /usr/lib/sendmail.st)dnl define(`LOCAL_MAILER_FLAGS', `m')dnl + define(`UUCP_MAILER_ARGS', `uux - -r -a$f -gC $h!rmail ($u)')dnl define(`confTIME_ZONE', `USE_TZ')dnl *** cf/ostype/irix.m4.OLD Sat Nov 27 09:28:44 1993 --- cf/ostype/irix.m4 Sat Nov 27 09:29:26 1993 *************** *** 34,38 **** # divert(0) ! VERSIONID(`@(#)irix.m4 8.2 (Berkeley) 8/8/93') define(`LOCAL_MAILER_FLAGS', Ehmu)dnl --- 34,41 ---- # divert(0) ! VERSIONID(`@(#)irix.m4 8.3 (Berkeley) 11/27/93') define(`LOCAL_MAILER_FLAGS', Ehmu)dnl + define(`QUEUE_DIR', /usr/spool/mqueue)dnl + define(`ALIAS_FILE', /usr/lib/aliases)dnl + define(`STATUS_FILE', /usr/lib/sendmail.st)dnl *** cf/ostype/nextstep.m4.OLD Wed Nov 10 17:07:58 1993 --- cf/ostype/nextstep.m4 Tue Nov 30 09:01:49 1993 *************** *** 34,42 **** # divert(0) ! VERSIONID(`@(#)nextstep.m4 8.3 (Berkeley) 8/13/93') define(`ALIAS_FILE', /etc/sendmail/aliases)dnl define(`HELP_FILE', /usr/lib/sendmail.hf)dnl define(`STATUS_FILE', /etc/sendmail/sendmail.st)dnl define(`UUCP_MAILER_PATH', /usr/bin/uux)dnl define(`QUEUE_DIR', /usr/spool/mqueue)dnl --- 34,44 ---- # divert(0) ! VERSIONID(`@(#)nextstep.m4 8.4 (Berkeley) 11/30/93') define(`ALIAS_FILE', /etc/sendmail/aliases)dnl define(`HELP_FILE', /usr/lib/sendmail.hf)dnl define(`STATUS_FILE', /etc/sendmail/sendmail.st)dnl define(`UUCP_MAILER_PATH', /usr/bin/uux)dnl define(`QUEUE_DIR', /usr/spool/mqueue)dnl + define(`LOCAL_MAILER_FLAGS', `rmnP')dnl + define(`LOCAL_SHELL_FLAGS', `euP')dnl *** cf/ostype/riscos4.5.m4.OLD Wed Dec 1 07:54:37 1993 --- cf/ostype/riscos4.5.m4 Wed Dec 1 08:44:17 1993 *************** *** 34,37 **** # divert(0) ! VERSIONID(`@(#)riscos4.5.m4 8.1 (Berkeley) 6/7/93') --- 34,42 ---- # divert(0) ! VERSIONID(`@(#)riscos4.5.m4 8.2 (Berkeley) 12/1/93') ! ! define(`LOCAL_MAILER_ARGS', `rmail -d $u')dnl ! define(`ALIAS_FILE', `/usr/lib/aliases')dnl ! define(`QUEUE_DIR', `/usr/spool/mqueue')dnl ! define(`HELP_FILE', `/usr/lib/sendmail.hf')dnl *** cf/ostype/sco3.2.m4.OLD Sat Nov 27 10:29:19 1993 --- cf/ostype/sco3.2.m4 Sat Nov 27 10:29:10 1993 *************** *** 0 **** --- 1,45 ---- + divert(-1) + # + # Copyright (c) 1983 Eric P. Allman + # Copyright (c) 1988, 1993 + # The Regents of the University of California. All rights reserved. + # + # Redistribution and use in source and binary forms, with or without + # modification, are permitted provided that the following conditions + # are met: + # 1. Redistributions of source code must retain the above copyright + # notice, this list of conditions and the following disclaimer. + # 2. Redistributions in binary form must reproduce the above copyright + # notice, this list of conditions and the following disclaimer in the + # documentation and/or other materials provided with the distribution. + # 3. All advertising materials mentioning features or use of this software + # must display the following acknowledgement: + # This product includes software developed by the University of + # California, Berkeley and its contributors. + # 4. Neither the name of the University nor the names of its contributors + # may be used to endorse or promote products derived from this software + # without specific prior written permission. + # + # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + # + + divert(0) + VERSIONID(`@(#)sco32.m4 8.1 (Berkeley) 11/27/93') + define(`ALIAS_FILE', /usr/lib/mail/aliases)dnl + define(`QUEUE_DIR', /usr/spool/mqueue)dnl + define(`STATUS_FILE', /usr/lib/sendmail.st)dnl + define(`UUCP_MAILER_PATH', /usr/bin/uux)dnl + define(`LOCAL_MAILER_PATH', /usr/bin/lmail)dnl + define(`LOCAL_MAILER_FLAGS', PuhCE)dnl + define(`LOCAL_MAILER_ARGS', `lmail $u')dnl + define(`LOCAL_SHELL_FLAGS', Peu)dnl *** doc/op/op.me.OLD Fri Nov 12 09:44:20 1993 --- doc/op/op.me Wed Jan 12 06:52:00 1994 *************** *** 30,36 **** .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" ! .\" @(#)op.me 8.26 (Berkeley) 10/14/93 .\" .\" eqn op.me | pic | troff -me .eh 'SMM:08-%''Sendmail Installation and Operation Guide' --- 30,36 ---- .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" ! .\" @(#)op.me 8.32 (Berkeley) 1/12/94 .\" .\" eqn op.me | pic | troff -me .eh 'SMM:08-%''Sendmail Installation and Operation Guide' *************** *** 69,75 **** Mammoth Project eric@CS.Berkeley.EDU .sp ! Version 8.26 .sp For Sendmail Version 8.6 .)l --- 69,75 ---- Mammoth Project eric@CS.Berkeley.EDU .sp ! Version 8.32 .sp For Sendmail Version 8.6 .)l *************** *** 185,191 **** on 4.4BSD. .pp If you are loading this off the tape, ! continue with the next session. If you have a running binary already on your system, you should probably skip to section 1.2. .sh 2 "Compiling Sendmail" --- 185,191 ---- on 4.4BSD. .pp If you are loading this off the tape, ! continue with the next section. If you have a running binary already on your system, you should probably skip to section 1.2. .sh 2 "Compiling Sendmail" *************** *** 576,590 **** of this document. .sh 3 "/usr/\*(SB/newaliases" .pp ! If you are running delivermail, ! it is critical that the .i newaliases ! command be replaced. ! This can just be a link to .i sendmail : .(b rm \-f /usr/\*(SB/newaliases ! ln /usr/\*(SD/sendmail /usr/\*(SB/newaliases .)b This can be installed in whatever search path you prefer for your system. --- 576,588 ---- of this document. .sh 3 "/usr/\*(SB/newaliases" .pp ! The .i newaliases ! command should just be a link to .i sendmail : .(b rm \-f /usr/\*(SB/newaliases ! ln \-s /usr/\*(SD/sendmail /usr/\*(SB/newaliases .)b This can be installed in whatever search path you prefer for your system. *************** *** 808,813 **** --- 806,816 ---- The system log is supported by the .i syslogd \|(8) program. + All messages from + .i sendmail + are logged under the + .sm LOG_MAIL + facility. .sh 3 "Format" .pp Each line in the system log *************** *** 994,999 **** --- 997,1012 ---- .q mail.aliases in .q my.nis.domain . + Warning: if you build your own + .sm NIS -based + alias files, + be sure to provide the + .b \-l + flag to + .i makedbm (8) + to map upper case letters in the keys to lower case; + otherwise, aliases with upper case letters in their names + won't match incoming addresses. .pp Additional flags can be added after the colon exactly like a *************** *** 1074,1084 **** .q a option is required in the configuration for this action to occur. ! This should normally be specified ! unless you are running ! .i delivermail ! in parallel with ! .i sendmail. .)f .sh 3 "List owners" .pp --- 1087,1093 ---- .q a option is required in the configuration for this action to occur. ! This should normally be specified. .)f .sh 3 "List owners" .pp *************** *** 1438,1443 **** --- 1447,1464 ---- .i sendmail , including the incoming SMTP traffic, will be logged in this file. + .sh 2 "Dumping State" + .pp + You can ask + .i sendmail + to log a dump of the open files + and the connection cache + by sending it a + .sm SIGUSR1 + signal. + The results are logged at + .sm LOG_DEBUG + priority. .sh 1 "TUNING" .pp There are a number of configuration parameters *************** *** 2381,2387 **** .b $) syntax is a more general form of lookup; it uses a named map instead of an implicit map. ! If no lookup is found, the indicted .i default is inserted; if no default is specified and no lookup matches, --- 2402,2408 ---- .b $) syntax is a more general form of lookup; it uses a named map instead of an implicit map. ! If no lookup is found, the indicated .i default is inserted; if no default is specified and no lookup matches, *************** *** 2444,2455 **** may be a colon-separated list of hosts that are searched in order for the first working address (exactly like MX records). .pp A RHS may also be preceded by a .b $@ or a .b $: ! to control evaluation. A .b $@ prefix causes the ruleset to return with the remainder of the RHS --- 2465,2485 ---- may be a colon-separated list of hosts that are searched in order for the first working address (exactly like MX records). + The + .i user + is later rewritten by the mailer-specific envelope rewriting set + and assigned to the + .b $u + macro. .pp + Normally, a ruleset that matches is retried, + that is, + the ruleset loops until it fails. A RHS may also be preceded by a .b $@ or a .b $: ! to change this behavior. A .b $@ prefix causes the ruleset to return with the remainder of the RHS *************** *** 2794,2800 **** Defaults to .q MAILER-DAEMON . .ip $o\(dg ! .b "The set of "operators" in addresses." A list of characters which will be considered tokens and which will separate tokens --- 2824,2830 ---- Defaults to .q MAILER-DAEMON . .ip $o\(dg ! .b "The set of \*(lqoperators\*(rq in addresses." A list of characters which will be considered tokens and which will separate tokens *************** *** 3109,3114 **** --- 3139,3165 ---- is set to be the same as .b $k , that is, the UUCP node name. + .pp + The class + .b $=m + is set to the set of domains by which this host is known, + initially just + .b $m . + .pp + .i Sendmail + can be compiled to allow a + .i scanf (3) + string on the + .b F + line. + This lets you do simplistic parsing of text files. + For example, to read all the user names in your system + .i /etc/passwd + file into a class, use + .(b + FL/etc/passwd %[^:] + .)b + which reads every line up to the first colon. .sh 3 "M \*- define mailer" .pp Programs and interfaces to mailers *************** *** 3698,3704 **** .ip k\fIN\fP The maximum number of open connections that will be cached at a time. The default is one. ! This delays closing the the current connection until either this invocation of .i sendmail needs to connect to another host --- 3749,3755 ---- .ip k\fIN\fP The maximum number of open connections that will be cached at a time. The default is one. ! This delays closing the current connection until either this invocation of .i sendmail needs to connect to another host *************** *** 3794,3799 **** --- 3845,3851 ---- restrictmailq Restrict mailq command restrictqrun Restrict \-q command line flag goaway Disallow essentially all SMTP status queries + authwarnings Put X-Authentication-Warning: headers in messages .)b The .q goaway *************** *** 3807,3812 **** --- 3859,3867 ---- If queue runs are restricted, only root and the owner of the queue directory can run the queue. + Authentication Warnings add warnings about various conditions + that may indicate attempts to spoof the mail system, + such as using an non-standard queue directory. .ip P\fIpostmaster\fP If set, copies of error messages will be sent to the named *************** *** 3893,3899 **** even if you are going to attempt immediate delivery. .i Sendmail always instantiates the queue file ! before returning control the the client under any circumstances. .ip S\fIfile\fP Log statistics in the named --- 3948,3954 ---- even if you are going to attempt immediate delivery. .i Sendmail always instantiates the queue file ! before returning control the client under any circumstances. .ip S\fIfile\fP Log statistics in the named *************** *** 4165,4170 **** --- 4220,4240 ---- change the default definition of .b $w to be just the first component of the hostname. + .pp + The + .b V + line may have an optional + .b / \c + .i vendor + to indicate that this configuration file uses modifications + specific to a particular vendor\**. + .(f + \**And of course, vendors are encouraged to add themselves + to the list of recognized vendors by editing the routine + .i setvendor + in + .i conf.c . + .)f .sh 3 "K \*- key file declaration" .pp Special maps can be defined using the line: *************** *** 4265,4271 **** and the third requires that .i sendmail be compiled with NIS support. ! All four accept as arguments the some optional flags and a filename (or a mapname for NIS; the filename is the root of the database path, --- 4335,4341 ---- and the third requires that .i sendmail be compiled with NIS support. ! All four accept as arguments the same optional flags and a filename (or a mapname for NIS; the filename is the root of the database path, *************** *** 4616,4622 **** know exactly where each network connection is, possibly including the names of each host on that network. As long as the site remains small ! and the the configuration remains relatively static, the update problem will probably not be too great. .sh 4 "Single host" .pp --- 4686,4692 ---- know exactly where each network connection is, possibly including the names of each host on that network. As long as the site remains small ! and the configuration remains relatively static, the update problem will probably not be too great. .sh 4 "Single host" .pp *************** *** 4944,4951 **** .i "if and only if" the .q C ! flag is defined in the mailer corresponding to ! .q eric@vangogh.CS.Berkeley.EDU. .pp Other flags are described in Appendix C. --- 5014,5023 ---- .i "if and only if" the .q C ! flag is defined in the mailer resolved to ! by running ! .q eric@vangogh.CS.Berkeley.EDU ! through rulesets 3 and 0. .pp Other flags are described in Appendix C. *************** *** 4998,5004 **** may be used. .pp Finally, ! an argv template is given as the E field. It may have embedded spaces. If there is no argv with a .b $u --- 5070,5076 ---- may be used. .pp Finally, ! an argv template is given as the A field. It may have embedded spaces. If there is no argv with a .b $u *************** *** 5175,5181 **** .q maildrop is found for the user, but no corresponding ! .q maildrop record exists, the record .q :default:mailname --- 5247,5253 ---- .q maildrop is found for the user, but no corresponding ! .q mailname record exists, the record .q :default:mailname *************** *** 5310,5316 **** The load average type. Details are described below. .lp ! The are four built-in ways of computing the load average. .i Sendmail tries to auto-configure them based on imperfect guesses; you can select one using the --- 5382,5388 ---- The load average type. Details are described below. .lp ! The are several built-in ways of computing the load average. .i Sendmail tries to auto-configure them based on imperfect guesses; you can select one using the *************** *** 5332,5337 **** --- 5404,5411 ---- .ip LA_FLOAT The kernel stores the load average in the kernel as an array of double precision floats. + .ip LA_MACH + Use MACH-style load averages. .ip LA_SUBR Call the .i getloadavg *************** *** 6009,6015 **** However, for compatibility with RFC 822, you can set option `7' to get seven bit stripping. .pp ! Individual mailers can still produce seven bit out put using the `7' mailer flag. .sh 2 "User Database" .pp --- 6083,6089 ---- However, for compatibility with RFC 822, you can set option `7' to get seven bit stripping. .pp ! Individual mailers can still produce seven bit output using the `7' mailer flag. .sh 2 "User Database" .pp *************** *** 6517,6525 **** This produces a lot of data very quickly and should be used sparingly. .pp There are a number of options that may be specified as ! primitive flags ! (provided for compatibility with ! .i delivermail ). These are the e, i, m, and v options. Also, the f option --- 6591,6597 ---- This produces a lot of data very quickly and should be used sparingly. .pp There are a number of options that may be specified as ! primitive flags. These are the e, i, m, and v options. Also, the f option *************** *** 6803,6809 **** .\"Eric Allman .\"Britton-Lee, Inc. .\".sp ! .\"Version 8.26 .\".ce 0 .bp 2 .rs --- 6875,6881 ---- .\"Eric Allman .\"Britton-Lee, Inc. .\".sp ! .\"Version 8.32 .\".ce 0 .bp 2 .rs *** mailstats/mailstats.c.OLD Tue Jul 27 10:38:56 1993 --- mailstats/mailstats.c Mon Dec 27 17:07:17 1993 *************** *** 40,46 **** #endif /* not lint */ #ifndef lint ! static char sccsid[] = "@(#)mailstats.c 8.2 (Berkeley) 7/27/93"; #endif /* not lint */ #include --- 40,46 ---- #endif /* not lint */ #ifndef lint ! static char sccsid[] = "@(#)mailstats.c 8.3 (Berkeley) 12/27/93"; #endif /* not lint */ #include *************** *** 63,68 **** --- 63,69 ---- char *cfile; FILE *cfp; bool mnames; + long frmsgs = 0, frbytes = 0, tomsgs = 0, tobytes = 0; char mtable[MAXMAILERS][MNAMELEN+1]; char sfilebuf[100]; char buf[MAXLINE]; *************** *** 195,201 **** --- 196,209 ---- if (mnames) printf(" %s", mtable[i]); printf("\n"); + frmsgs += stat.stat_nf[i]; + frbytes += stat.stat_bf[i]; + tomsgs += stat.stat_nt[i]; + tobytes += stat.stat_bt[i]; } } + printf("========================================\n"); + printf(" T %6ld %10ldK %6ld %10ldK\n", + frmsgs, frbytes, tomsgs, tobytes); exit(EX_OK); } *** makemap/Makefile.dist.OLD Wed Dec 1 09:17:58 1993 --- makemap/Makefile.dist Sat Nov 27 09:07:40 1993 *************** *** 0 **** --- 1,81 ---- + # + # This Makefile is designed to work on the old "make" program. It does + # not use the obj subdirectory. It also does not install documentation + # automatically -- think of it as a quick start for sites that have the + # old make program (I recommend that you get and port the new make if you + # are going to be doing any signficant work on sendmail). + # + # @(#)Makefile.dist 8.2 (Berkeley) 11/27/93 + # + + # use O=-O (usual) or O=-g (debugging) + O= -O + + # location of sendmail source directory + SRCDIR= ../src + + # define the database mechanisms available for map & alias lookups: + # -DNDBM -- use new DBM + # -DNEWDB -- use new Berkeley DB + # The really old (V7) DBM library is no longer supported. + # + DBMDEF= -DNDBM -DNEWDB + + # environment definitions (e.g., -D_AIX3) + ENVDEF= + + # see also conf.h for additional compilation flags + + # include directories + INCDIRS=-I${SRCDIR} -I/usr/sww/include/db + + # loader options + LDOPTS= + + # library directories + LIBDIRS=-L/usr/sww/lib + + # libraries required on your system + LIBS= -ldb -ldbm + + # location of makemap binary (usually /usr/sbin or /usr/etc) + BINDIR= ${DESTDIR}/usr/sbin + + # additional .o files needed + OBJADD= + + ################### end of user configuration flags ###################### + + CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} + + OBJS= makemap.o ${OBJADD} + + LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq + BINOWN= bin + BINGRP= bin + BINMODE=555 + + ALL= makemap makemap.0 + + all: ${ALL} + + makemap: ${BEFORE} ${OBJS} + ${CC} -o makemap ${LDOPTS} ${OBJS} ${LIBDIRS} ${LIBS} + + makemap.0: makemap.8 + nroff -h -mandoc makemap.8 > makemap.0 + + install: install-makemap install-docs + + install-makemap: makemap + install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} makemap ${BINDIR} + + # doesn't actually install them -- you may want to install pre-nroff versions + install-docs: makemap.0 + + clean: + rm -f ${OBJS} makemap makemap.0 + + # dependencies + # gross overkill, and yet still not quite enough.... + ${OBJS}: ${SRCDIR}/conf.h *** makemap/makemap.c.OLD Mon Nov 22 11:26:28 1993 --- makemap/makemap.c Mon Nov 22 11:44:10 1993 *************** *** 33,39 **** */ #ifndef lint ! static char sccsid[] = "@(#)makemap.c 8.5 (Berkeley) 9/22/93"; #endif /* not lint */ #include --- 33,39 ---- */ #ifndef lint ! static char sccsid[] = "@(#)makemap.c 8.6 (Berkeley) 11/22/93"; #endif /* not lint */ #include *************** *** 262,269 **** */ p = strchr(ibuf, '\n'); ! if (*p != '\0') *p = '\0'; if (ibuf[0] == '\0' || ibuf[0] == '#') continue; if (isspace(ibuf[0])) --- 262,276 ---- */ p = strchr(ibuf, '\n'); ! if (p != NULL) *p = '\0'; + else if (!feof(stdin)) + { + fprintf(stderr, "%s: %s: line %d: line too long (%d bytes max)\n", + progname, mapname, lineno, sizeof ibuf); + continue; + } + if (ibuf[0] == '\0' || ibuf[0] == '#') continue; if (isspace(ibuf[0])) *** praliases/Makefile.dist.OLD Wed Dec 1 09:18:02 1993 --- praliases/Makefile.dist Sat Nov 27 09:07:26 1993 *************** *** 0 **** --- 1,81 ---- + # + # This Makefile is designed to work on the old "make" program. It does + # not use the obj subdirectory. It also does not install documentation + # automatically -- think of it as a quick start for sites that have the + # old make program (I recommend that you get and port the new make if you + # are going to be doing any signficant work on sendmail). + # + # @(#)Makefile.dist 8.1 (Berkeley) 11/27/93 + # + + # use O=-O (usual) or O=-g (debugging) + O= -O + + # location of sendmail source directory + SRCDIR= ../src + + # define the database mechanisms available for map & alias lookups: + # -DNDBM -- use new DBM + # -DNEWDB -- use new Berkeley DB + # The really old (V7) DBM library is no longer supported. + # + DBMDEF= -DNDBM -DNEWDB + + # environment definitions (e.g., -D_AIX3) + ENVDEF= + + # see also conf.h for additional compilation flags + + # include directories + INCDIRS=-I${SRCDIR} -I/usr/sww/include/db + + # loader options + LDOPTS= + + # library directories + LIBDIRS=-L/usr/sww/lib + + # libraries required on your system + LIBS= -ldb -ldbm + + # location of praliases binary (usually /usr/sbin or /usr/etc) + BINDIR= ${DESTDIR}/usr/sbin + + # additional .o files needed + OBJADD= + + ################### end of user configuration flags ###################### + + CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} + + OBJS= praliases.o ${OBJADD} + + LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq + BINOWN= bin + BINGRP= bin + BINMODE=555 + + ALL= praliases praliases.0 + + all: ${ALL} + + praliases: ${BEFORE} ${OBJS} + ${CC} -o praliases ${LDOPTS} ${OBJS} ${LIBDIRS} ${LIBS} + + praliases.0: praliases.8 + nroff -h -mandoc praliases.8 > praliases.0 + + install: install-praliases install-docs + + install-praliases: praliases + install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} praliases ${BINDIR} + + # doesn't actually install them -- you may want to install pre-nroff versions + install-docs: praliases.0 + + clean: + rm -f ${OBJS} praliases praliases.0 + + # dependencies + # gross overkill, and yet still not quite enough.... + ${OBJS}: ${SRCDIR}/conf.h *** src/Makefile.OLD Sun Aug 15 06:43:09 1993 --- src/Makefile Mon Dec 20 10:52:10 1993 *************** *** 1,4 **** ! # @(#)Makefile 8.2 (Berkeley) 8/15/93 PROG= sendmail --- 1,4 ---- ! # @(#)Makefile 8.3 (Berkeley) 12/20/93 PROG= sendmail *************** *** 34,40 **** beforeinstall: # install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ # ${DESTDIR}/etc/sendmail.fc ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${DESTDIR}/var/log/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${.CURDIR}/sendmail.hf \ ${DESTDIR}/usr/share/misc --- 34,40 ---- beforeinstall: # install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ # ${DESTDIR}/etc/sendmail.fc ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${DESTDIR}/var/log/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${.CURDIR}/sendmail.hf \ ${DESTDIR}/usr/share/misc *** src/Makefile.386BSD.OLD Sat Dec 18 11:20:32 1993 --- src/Makefile.386BSD Sat Dec 18 11:21:07 1993 *************** *** 34,40 **** beforeinstall: # install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ # ${DESTDIR}/etc/sendmail.fc ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${DESTDIR}/var/log/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${.CURDIR}/sendmail.hf \ ${DESTDIR}/usr/share/misc --- 34,40 ---- beforeinstall: # install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ # ${DESTDIR}/etc/sendmail.fc ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${DESTDIR}/var/log/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${.CURDIR}/sendmail.hf \ ${DESTDIR}/usr/share/misc *** src/Makefile.AIX.OLD Wed Dec 1 19:08:02 1993 --- src/Makefile.AIX Mon Jan 3 07:06:46 1994 *************** *** 5,11 **** # old make program (I recommend that you get and port the new make if you # are going to be doing any signficant work on sendmail). # ! # This has been tested on AIX 3.1.5. # # use O=-O (usual) or O=-g (debugging) --- 5,11 ---- # old make program (I recommend that you get and port the new make if you # are going to be doing any signficant work on sendmail). # ! # This has been tested on AIX 3.1.5 and 3.2.3e. # # use O=-O (usual) or O=-g (debugging) *************** *** 19,24 **** --- 19,27 ---- # See READ_ME for a description of how these flags interact. # DBMDEF= -DNDBM -DNEWDB + # + # If you did not install the NEWDB on your AIX platform, use: + #DBMDEF=-DNDBM # environment definitions (e.g., -D_AIX3) ENVDEF= -D_AIX3 *************** *** 33,38 **** --- 36,44 ---- # libraries required on your system LIBS= -ldbm -ldb + # + # If you did not install the NEWDB on your AIX platform, use: + #LIBS= -ldbm # location of sendmail binary (usually /usr/sbin or /usr/lib) BINDIR= ${DESTDIR}/usr/sbin *************** *** 41,51 **** STDIR= ${DESTDIR}/var/log # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) ! HFDIR= ${DESTDIR}/usr/share/misc # additional .o files needed OBJADD= ################### end of user configuration flags ###################### CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} --- 47,59 ---- STDIR= ${DESTDIR}/var/log # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) ! HFDIR= ${DESTDIR}/usr/lib # additional .o files needed OBJADD= + INSTALL=/usr/ucb/install + ################### end of user configuration flags ###################### CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} *************** *** 80,90 **** install: install-sendmail install-docs install-sendmail: sendmail ! install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st ! install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} # doesn't actually install them -- you may want to install pre-nroff versions install-docs: aliases.0 newaliases.0 sendmail.0 --- 88,98 ---- install: install-sendmail install-docs install-sendmail: sendmail ! ${INSTALL} -O ${BINOWN} -G ${BINGRP} -M ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! ${INSTALL} -c -O ${BINOWN} -G ${BINGRP} -M 644 /dev/null \ ${STDIR}/sendmail.st ! ${INSTALL} -c -O ${BINOWN} -G ${BINGRP} -M 444 sendmail.hf ${HFDIR} # doesn't actually install them -- you may want to install pre-nroff versions install-docs: aliases.0 newaliases.0 sendmail.0 *** src/Makefile.AUX.OLD Sat Dec 18 11:20:32 1993 --- src/Makefile.AUX Sat Dec 18 11:21:12 1993 *************** *** 85,91 **** install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do ; rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 85,91 ---- install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do ; rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.BSD43.OLD Fri Nov 12 06:21:16 1993 --- src/Makefile.BSD43 Sat Dec 18 11:21:16 1993 *************** *** 33,39 **** #LIBDIRS=-L/usr/sww/lib # libraries required on your system ! LIBS= -ldbm -lresolv # location of sendmail binary (usually /usr/sbin or /usr/lib) BINDIR= ${DESTDIR}/usr/lib --- 33,39 ---- #LIBDIRS=-L/usr/sww/lib # libraries required on your system ! LIBS= -ldbm -lresolv -ll # location of sendmail binary (usually /usr/sbin or /usr/lib) BINDIR= ${DESTDIR}/usr/lib *************** *** 48,54 **** OBJADD= # additional pseudo-sources needed ! BEFORE= unistd.h stddef.h stdlib.h ################### end of user configuration flags ###################### --- 48,54 ---- OBJADD= # additional pseudo-sources needed ! BEFORE= unistd.h stddef.h stdlib.h dirent.h sys/time.h ################### end of user configuration flags ###################### *************** *** 72,80 **** sendmail: ${BEFORE} ${OBJS} ${CC} -o sendmail ${OBJS} ${LIBDIRS} ${LIBS} ! unistd.h stddef.h stdlib.h: cp /dev/null $@ aliases.0: aliases.5 nroff -h -mandoc aliases.5 > aliases.0 --- 72,89 ---- sendmail: ${BEFORE} ${OBJS} ${CC} -o sendmail ${OBJS} ${LIBDIRS} ${LIBS} ! unistd.h stddef.h stdlib.h sys/time.h: cp /dev/null $@ + sys/time.h: sys + + sys: + mkdir sys + + dirent.h: + echo "#include " > dirent.h + echo "#define dirent direct" >> dirent.h + aliases.0: aliases.5 nroff -h -mandoc aliases.5 > aliases.0 *************** *** 89,95 **** install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 98,104 ---- install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.BSDI.OLD Sat Dec 18 11:20:32 1993 --- src/Makefile.BSDI Sat Dec 18 11:21:18 1993 *************** *** 82,88 **** install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do (rm -f $$i; ln -s ${BINDIR}/sendmail $$i); done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 82,88 ---- install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do (rm -f $$i; ln -s ${BINDIR}/sendmail $$i); done ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.ConvexOS.OLD Sat Dec 18 11:20:32 1993 --- src/Makefile.ConvexOS Sat Dec 18 11:21:21 1993 *************** *** 83,89 **** install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 83,89 ---- install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.DGUX.OLD Sat Nov 27 09:28:17 1993 --- src/Makefile.DGUX Sat Dec 18 11:21:23 1993 *************** *** 0 **** --- 1,94 ---- + # + # Tested on DG/UX 5.4.2 by A. Bryan Curnutt . + # + + # use O=-O (usual) or O=-g (debugging) + O= -O + + # define the database mechanisms available for map & alias lookups: + # -DNDBM -- use new DBM + # -DNEWDB -- use new Berkeley DB + # -DNIS -- include NIS support + # The really old (V7) DBM library is no longer supported. + # See READ_ME for a description of how these flags interact. + # + DBMDEF= -DNDBM -DNIS + + # environment definitions (e.g., -D_AIX3) + ENVDEF=-DDGUX + + # see also conf.h for additional compilation flags + + # include directories + INCDIRS=-I/usr/sww/include/db + + # loader options + LDOPTS= + + # library directories + LIBDIRS=-L/usr/sww/lib + + # libraries required on your system + LIBS= -ldbm + + # location of sendmail binary (usually /usr/sbin or /usr/lib) + BINDIR= ${DESTDIR}/usr/bin + + # location of sendmail.st file (usually /var/log or /usr/lib) + STDIR= ${DESTDIR}/usr/lib + + # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) + HFDIR= ${DESTDIR}/etc + + # additional .o files needed + OBJADD= + + ################### end of user configuration flags ###################### + + CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} + + OBJS= alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \ + deliver.o domain.o envelope.o err.o headers.o macro.o main.o \ + map.o mci.o parseaddr.o queue.o readcf.o recipient.o \ + savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ + trace.o udb.o usersmtp.o util.o version.o ${OBJADD} + + LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq + BINOWN= root + BINGRP= bin + BINMODE=6555 + + ALL= sendmail aliases.0 newaliases.0 sendmail.0 + + all: ${ALL} + + sendmail: ${BEFORE} ${OBJS} + ${CC} -o sendmail ${LDOPTS} ${OBJS} ${LIBDIRS} ${LIBS} + + aliases.0: aliases.5 + nroff -h -mandoc aliases.5 > aliases.0 + + newaliases.0: newaliases.1 + nroff -h -mandoc newaliases.1 > newaliases.0 + + sendmail.0: sendmail.8 + nroff -h -mandoc sendmail.8 > sendmail.0 + + install: install-sendmail install-docs + + install-sendmail: sendmail + install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} + for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done + install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + ${STDIR}/sendmail.st + install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} + + # doesn't actually install them -- you may want to install pre-nroff versions + install-docs: aliases.0 newaliases.0 sendmail.0 + + clean: + rm -f ${OBJS} sendmail aliases.0 newaliases.0 sendmail.0 + + # dependencies + # gross overkill, and yet still not quite enough.... + ${OBJS}: sendmail.h conf.h *** src/Makefile.Dell.OLD Sat Dec 18 05:08:30 1993 --- src/Makefile.Dell Wed Dec 22 04:39:02 1993 *************** *** 10,20 **** # work on other SVR4 ports. # # use O=-O (usual) or O=-g (debugging) ! O= -O CC= gcc ! DESTDIR=/usr/local/sendmail # define the database mechanism used for alias lookups: # -DNDBM -- use new DBM --- 10,23 ---- # work on other SVR4 ports. # + # make sure the shell constructs below use the right shell + SHELL= /bin/sh + # use O=-O (usual) or O=-g (debugging) ! O= -O2 CC= gcc ! #DESTDIR=/usr/local/sendmail # define the database mechanism used for alias lookups: # -DNDBM -- use new DBM *************** *** 26,32 **** DBMDEF= -DNEWDB -DNDBM # environment definitions (e.g., -D_AIX3) ! ENVDEF= -DDELL_SVR4 # see also conf.h for additional compilation flags --- 29,35 ---- DBMDEF= -DNEWDB -DNDBM # environment definitions (e.g., -D_AIX3) ! ENVDEF= -D__svr4__ # see also conf.h for additional compilation flags *************** *** 40,52 **** LIBS= -ldb -ldbm -lresolv -lsocket -lnsl -lelf # location of sendmail binary (usually /usr/sbin or /usr/lib) ! BINDIR= ${DESTDIR}/bin # location of sendmail.st file (usually /var/log or /usr/lib) ! STDIR= ${DESTDIR}/etc # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) ! HFDIR= ${DESTDIR}/etc # additional .o files needed OBJADD= --- 43,55 ---- LIBS= -ldb -ldbm -lresolv -lsocket -lnsl -lelf # location of sendmail binary (usually /usr/sbin or /usr/lib) ! BINDIR= ${DESTDIR}/usr/ucblib # location of sendmail.st file (usually /var/log or /usr/lib) ! STDIR= ${DESTDIR}/usr/ucblib # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) ! HFDIR= ${DESTDIR}/usr/ucblib # additional .o files needed OBJADD= *************** *** 63,69 **** LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq BINOWN= root ! BINGRP= sys BINMODE=6555 INSTALL=/usr/ucb/install --- 66,72 ---- LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq BINOWN= root ! BINGRP= mail BINMODE=6555 INSTALL=/usr/ucb/install *************** *** 88,94 **** install-sendmail: sendmail ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 91,97 ---- install-sendmail: sendmail ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.Dynix.OLD Sat Nov 27 14:23:38 1993 --- src/Makefile.Dynix Sat Dec 18 11:21:27 1993 *************** *** 0 **** --- 1,106 ---- + # + # Tested on Dynix 3.2.0. + # + # From Jim Davis . + # + # ``There is no strtol in libc (well there is in the 'att universe' + # libc, but I couldn't figure out how to link that in), so I + # got the Chris Torek strtol.c from bsd-sources on uunet and + # compiled that. There is no native ndbm either; I couldn't + # get db 1.72 to pass it's regression test, so I used gdbm-1.7 + # instead. I compiled it with gcc 1.40a. The -lseq is to pick + # up getopt.'' + # + + CC= gcc + + # use O=-O (usual) or O=-g (debugging) + O= -O -g + + # define the database mechanisms available for map & alias lookups: + # -DNDBM -- use new DBM + # -DNEWDB -- use new Berkeley DB + # -DNIS -- include NIS support + # The really old (V7) DBM library is no longer supported. + # See READ_ME for a description of how these flags interact. + # + DBMDEF= -DNDBM + + # environment definitions (e.g., -D_AIX3) + ENVDEF= + + # see also conf.h for additional compilation flags + + # include directories + INCDIRS= + + # loader options + LDOPTS= + + # library directories + LIBDIRS= + + # libraries required on your system + LIBS= -lseq -lgdbm + + # location of sendmail binary (usually /usr/sbin or /usr/lib) + BINDIR= ${DESTDIR}/usr/lib + + # location of sendmail.st file (usually /var/log or /usr/lib) + STDIR= ${DESTDIR}/usr/lib + + # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) + HFDIR= ${DESTDIR}/usr/lib + + # additional .o files needed + OBJADD=strtol.o + + ################### end of user configuration flags ###################### + + CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} + + OBJS= alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \ + deliver.o domain.o envelope.o err.o headers.o macro.o main.o \ + map.o mci.o parseaddr.o queue.o readcf.o recipient.o \ + savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ + trace.o udb.o usersmtp.o util.o version.o ${OBJADD} + + LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq + BINOWN= root + BINGRP= staff # no kmem group, + BINMODE=4555 # so not setgid + + ALL= sendmail aliases.0 newaliases.0 sendmail.0 + + all: ${ALL} + + sendmail: ${BEFORE} ${OBJS} + ${CC} -o sendmail ${LDOPTS} ${OBJS} ${LIBDIRS} ${LIBS} + + aliases.0: aliases.5 + nroff -h -mandoc aliases.5 > aliases.0 + + newaliases.0: newaliases.1 + nroff -h -mandoc newaliases.1 > newaliases.0 + + sendmail.0: sendmail.8 + nroff -h -mandoc sendmail.8 > sendmail.0 + + install: install-sendmail install-docs + + install-sendmail: sendmail + install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} + for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done + install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + ${STDIR}/sendmail.st + install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} + + # doesn't actually install them -- you may want to install pre-nroff versions + install-docs: aliases.0 newaliases.0 sendmail.0 + + clean: + rm -f ${OBJS} sendmail aliases.0 newaliases.0 sendmail.0 + + # dependencies + # gross overkill, and yet still not quite enough.... + ${OBJS}: sendmail.h conf.h *** src/Makefile.FreeBSD.OLD Wed Dec 1 09:21:27 1993 --- src/Makefile.FreeBSD Sat Dec 18 11:21:31 1993 *************** *** 0 **** --- 1,49 ---- + # + # Makefile for FreeBSD + # + # @(#)Makefile 8.2 (Berkeley) 8/15/93 + + PROG= sendmail + + # define the database format to use for aliases et al. Can be -DNEWDB (for + # the new BSD database package -- this is preferred) or -DNDBM for the NDBM + # database package. The old putrescent V7 DBM package is no longer + # supported. + # You can define both NEWDB and NDBM during a transition period; old + # databases are read, but the new format will be used on any rebuilds. On + # really gnarly systems, you can set this to null; it will crawl like a high + # spiral snail, but it will work. + DBMDEF= -DNEWDB + + # FreeBSD 1.0 RELEASE has uname(2) now. Use -DUSEUNAME in order to use it. + CFLAGS+=-I${.CURDIR} ${DBMDEF} -DMIME -DUSEUNAME + + SRCS= alias.c arpadate.c clock.c collect.c conf.c convtime.c daemon.c \ + deliver.c domain.c envelope.c err.c headers.c macro.c main.c map.c \ + mci.c parseaddr.c queue.c readcf.c recipient.c savemail.c srvrsmtp.c \ + stab.c stats.c sysexits.c trace.c udb.c usersmtp.c \ + util.c version.c + DPADD= + LDADD= $(LIBUTIL) + # + # FreeBSD 1.0 RELEASE has GNU man and doesn't need preformatted man pages anymore + # + MAN1= newaliases.1 + MAN5= aliases.5 + MAN8= sendmail.8 + LINKS= /usr/sbin/sendmail /usr/bin/newaliases \ + /usr/sbin/sendmail /usr/bin/mailq + BINDIR= /usr/sbin + BINOWN= root + BINGRP= kmem + BINMODE=6555 + + beforeinstall: + # install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + # ${DESTDIR}/etc/sendmail.fc + install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + ${DESTDIR}/var/log/sendmail.st + install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${.CURDIR}/sendmail.hf \ + ${DESTDIR}/usr/share/misc + + .include *** src/Makefile.HP-UX.OLD Sat Dec 18 11:20:33 1993 --- src/Makefile.HP-UX Tue Jan 4 08:00:44 1994 *************** *** 39,45 **** BINDIR= ${DESTDIR}/usr/lib # location of sendmail.st file (usually /var/log or /usr/lib) ! STDIR= ${DESTDIR}/var/log # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) HFDIR= ${DESTDIR}/usr/lib --- 39,45 ---- BINDIR= ${DESTDIR}/usr/lib # location of sendmail.st file (usually /var/log or /usr/lib) ! STDIR= ${DESTDIR}/usr/lib # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) HFDIR= ${DESTDIR}/usr/lib *************** *** 58,66 **** savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ trace.o udb.o usersmtp.o util.o version.o ${OBJADD} ! LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq BINOWN= root ! BINGRP= sys BINMODE=6555 ALL= sendmail aliases.0 newaliases.0 sendmail.0 --- 58,66 ---- savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ trace.o udb.o usersmtp.o util.o version.o ${OBJADD} ! LINKS= ${DESTDIR}/usr/bin/newaliases ${DESTDIR}/usr/bin/mailq BINOWN= root ! BINGRP= mail BINMODE=6555 ALL= sendmail aliases.0 newaliases.0 sendmail.0 *************** *** 82,92 **** install: install-sendmail install-docs install-sendmail: sendmail ! install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ! ${STDIR}/sendmail.st ! install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} # doesn't actually install them -- you may want to install pre-nroff versions install-docs: aliases.0 newaliases.0 sendmail.0 --- 82,91 ---- install: install-sendmail install-docs install-sendmail: sendmail ! cpset sendmail ${BINDIR} ${BINMODE} ${BINOWN} ${BINGRP} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! cpset /dev/null ${STDIR}/sendmail.st 644 ${BINOWN} ${BINGRP} ! cpset sendmail.hf ${HFDIR} 444 ${BINOWN} ${BINGRP} # doesn't actually install them -- you may want to install pre-nroff versions install-docs: aliases.0 newaliases.0 sendmail.0 *** src/Makefile.IRIX.OLD Sat Dec 18 11:20:33 1993 --- src/Makefile.IRIX Sat Dec 18 11:21:35 1993 *************** *** 83,89 **** install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 83,89 ---- install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.Linux.OLD Thu Dec 9 13:44:34 1993 --- src/Makefile.Linux Mon Dec 20 05:53:18 1993 *************** *** 21,27 **** DBMDEF= -DNDBM # environment definitions (e.g., -D_AIX3) ! ENVDEF= -D__USE_BSD -U__USE_POSIX2 # see also conf.h for additional compilation flags --- 21,27 ---- DBMDEF= -DNDBM # environment definitions (e.g., -D_AIX3) ! ENVDEF= -D__USE_BSD # see also conf.h for additional compilation flags *************** *** 47,53 **** OBJADD= # additional pseudo-sources needed ! BEFORE= ################### end of user configuration flags ###################### --- 47,53 ---- OBJADD= # additional pseudo-sources needed ! BEFORE= features.h ################### end of user configuration flags ###################### *************** *** 59,65 **** savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ trace.o udb.o usersmtp.o util.o version.o ${OBJADD} ! LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq BINOWN= root BINGRP= kmem BINMODE=6555 --- 59,65 ---- savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ trace.o udb.o usersmtp.o util.o version.o ${OBJADD} ! LINKS= ${DESTDIR}/usr/bin/newaliases ${DESTDIR}/usr/bin/mailq BINOWN= root BINGRP= kmem BINMODE=6555 *************** *** 78,83 **** --- 78,86 ---- echo "#include " > dirent.h echo "#define dirent direct" >> dirent.h + features.h: + ln features.linux.h $@ + NROFF= nroff aliases.0: aliases.5 *************** *** 94,100 **** install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 97,103 ---- install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.Mach386.OLD Wed Dec 1 09:21:19 1993 --- src/Makefile.Mach386 Sat Dec 18 11:21:41 1993 *************** *** 0 **** --- 1,102 ---- + # + # This Makefile is designed to work on the old "make" program. It does + # not use the obj subdirectory. It also does not install documentation + # automatically -- think of it as a quick start for sites that have the + # old make program (I recommend that you get and port the new make if you + # are going to be doing any signficant work on sendmail). + # + # @(#)Makefile.dist 8.7 (Berkeley) 9/3/93 + # + + CC= gcc + + # use O=-O (usual) or O=-g (debugging) + O= -O + + # define the database mechanisms available for map & alias lookups: + # -DNDBM -- use new DBM + # -DNEWDB -- use new Berkeley DB + # -DNIS -- include NIS support + # The really old (V7) DBM library is no longer supported. + # See READ_ME for a description of how these flags interact. + # + DBMDEF= -DNDBM + + # environment definitions (e.g., -D_AIX3) + ENVDEF= + + # see also conf.h for additional compilation flags + + # include directories + INCDIRS= + + # loader options + LDOPTS= + + # library directories + LIBDIRS= + + # libraries required on your system + LIBS= -ldbm + + # location of sendmail binary (usually /usr/sbin or /usr/lib) + BINDIR= ${DESTDIR}/usr/lib + + # location of sendmail.st file (usually /var/log or /usr/lib) + STDIR= ${DESTDIR}/usr/lib + + # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) + HFDIR= ${DESTDIR}/usr/lib + + # additional .o files needed + OBJADD= + + ################### end of user configuration flags ###################### + + CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} + + OBJS= alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \ + deliver.o domain.o envelope.o err.o headers.o macro.o main.o \ + map.o mci.o parseaddr.o queue.o readcf.o recipient.o \ + savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ + trace.o udb.o usersmtp.o util.o version.o ${OBJADD} + + LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq + BINOWN= root + BINGRP= kmem + BINMODE=6555 + + ALL= sendmail aliases.0 newaliases.0 sendmail.0 + + all: ${ALL} + + sendmail: ${BEFORE} ${OBJS} + ${CC} -o sendmail ${LDOPTS} ${OBJS} ${LIBDIRS} ${LIBS} + + aliases.0: aliases.5 + nroff -h -mandoc aliases.5 > aliases.0 + + newaliases.0: newaliases.1 + nroff -h -mandoc newaliases.1 > newaliases.0 + + sendmail.0: sendmail.8 + nroff -h -mandoc sendmail.8 > sendmail.0 + + install: install-sendmail install-docs + + install-sendmail: sendmail + install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} + for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done + install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + ${STDIR}/sendmail.st + install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} + + # doesn't actually install them -- you may want to install pre-nroff versions + install-docs: aliases.0 newaliases.0 sendmail.0 + + clean: + rm -f ${OBJS} sendmail aliases.0 newaliases.0 sendmail.0 + + # dependencies + # gross overkill, and yet still not quite enough.... + ${OBJS}: sendmail.h conf.h *** src/Makefile.NeXT.OLD Sat Dec 18 11:20:33 1993 --- src/Makefile.NeXT Sun Dec 26 07:56:13 1993 *************** *** 21,27 **** DBMDEF= -DNDBM # environment definitions (e.g., -D_AIX3) ! ENVDEF= -DNeXT # see also conf.h for additional compilation flags --- 21,27 ---- DBMDEF= -DNDBM # environment definitions (e.g., -D_AIX3) ! ENVDEF= -DNeXT -DNETINFO # see also conf.h for additional compilation flags *************** *** 92,98 **** install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 666 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} --- 92,98 ---- install-sendmail: sendmail install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done ! install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ ${STDIR}/sendmail.st install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} *** src/Makefile.NetBSD.OLD Fri Dec 10 06:25:31 1993 --- src/Makefile.NetBSD Mon Jan 10 07:29:03 1994 *************** *** 0 **** --- 1,48 ---- + # + # NetBSD Makefile + # + + # @(#)Makefile 8.2 (Berkeley) 8/15/93 + + PROG= sendmail + + # define the database format to use for aliases et al. Can be -DNEWDB (for + # the new BSD database package -- this is preferred) or -DNDBM for the NDBM + # database package. The old putrescent V7 DBM package is no longer + # supported. + # You can define both NEWDB and NDBM during a transition period; old + # databases are read, but the new format will be used on any rebuilds. On + # really gnarly systems, you can set this to null; it will crawl like a high + # spiral snail, but it will work. + DBMDEF= -DNEWDB -DNDBM + + #nasty warning about gcc 2.4.x caused bugs + CFLAGS=-I${.CURDIR} ${DBMDEF} -DNETISO + #CFLAGS+=-I${.CURDIR} ${DBMDEF} -DNETISO + + SRCS= alias.c arpadate.c clock.c collect.c conf.c convtime.c daemon.c \ + deliver.c domain.c envelope.c err.c headers.c macro.c main.c map.c \ + mci.c parseaddr.c queue.c readcf.c recipient.c savemail.c srvrsmtp.c \ + stab.c stats.c sysexits.c trace.c udb.c usersmtp.c \ + util.c version.c + DPADD= $(LIBUTIL) + LDADD= -lutil + MAN1= newaliases.0 + MAN5= aliases.0 + MAN8= sendmail.0 + LINKS= /usr/sbin/sendmail /usr/bin/newaliases \ + /usr/sbin/sendmail /usr/bin/mailq + BINDIR= /usr/sbin + BINOWN= root + BINGRP= kmem + BINMODE=6555 + + beforeinstall: + # install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + # ${DESTDIR}/etc/sendmail.fc + install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + ${DESTDIR}/var/log/sendmail.st + install -c -o ${BINOWN} -g ${BINGRP} -m 444 ${.CURDIR}/sendmail.hf \ + ${DESTDIR}/usr/share/misc + + .include *** src/Makefile.OSF1.OLD Sun Nov 7 10:38:01 1993 --- src/Makefile.OSF1 Sat Dec 18 11:22:23 1993 *************** *** 29,35 **** INCDIRS=-I/usr/sww/include/db # library directories ! LIBDIRS=-L/usr/sww/lib # libraries required on your system LIBS= -ldbm --- 29,35 ---- INCDIRS=-I/usr/sww/include/db # library directories ! LIBDIRS=-L/usr/sww/lib -L/usr/shlib -L/usr/lib # libraries required on your system LIBS= -ldbm *************** *** 47,53 **** OBJADD= # additional link flags ! LDADD= -non_shared ################### end of user configuration flags ###################### --- 47,53 ---- OBJADD= # additional link flags ! #LDADD= -non_shared ################### end of user configuration flags ###################### *************** *** 69,75 **** all: ${ALL} sendmail: ${BEFORE} ${OBJS} ! ${CC} -o sendmail ${LDFLAGS} ${OBJS} ${LIBDIRS} ${LIBS} aliases.0: aliases.5 nroff -h -mandoc aliases.5 > aliases.0 --- 69,75 ---- all: ${ALL} sendmail: ${BEFORE} ${OBJS} ! ${CC} -o sendmail ${LDADD} ${OBJS} ${LIBDIRS} ${LIBS} aliases.0: aliases.5 nroff -h -mandoc aliases.5 > aliases.0 *************** *** 86,93 **** installbsd -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done cp /dev/null ${STDIR}/sendmail.st ! chmod ${BINMOD} ${STDIR}/sendmail.st ! chown ${BINGRP}.${BINGRP} ${STDIR}/sendmail.st installbsd -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} rm -f /usr/sbin/smtpd --- 86,93 ---- installbsd -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done cp /dev/null ${STDIR}/sendmail.st ! chmod 644 ${STDIR}/sendmail.st ! chown ${BINOWN}.${BINGRP} ${STDIR}/sendmail.st installbsd -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} rm -f /usr/sbin/smtpd *** src/Makefile.RISCos.OLD Wed Dec 1 09:08:32 1993 --- src/Makefile.RISCos Sat Dec 18 11:22:27 1993 *************** *** 0 **** --- 1,110 ---- + # + # This Makefile is designed to work on the old "make" program. It does + # not use the obj subdirectory. It also does not install documentation + # automatically -- think of it as a quick start for sites that have the + # old make program (I recommend that you get and port the new make if you + # are going to be doing any signficant work on sendmail). + # + # For Mips RISC/os 4.52. + # + + # use O=-O (usual) or O=-g (debugging) + O= -O + + # be sure we are compiling in BSD mode + CC= cc -systype bsd43 + + # define the database mechanism used for alias lookups: + # -DNDBM -- use new DBM + # -DNEWDB -- use new Berkeley DB + # -DNIS -- include NIS support + # The really old (V7) DBM library is no longer supported. + # See READ_ME for a description of how these flags interact. + # + DBMDEF= -DNDBM + + # environment definitions (e.g., -D_AIX3) + ENVDEF= -DRISCOS -Olimit 800 + + # see also conf.h for additional compilation flags + + # include directories + #INCDIRS=-I/usr/sww/include/db + + # library directories + #LIBDIRS=-L/usr/sww/lib + + # libraries required on your system + LIBS= -lmld + + # location of sendmail binary (usually /usr/sbin or /usr/lib) + BINDIR= ${DESTDIR}/usr/lib + + # location of sendmail.st file (usually /var/log or /usr/lib) + STDIR= ${DESTDIR}/etc + + # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) + HFDIR= ${DESTDIR}/usr/lib + + # additional .o files needed + OBJADD= + + # additional pseudo-sources needed + BEFORE= stdlib.h dirent.h + + ################### end of user configuration flags ###################### + + CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} + + OBJS= alias.o arpadate.o clock.o collect.o conf.o convtime.o daemon.o \ + deliver.o domain.o envelope.o err.o headers.o macro.o main.o \ + map.o mci.o parseaddr.o queue.o readcf.o recipient.o \ + savemail.o srvrsmtp.o stab.o stats.o sysexits.o \ + trace.o udb.o usersmtp.o util.o version.o ${OBJADD} + + LINKS= ${DESTDIR}/usr/ucb/newaliases ${DESTDIR}/usr/ucb/mailq + BINOWN= root + BINGRP= kmem + BINMODE=6555 + + ALL= sendmail aliases.0 newaliases.0 sendmail.0 + + all: ${ALL} + + sendmail: ${BEFORE} ${OBJS} + ${CC} -o sendmail ${OBJS} ${LIBDIRS} ${LIBS} + + stdlib.h: + cp /dev/null $@ + + dirent.h: + echo "#include " > dirent.h + echo "#define dirent direct" >> dirent.h + + aliases.0: aliases.5 + nroff -h -mandoc aliases.5 > aliases.0 + + newaliases.0: newaliases.1 + nroff -h -mandoc newaliases.1 > newaliases.0 + + sendmail.0: sendmail.8 + nroff -h -mandoc sendmail.8 > sendmail.0 + + install: install-sendmail install-docs + + install-sendmail: sendmail + install -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} sendmail ${BINDIR} + for i in ${LINKS}; do rm -f $$i; ln -s ${BINDIR}/sendmail $$i; done + install -c -o ${BINOWN} -g ${BINGRP} -m 644 /dev/null \ + ${STDIR}/sendmail.st + install -c -o ${BINOWN} -g ${BINGRP} -m 444 sendmail.hf ${HFDIR} + + # doesn't actually install them -- you may want to install pre-nroff versions + install-docs: aliases.0 newaliases.0 sendmail.0 + + clean: + rm -f ${OBJS} sendmail aliases.0 newaliases.0 sendmail.0 + + # dependencies + # gross overkill, and yet still not quite enough.... + ${OBJS}: sendmail.h conf.h *** src/Makefile.SCO.OLD Sun Dec 12 20:33:12 1993 --- src/Makefile.SCO Sat Dec 18 11:22:31 1993 *************** *** 0 **** --- 1,97 ---- + # + # This Makefile is designed to work on the old "make" program. It does + # not use the obj subdirectory. It also does not install documentation + # automatically -- think of it as a quick start for sites that have the + # old make program (I recommend that you get and port the new make if you + # are going to be doing any signficant work on sendmail). + # + # This has been tested on SCO. + # + + # use O=-O (usual) or O=-g (debugging) + O= -O + + # define the database mechanisms available for map & alias lookups: + # -DNDBM -- use new DBM + # -DNEWDB -- use new Berkeley DB + # -DNIS -- include NIS support + # The really old (V7) DBM library is no longer supported. + # See READ_ME for a description of how these flags interact. + # + DBMDEF= + + # environment definitions (e.g., -D_AIX3) + ENVDEF= -D_SCO_unix_ + + # see also conf.h for additional compilation flags + + # include directories + INCDIRS= + + # library directories + LIBDIRS= + + # libraries required on your system + LIBS= -lsocket + + # location of sendmail binary (usually /usr/sbin or /usr/lib) + BINDIR= ${DESTDIR}/usr/lib + + # location of sendmail.st file (usually /var/log or /usr/lib) + STDIR= ${DESTDIR}/usr/lib + + # location of sendmail.hf file (usually /usr/share/misc or /usr/lib) + HFDIR= ${DESTDIR}/usr/lib + + # additional .o files needed + OBJADD= fsync.o + + ################### end of user configuration flags ###################### + + CFLAGS= -I. $O ${INCDIRS} ${DBMDEF} ${ENVDEF} +