summaryrefslogtreecommitdiff
path: root/usr.bin/mail/lex.c
AgeCommit message (Collapse)Author
2004-05-10delint; millert okTheo de Raadt
2004-05-10Get rid of the ancient "clobber" command. It was really only for debuggingTodd C. Miller
purposes. Noticed and OK by deraadt@
2003-10-24dont compare int to NULL, millert@ okAnil Madhavapeddy
2003-10-13better realloc. ok deraadt joseTed Unangst
2003-06-03Remove the advertising clause in the UCB license which BerkeleyTodd C. Miller
rescinded 22 July 1999. Proofed by myself and Theo.
2001-11-21o kill strcpy()Todd C. Miller
o check return values of malloc and friends o use strdup() when sensible
2001-11-21o ANSIfyTodd C. Miller
o Style nits o Use const to silent stupid -Wall warnings o strnc{py,at} -> strlc{py,at} o Use strpbrk() instead of homegrown anyof() o Use NULL instead of #defines with 0 cast to a pointer This still could use a proper audit
2001-11-20Major signal overhaul. We no longer longjmp all over the place.Todd C. Miller
Instead, routines responsible to gathering user input (or in some cases outputting data) catch the signals and set flags as needed. Because of this some handlers are install without the SA_RESTART flag so syscalls are not restarted and we can check the flag. All signal handlers are now safe. This should make the flow of control a bit more grokable but the code is still ugly.
2001-11-17properly bail out of incfile(); millert okTheo de Raadt
2001-06-23Remove evil #ifdef __GNUC__ garbage to avoid longjmp clobbering andTodd C. Miller
use volatile instead.
2001-01-16Changes from Don Beusee:Todd C. Miller
o escape From line with a leading '>' when needed o only print To: address and Subject lines if actually present o new variable 'allnet' to treat user@foo and user@bar as the same "user" o folders command now takes an optional argument like ls. o new "pipe" (|) command to pipe the message through an arbitrary command o make header display format the same as SunOS 4.1.3 /usr/ucb/mail o tilde commands work regardless of interactive mode. o fix "read: Interrupted system call" error by retrying if EINTR o expanded help file Changes by me: o read the help file via the PAGER as it is now more than 24 lines long
2000-07-06printf with % for the promptTheo de Raadt
2000-06-30warnx?/errx? paranoia (use "%s" not a bare string unless it is aTodd C. Miller
constant). These are not security holes but it is worth fixing them anyway both for robustness and so folks looking for examples in the tree are not misled into doing something potentially dangerous. Furthermore, it is a bad idea to assume that pathnames will not include '%' in them and that error routines don't return strings with '%' in them (especially in light of the possibility of locales).
2000-04-25When incorporating new messages, clear the "new" count before theTodd C. Miller
inc so the count of new messages is useful afterwards. This makes mail behave more like the SunOS version in this respect.
1998-09-08Fix comments in .mailrc where there is no space after the hash (#). Noted ↵Todd C. Miller
by pjanzen@foatdi.harvard.edu
1998-06-12back out some signal changes that can cause mail to hang when quitting due ↵Todd C. Miller
to SIGCHLD blockage
1998-05-04Never remove a mail spool, as we may not have proper prics, just truncate. ↵Todd C. Miller
Also block signals in a few critical areas
1997-11-14NetBSD changes (mostly comsmetic):Todd C. Miller
replace panic() with calls to err()/errx() use S_IS* instead of doing by hand with S_IF*. Use TIMESPEC_TO_TIMEVAL() and gettimeofday instead of time(2) Use _POSIX_VDISABLE, not 0 Kill register
1997-07-30Make istrcpy() take a size (not length) field, now called istrncpy().Todd C. Miller
Change some strcpy() -> strncpy() out of paranoia.
1997-07-30Fix one possible oflow (not exploitable) and do a wee bit of KNF.Todd C. Miller
Much more remains to be done.
1997-07-24tempnam(3) goes bye bye.Todd C. Miller
1997-07-24Replace 3 tempnam()'s with mkstemp. The two left look tricky.Todd C. Miller
1997-07-22incfile() needs to lock the mail spool so it doesn't get partial messages.Todd C. Miller
Noticed by Theo.
1997-07-22Release signals when we get an error condition in incfile().Todd C. Miller
1997-07-14NOSTR -> NULLTodd C. Miller
Use sigsetjmp/siglongjmp instead of sigjmp/longjmp for portability.
1997-07-13bcopy() -> memcpy() and fix some casts.Todd C. Miller
1997-07-13Merge in NetBSD and 4.4BSD-lite2 changes as well as some of my own.Todd C. Miller
- handle long lines safely (from NetBSD) - use puts/fputs and putchar/putc when it makes sense - use err/errx and warn/warnx when it makes sense - make return() and sizeof() style consisten - some more buffer safety
1997-05-30overflows aboundTheo de Raadt
1997-01-17r?index -> strr?chrTodd C. Miller
1996-06-11from christos;Theo de Raadt
- 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.
1996-03-27From NetBSD: merge of 960317Niklas Hallqvist
1995-10-18initial import of NetBSD treeTheo de Raadt