[comp.mail.elm] The BCC proposal for Elm2.1

rob@pbhyf.PacBell.COM (Rob Bernardo) (08/20/88)

THE ISSUE:

Some mailing agents, like sendmail, will strip the bcc header line
out of outbound mail. Other mailing agents, like rmail, will not.

THE WAY IT WORKS UNDER ELM 2.1ALPHA AS INITIALLY RELEASED TO THE TESTERS:

Elm will prompt you for a bcc and allow you to enter one, only if
you are running sendmail or some other mail agent that will strip
the bcc line from the header of outbound mail. Rmail does not do this
stripping.

The way this happens is that when you run the configuration program
(which builds makefiles and some header files) if the configuration
program finds sendmail on your system it puts #define ALLOW_BCC
in a particular headerfile. Otherwise it doesn't. After running
the configuration program, but before you compile the source,
you could go in and insert the define manually. The code is
sprinkled with #ifdef ALLOW_BCC all over the place where
the bcc is prompted for, input, passed to a function, manipulated, etc.

WHAT I PROPOSE IS THIS:
Elm always allows you to enter a bcc, regardless of whether you
are running sendmail or some other mailing agent that can strip
the bcc header line. However if you are not running such a mailing
agent, elm will do the bcc-stripping itself before it executes
the mailing agent for the dispatch of the outbound mail, otherwise
it leaves it up to the mailing agent.

The way this happens is that when you run the configuration program
(which builds makefiles and some header files) if the configuration
program finds sendmail on your system it puts #define NO_STIP_BCC
in a particular headerfile. Otherwise it doesn't. After running
the configuration program, but before you compile the source,
you could go in and insert the define manually. The code has
a single #ifdef NO_STRIP_BCC in the one crucial place where
the header is built for outbound mail, just prior to being handed
off to the mailing agent.

The reason I have left it up to sendmail to do the bcc-stripping when
it's available rather than unconditionally having elm do the bcc-stripping,
is that I'd like to make the change on the conservative side and assume
there is a good reason for allowing sendmail to do the stripping. I don't have
sendmail at my site so I do not know.

BENEFITS OF THE CHANGE:

The change allows Elm to permit a fully functional bcc on all systems
regardless of the intelligence of the mailing agent.
-- 
Rob Bernardo, Pacific Bell UNIX Small Bus. Systems Development & Maintenance
Email:     ...![backbone]!pacbell!rob   OR  rob@PacBell.COM
Office:    (415) 823-2417  Room 4E750A, San Ramon Valley Administrative Center
Residence: (415) 827-4301  R Bar JB, Concord, California