Bug 19790

Summary: Cannot rebuild sendmail.cf without installing full source dist
Product: Base System Reporter: brett <brett>
Component: binAssignee: Gregory Neil Shapiro <gshapiro>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Unspecified   
Hardware: Any   
OS: Any   

Description brett 2000-07-09 02:40:01 UTC
The "binaries only" and "kernel sources only" distribution packages
provide a copy of Sendmail as well as the m4 macro processor, but are
missing the feature macros which allow one to recompile sendmail.cf.
This makes it difficult to turn on spam elimination and security
features as well as important header rewriting features.

The relevant files are in /usr/src/contrib/, which means that currently 
the only easy way to get them at install time is to install with full 
sources. This is likely to be a waste of disk space on a production 
mail server where no software development is done.

Fix: 

Recommended solution: Create a "cf" directory (in a place
such as /usr/src/contrib/sendmail, /etc/mail, /usr/local/etc/mail,
or /usr/local/etc/sendmail) where one can generate new 
sendmail.cf files in the usual fashion.
Comment 1 Sheldon Hearn freebsd_committer freebsd_triage 2000-07-10 13:29:34 UTC
State Changed
From-To: open->closed

The following is taken from the FreeBSD FAQ: 

( http://www.freebsd.org/FAQ/admin.html#UUCPMAIL ) 

If you didn't install your system with full sources, the sendmail 
config stuff has been broken out into a separate source distribution 
tarball just for you. Assuming you've got your CD-ROM mounted, do: 

# cd /cdrom/src 
# cat scontrib.?? | tar xzf - -C /usr/src contrib/sendmail
Comment 2 brett 2000-09-18 06:39:21 UTC
This is a followup to my earlier PR #19790. Sheldon H. closed the
PR and replied:

>The following is taken from the FreeBSD FAQ: 
>
>     ( http://www.freebsd.org/FAQ/admin.html#UUCPMAIL ) 
>
>     If you didn't install your system with full sources, the sendmail 
>     config stuff has been broken out into a separate source distribution 
>     tarball just for you. Assuming you've got your CD-ROM mounted, do: 
>
>     # cd /cdrom/src 
>     # cat scontrib.?? | tar xzf - -C /usr/src contrib/sendmail 

While it is a worthy cause to support the development of FreeBSD by buying
CD-ROMs, ownership of a disc should not be a requirement if one wants to 
reconfigure the system. Nor should devoting megabytes to a full source install. 
The majority of FreeBSD users install via the Internet, and many use snapshots 
(for which CD-ROMs are not available). Therefore, the above answer is not 
helpful in the majority of cases. Comments on the mailing lists 
support the notion that it is desirable to make the files required to 
rebuild sendmail.cf (at least freebsd.mc and the files necessary to process 
it, if not all of the examples) part of the base distribution because they 
are so fundamental to configuring the system for proper operation.

The fact that sendmail.cf resides in /etc/mail (not /usr/local/etc/mail),
and sendmail itself resides in /usr/sbin (not /usr/local/sbin) also suggests 
that sendmail is properly part of the base system. The ability to reconfigure 
Sendmail to reject spam, use smrsh and/or Procmail, etc. does not correlate
well with the need for complete source code and therefore should not require
full sources to have been installed. Nor should it require ownership of a
(possibly nonexistent) CD-ROM! Please reconsider making the necessary files
(at least freebsd.mc and the files required to process it) part of the base 
installation to save system administrators from unpleasant and time-consuming 
surprises.

--Brett Glass
Comment 3 brett 2000-09-18 08:26:41 UTC
By the way, it's also worth noting that the information at 

http://www.freebsd.org/FAQ/admin.html#UUCPMAIL

is inaccurate. FreeBSD's default .mc file is currently 
stored at /usr/src/etc/sendmail/freebsd.mc (see the top
of the default sendmail.cf). This directory (and therefore
the default .mc file) are not in the tarball.

So, obtaining and exploding the tarball is not sufficient 
to let the user copy the default .mc file, edit the copy,
and then rebuild and install from the same place. Currently, 
the path of least resistance is to install the full source 
distribution, but this is very wasteful if the machine does
not need full source.

--Brett Glass
Comment 4 Gregory Neil Shapiro freebsd_committer freebsd_triage 2000-09-18 17:18:42 UTC
State Changed
From-To: closed->open

I've been contacted regarding the issue and agree that this is an 
important change request.  The cf information should be put in an 
easily accessible location such as /usr/share/sendmail/.  Given the 
support questions we receive @sendmail.org, it's definitely an issue. 


Comment 5 Gregory Neil Shapiro freebsd_committer freebsd_triage 2000-09-18 17:18:42 UTC
Responsible Changed
From-To: freebsd-bugs->gshapiro

Give to sendmail maintainer
Comment 6 Gregory Neil Shapiro freebsd_committer freebsd_triage 2000-10-10 18:58:35 UTC
State Changed
From-To: open->closed

The sendmail cf directory is now copied to /usr/share/sendmail/cf/.