summaryrefslogtreecommitdiff
path: root/usr.bin/mail/popen.c
AgeCommit message (Collapse)Author
2004-09-15unused variableTheo de Raadt
2003-06-03Remove the advertising clause in the UCB license which BerkeleyTodd C. Miller
rescinded 22 July 1999. Proofed by myself and Theo.
2002-06-12a real pid_t cleanup.Mike Pechkin
espie@ ok for make/, deraadt@ one extra eye, millert@ ok
2001-11-23Revert change to Popen() to only wrap command in a shell if itTodd C. Miller
contains meta characters since people may expect their aliases to work. Instead, just remove the "kill(lock_pid, SIGTERM);" since lockspool now does the right thing when the pipe is closed.
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-20In private version of popen(), only wrap a command to be run in aTodd C. Miller
shell if it contains meta chars. Sneaky hack to work around a ksh bug.
2001-09-04Fix bogus use of snprintf return value. Since we know the maxTodd C. Miller
length of a username we can use that as part of the buffer size.
2001-01-19More fixes from Don Beusee:Todd C. Miller
- edit and other interactive commands have no stdin (making the command completely broken). - messages with "From " line having date format with -0800 type of timezone are not recognized correctly.
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-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).
1998-09-27Use new username option to lockspool for 'mail -u'.Todd C. Miller
1998-09-10Fix commentsTodd C. Miller
1998-09-10If a child has not been waited on via the SIGCHLD handler, wait for itTodd C. Miller
ourselves instead of playing games with sigsuspend. This may fix PR 588.
1998-09-08repair order of signal blocking that got changed in conversion to POSIX signalsTodd C. Miller
1998-08-15use lockspool for locking, not 'mail.local -H'Todd C. Miller
1998-06-12back out some signal changes that can cause mail to hang when quitting due ↵Todd C. Miller
to SIGCHLD blockage
1998-06-12Don't call truncate() directly; have rm() do it if we get EPERM on unlink()Todd C. Miller
In popen.c, findchild() may return NULL so catch that case.
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
1998-02-15Remove one case of malloc call from sighandlerNiklas Hallqvist
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-08-31Kill union wait.Todd C. Miller
1997-08-05pull errno.h inTheo de Raadt
1997-08-04save errno in sigchld handlersTheo de Raadt
1997-07-14Don't call it a mask when it is a sigset_t (cosmetic changes only).Todd C. Miller
1997-07-14Convert remaining sigsetmask() -> sigprocmask() (POSIX style)Todd C. Miller
in collect.c and fix up some signal botches elsewhere.
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-03-29Use ``mail.local -H'' to do dot locking so we can have mode 755 mailTodd C. Miller
spool, change an occurrence of tempnam() to mkstemp(), change some longs and shorts to ints. Mail is now usable again.
1996-06-26Accept NULL nset in prepare child (as run_editor will try to use one).dm
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.
1995-10-18initial import of NetBSD treeTheo de Raadt