Commit Graph

21 Commits

Author SHA1 Message Date
christos 85c81c58a5 Jumbo mail patch from our anonymous user:
1) Use editline [optional]:
   Most of this code was borrowed from src/usr.bin/ftp.  It does the
   appropriate editing, history, and completion for all mail commands
   (from cmdtab[]) and also does editing on header strings ('~h' inside
   the mail editor).

2) '-B' flag:
   This will suppress the "To:" line passed to sendmail.  In most
   configurations it will lead to sendmail adding "To: undisclosed
   recipients;".  Currently, AFAIK mail requires at least one exposed
   recipient address.

3) Comments in rcfile:
   Currently, comments in .mailrc are only supported if the first
   (non-white) character on a line is '#' followed by white space,
   i.e., '#' is a 'nop' command.  This (trivial) patch allows the more
   normal/expected use of '#' as a comment character.  It does not
   respect quoting, so that might be an objection which I should fix.

4) Sendmail option editing:
   This adds the sendmail option string to the strings editable by the
   '~h' command within the mail editor.  Currently, you can only set
   this string from the command-line, which is particularly annoying
   when replying to mail.

5) Reply from:
   When replying to a message, grab the "To:" address from the message
   and, if there is only one such address and it does not match a list of
   allowed addresses (set in the "ReplyFrom" variable), pass it to
   sendmail as the "From:" address for the reply (with the '-f' option).
   I often make aliases for myself so that my primary address is not
   given out; if the alias gets out, I know who to blame.  Unfortunately,
   a reply to such a message would normally use the primary address
   without this patch.  A warning is displayed when this is going to
   happen so that it can be modified with '~h'.

6) CC and BCC lists:
   Allow '-c' and '-b' to accept white-space or ',' delimited lists.
   Currently, a white-space delimited list of addresses work, but a
   list of aliases will not get expanded.  For example, currently:

	mail -c "foo bar" christos

   will fail to send mail to 'foo' and 'bar' if these are mail aliases
   (in ~/.mailrc); sendmail aliases (in /etc/aliases) do work.

7) pipe command:
   This pipes the current message into a shell command.  I use this for
   quick decoding of uuencoded mail, but I can imagine it might be
   useful for decrypting encrypted mail, too.

8) show command:
   This command takes a list of variables and shows their values.  It
   is probably stupid as the 'set' command without any argument
   displays all variable values.  Of course, if there are a lot of
   variables you have to sift through the list for the one(s) you want.
2006-09-18 19:46:21 +00:00
ghen 3da129c2c7 Make mail(1) invoke "sendmail" instead of "send-mail", this is more standard.
Ok with christos.
2006-06-15 13:03:29 +00:00
christos ca28631014 Pass lint completely. 2005-07-19 23:07:10 +00:00
christos ece0fd5c87 WARNS=3 2005-07-19 01:38:38 +00:00
agc 89aaa1bb64 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22365, verified by myself.
2003-08-07 11:13:06 +00:00
wiz 443084c89d Replace another tempnam() with mkstemp(), and remove the tempEdit variable.
Inspired by OpenBSD.
2002-03-06 13:45:51 +00:00
wiz ae38aa875b Use warn() instead of perror(). 2002-03-05 21:29:30 +00:00
wiz b6e7b17180 KNF: No space after casts. 2002-03-05 21:18:14 +00:00
wiz cb6786d45f Replace some more special pointers to zero (NIL, NONE, NOVAR, NOGRP, NOGE)
with NULL.
2002-03-04 03:16:10 +00:00
wiz ab85015570 Don't use special null string pointer (NOSTR), just use NULL. 2002-03-04 03:07:25 +00:00
wiz 4e972651c7 Rename variables to avoid shadowing. 2002-03-02 15:27:51 +00:00
wiz b127cccc2e ANSIfy, and minimal KNF. 2002-03-02 14:59:35 +00:00
christos 85ef06032c fix nested externs
rename raise to upcase to avoid clash with raise(3)
2001-02-05 02:07:52 +00:00
christos b1d8c6168d index -> strchr 1998-12-19 16:33:24 +00:00
bad 2f2497e5de Detect more errors while manipulating mailbox files and tell the user
about them.  Don't truncate mailbox files when a write error has occured.
1997-11-25 17:58:15 +00:00
lukem 7c81c8f378 WARNSify, fix .Nm usage, deprecate register, use <err.h> 1997-10-19 05:02:57 +00:00
christos 88b833a7cd - Fix PR/105: Implement dot locking protocol and check return value of flock.
- Fix PR/2247: Don't call unknown users "ubluit". Issue an error message.
- Fix/add prototypes.
- Fix warnings.
- Use POSIX signal mask calls.
- RCSid police.
1996-06-08 19:48:09 +00:00
jtc b5508f3525 Use tempnam() to generate temporary file names instead of trying to
concatenate getenv("TMPDIR") and "RxXXXXXX" into fixed length arrays.
1994-11-28 20:03:30 +00:00
deraadt 2cb5542f38 4.4-lite, plus our mods 1994-06-29 05:09:04 +00:00
mycroft e9d867ef50 Add RCS identifiers. 1993-08-01 17:54:45 +00:00
cgd 61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00