History log of /openbsd-current/usr.bin/mail/tty.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.24 03-Nov-2023 anton

Check if a signal already has been received before entering a blocking
read as opposed of only doing it afterwards. Issue uncovered by the mail
regress tests.

With claudio@ and ok millert@


Revision tags: OPENBSD_7_3_BASE OPENBSD_7_4_BASE
# 1.23 08-Mar-2023 guenther

Delete obsolete /* ARGSUSED */ lint comments.

ok miod@ millert@


Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE OPENBSD_7_2_BASE
# 1.22 28-Jun-2019 deraadt

When system calls indicate an error they return -1, not some arbitrary
value < 0. errno is only updated in this case. Change all (most?)
callers of syscalls to follow this better, and let's see if this strictness
helps us in the future.


Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.21 28-Jun-2017 anton

Replace usage of TIOCSTI in mail while editing headers using a more common
IO-loop where ICANON is disabled and a single char of input is read at a time.
This requires the line editing capabilities provided when ICANON is enabled to
be implemented.

ok deraadt@


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.20 17-Jan-2014 okan

ctype and other sign extension fixes.

with deraadt and millert, ok millert


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.19 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.18 11-Jul-2005 millert

Fix off-by-one bug in readtty() and don't assume BUFSIZ == 1024.
Based on a patch from Ulf Harnhammar.


Revision tags: OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE
# 1.17 03-Jun-2003 millert

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999. Proofed by myself and Theo.


Revision tags: OPENBSD_3_1_BASE OPENBSD_3_2_BASE OPENBSD_3_3_BASE
# 1.16 28-Nov-2001 millert

Fix typo; SIGTTIN where SIGINT meant and rename a variable for clarity.


# 1.15 21-Nov-2001 millert

o kill strcpy()
o check return values of malloc and friends
o use strdup() when sensible


# 1.14 21-Nov-2001 millert

o ANSIfy
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


# 1.13 20-Nov-2001 millert

Major signal overhaul. We no longer longjmp all over the place.
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.


Revision tags: OPENBSD_3_0_BASE
# 1.12 23-Jun-2001 millert

Remove evil #ifdef __GNUC__ garbage to avoid longjmp clobbering and
use volatile instead.


Revision tags: OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.11 14-Nov-1997 millert

NetBSD changes (mostly comsmetic):
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


# 1.10 13-Nov-1997 millert

Add back EXTPROC code now that tty_pty.c has the lite2 fix.


Revision tags: OPENBSD_2_2_BASE
# 1.9 31-Jul-1997 millert

Remove TIOCEXT added in lite2 merge for now. Causes problems when
mail(1) is used over a telnet session.


# 1.8 30-Jul-1997 millert

Fix one possible oflow (not exploitable) and do a wee bit of KNF.
Much more remains to be done.


# 1.7 22-Jul-1997 millert

grabh() now returns SIGINT if it was interrupted (previously always
returned 0 and the return val was always ignored).
Add gethfromtty() to get a header (using grabh) from the tty and
quit on two ^C's.
Use gethfromtty() when getting Subject, Cc, and Bcc headers so
we can quit nicely. Closes PR #291.
Don't use longs where it doesn't make sense.


# 1.6 14-Jul-1997 millert

Convert remaining sigsetmask() -> sigprocmask() (POSIX style)
in collect.c and fix up some signal botches elsewhere.


# 1.5 14-Jul-1997 millert

NOSTR -> NULL
Use sigsetjmp/siglongjmp instead of sigjmp/longjmp for portability.


# 1.4 13-Jul-1997 millert

bcopy() -> memcpy() and fix some casts.


# 1.3 13-Jul-1997 millert

Merge in NetBSD and 4.4BSD-lite2 changes as well as some of my own.
- 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


Revision tags: OPENBSD_2_0_BASE OPENBSD_2_1_BASE
# 1.2 11-Jun-1996 deraadt

from christos;
- 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.


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


# 1.23 08-Mar-2023 guenther

Delete obsolete /* ARGSUSED */ lint comments.

ok miod@ millert@


Revision tags: OPENBSD_6_6_BASE OPENBSD_6_7_BASE OPENBSD_6_8_BASE OPENBSD_6_9_BASE OPENBSD_7_0_BASE OPENBSD_7_1_BASE OPENBSD_7_2_BASE
# 1.22 28-Jun-2019 deraadt

When system calls indicate an error they return -1, not some arbitrary
value < 0. errno is only updated in this case. Change all (most?)
callers of syscalls to follow this better, and let's see if this strictness
helps us in the future.


Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.21 28-Jun-2017 anton

Replace usage of TIOCSTI in mail while editing headers using a more common
IO-loop where ICANON is disabled and a single char of input is read at a time.
This requires the line editing capabilities provided when ICANON is enabled to
be implemented.

ok deraadt@


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.20 17-Jan-2014 okan

ctype and other sign extension fixes.

with deraadt and millert, ok millert


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.19 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.18 11-Jul-2005 millert

Fix off-by-one bug in readtty() and don't assume BUFSIZ == 1024.
Based on a patch from Ulf Harnhammar.


Revision tags: OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE
# 1.17 03-Jun-2003 millert

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999. Proofed by myself and Theo.


Revision tags: OPENBSD_3_1_BASE OPENBSD_3_2_BASE OPENBSD_3_3_BASE
# 1.16 28-Nov-2001 millert

Fix typo; SIGTTIN where SIGINT meant and rename a variable for clarity.


# 1.15 21-Nov-2001 millert

o kill strcpy()
o check return values of malloc and friends
o use strdup() when sensible


# 1.14 21-Nov-2001 millert

o ANSIfy
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


# 1.13 20-Nov-2001 millert

Major signal overhaul. We no longer longjmp all over the place.
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.


Revision tags: OPENBSD_3_0_BASE
# 1.12 23-Jun-2001 millert

Remove evil #ifdef __GNUC__ garbage to avoid longjmp clobbering and
use volatile instead.


Revision tags: OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.11 14-Nov-1997 millert

NetBSD changes (mostly comsmetic):
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


# 1.10 13-Nov-1997 millert

Add back EXTPROC code now that tty_pty.c has the lite2 fix.


Revision tags: OPENBSD_2_2_BASE
# 1.9 31-Jul-1997 millert

Remove TIOCEXT added in lite2 merge for now. Causes problems when
mail(1) is used over a telnet session.


# 1.8 30-Jul-1997 millert

Fix one possible oflow (not exploitable) and do a wee bit of KNF.
Much more remains to be done.


# 1.7 22-Jul-1997 millert

grabh() now returns SIGINT if it was interrupted (previously always
returned 0 and the return val was always ignored).
Add gethfromtty() to get a header (using grabh) from the tty and
quit on two ^C's.
Use gethfromtty() when getting Subject, Cc, and Bcc headers so
we can quit nicely. Closes PR #291.
Don't use longs where it doesn't make sense.


# 1.6 14-Jul-1997 millert

Convert remaining sigsetmask() -> sigprocmask() (POSIX style)
in collect.c and fix up some signal botches elsewhere.


# 1.5 14-Jul-1997 millert

NOSTR -> NULL
Use sigsetjmp/siglongjmp instead of sigjmp/longjmp for portability.


# 1.4 13-Jul-1997 millert

bcopy() -> memcpy() and fix some casts.


# 1.3 13-Jul-1997 millert

Merge in NetBSD and 4.4BSD-lite2 changes as well as some of my own.
- 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


Revision tags: OPENBSD_2_0_BASE OPENBSD_2_1_BASE
# 1.2 11-Jun-1996 deraadt

from christos;
- 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.


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


# 1.22 28-Jun-2019 deraadt

When system calls indicate an error they return -1, not some arbitrary
value < 0. errno is only updated in this case. Change all (most?)
callers of syscalls to follow this better, and let's see if this strictness
helps us in the future.


Revision tags: OPENBSD_6_2_BASE OPENBSD_6_3_BASE OPENBSD_6_4_BASE OPENBSD_6_5_BASE
# 1.21 28-Jun-2017 anton

Replace usage of TIOCSTI in mail while editing headers using a more common
IO-loop where ICANON is disabled and a single char of input is read at a time.
This requires the line editing capabilities provided when ICANON is enabled to
be implemented.

ok deraadt@


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.20 17-Jan-2014 okan

ctype and other sign extension fixes.

with deraadt and millert, ok millert


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.19 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.18 11-Jul-2005 millert

Fix off-by-one bug in readtty() and don't assume BUFSIZ == 1024.
Based on a patch from Ulf Harnhammar.


Revision tags: OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE
# 1.17 03-Jun-2003 millert

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999. Proofed by myself and Theo.


Revision tags: OPENBSD_3_1_BASE OPENBSD_3_2_BASE OPENBSD_3_3_BASE
# 1.16 28-Nov-2001 millert

Fix typo; SIGTTIN where SIGINT meant and rename a variable for clarity.


# 1.15 21-Nov-2001 millert

o kill strcpy()
o check return values of malloc and friends
o use strdup() when sensible


# 1.14 21-Nov-2001 millert

o ANSIfy
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


# 1.13 20-Nov-2001 millert

Major signal overhaul. We no longer longjmp all over the place.
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.


Revision tags: OPENBSD_3_0_BASE
# 1.12 23-Jun-2001 millert

Remove evil #ifdef __GNUC__ garbage to avoid longjmp clobbering and
use volatile instead.


Revision tags: OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.11 14-Nov-1997 millert

NetBSD changes (mostly comsmetic):
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


# 1.10 13-Nov-1997 millert

Add back EXTPROC code now that tty_pty.c has the lite2 fix.


Revision tags: OPENBSD_2_2_BASE
# 1.9 31-Jul-1997 millert

Remove TIOCEXT added in lite2 merge for now. Causes problems when
mail(1) is used over a telnet session.


# 1.8 30-Jul-1997 millert

Fix one possible oflow (not exploitable) and do a wee bit of KNF.
Much more remains to be done.


# 1.7 22-Jul-1997 millert

grabh() now returns SIGINT if it was interrupted (previously always
returned 0 and the return val was always ignored).
Add gethfromtty() to get a header (using grabh) from the tty and
quit on two ^C's.
Use gethfromtty() when getting Subject, Cc, and Bcc headers so
we can quit nicely. Closes PR #291.
Don't use longs where it doesn't make sense.


# 1.6 14-Jul-1997 millert

Convert remaining sigsetmask() -> sigprocmask() (POSIX style)
in collect.c and fix up some signal botches elsewhere.


# 1.5 14-Jul-1997 millert

NOSTR -> NULL
Use sigsetjmp/siglongjmp instead of sigjmp/longjmp for portability.


# 1.4 13-Jul-1997 millert

bcopy() -> memcpy() and fix some casts.


# 1.3 13-Jul-1997 millert

Merge in NetBSD and 4.4BSD-lite2 changes as well as some of my own.
- 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


Revision tags: OPENBSD_2_0_BASE OPENBSD_2_1_BASE
# 1.2 11-Jun-1996 deraadt

from christos;
- 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.


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision


Revision tags: OPENBSD_6_2_BASE
# 1.21 28-Jun-2017 anton

Replace usage of TIOCSTI in mail while editing headers using a more common
IO-loop where ICANON is disabled and a single char of input is read at a time.
This requires the line editing capabilities provided when ICANON is enabled to
be implemented.

ok deraadt@


Revision tags: OPENBSD_5_5_BASE OPENBSD_5_6_BASE OPENBSD_5_7_BASE OPENBSD_5_8_BASE OPENBSD_5_9_BASE OPENBSD_6_0_BASE OPENBSD_6_1_BASE
# 1.20 17-Jan-2014 okan

ctype and other sign extension fixes.

with deraadt and millert, ok millert


Revision tags: OPENBSD_4_7_BASE OPENBSD_4_8_BASE OPENBSD_4_9_BASE OPENBSD_5_0_BASE OPENBSD_5_1_BASE OPENBSD_5_2_BASE OPENBSD_5_3_BASE OPENBSD_5_4_BASE
# 1.19 27-Oct-2009 deraadt

rcsid[] and sccsid[] and copyright[] are essentially unmaintained (and
unmaintainable). these days, people use source. these id's do not provide
any benefit, and do hurt the small install media
(the 33,000 line diff is essentially mechanical)
ok with the idea millert, ok dms


Revision tags: OPENBSD_3_8_BASE OPENBSD_3_9_BASE OPENBSD_4_0_BASE OPENBSD_4_1_BASE OPENBSD_4_2_BASE OPENBSD_4_3_BASE OPENBSD_4_4_BASE OPENBSD_4_5_BASE OPENBSD_4_6_BASE
# 1.18 11-Jul-2005 millert

Fix off-by-one bug in readtty() and don't assume BUFSIZ == 1024.
Based on a patch from Ulf Harnhammar.


Revision tags: OPENBSD_3_4_BASE OPENBSD_3_5_BASE OPENBSD_3_6_BASE OPENBSD_3_7_BASE
# 1.17 03-Jun-2003 millert

Remove the advertising clause in the UCB license which Berkeley
rescinded 22 July 1999. Proofed by myself and Theo.


Revision tags: OPENBSD_3_1_BASE OPENBSD_3_2_BASE OPENBSD_3_3_BASE
# 1.16 28-Nov-2001 millert

Fix typo; SIGTTIN where SIGINT meant and rename a variable for clarity.


# 1.15 21-Nov-2001 millert

o kill strcpy()
o check return values of malloc and friends
o use strdup() when sensible


# 1.14 21-Nov-2001 millert

o ANSIfy
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


# 1.13 20-Nov-2001 millert

Major signal overhaul. We no longer longjmp all over the place.
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.


Revision tags: OPENBSD_3_0_BASE
# 1.12 23-Jun-2001 millert

Remove evil #ifdef __GNUC__ garbage to avoid longjmp clobbering and
use volatile instead.


Revision tags: OPENBSD_2_3_BASE OPENBSD_2_4_BASE OPENBSD_2_5_BASE OPENBSD_2_6_BASE OPENBSD_2_7_BASE OPENBSD_2_8_BASE OPENBSD_2_9_BASE
# 1.11 14-Nov-1997 millert

NetBSD changes (mostly comsmetic):
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


# 1.10 13-Nov-1997 millert

Add back EXTPROC code now that tty_pty.c has the lite2 fix.


Revision tags: OPENBSD_2_2_BASE
# 1.9 31-Jul-1997 millert

Remove TIOCEXT added in lite2 merge for now. Causes problems when
mail(1) is used over a telnet session.


# 1.8 30-Jul-1997 millert

Fix one possible oflow (not exploitable) and do a wee bit of KNF.
Much more remains to be done.


# 1.7 22-Jul-1997 millert

grabh() now returns SIGINT if it was interrupted (previously always
returned 0 and the return val was always ignored).
Add gethfromtty() to get a header (using grabh) from the tty and
quit on two ^C's.
Use gethfromtty() when getting Subject, Cc, and Bcc headers so
we can quit nicely. Closes PR #291.
Don't use longs where it doesn't make sense.


# 1.6 14-Jul-1997 millert

Convert remaining sigsetmask() -> sigprocmask() (POSIX style)
in collect.c and fix up some signal botches elsewhere.


# 1.5 14-Jul-1997 millert

NOSTR -> NULL
Use sigsetjmp/siglongjmp instead of sigjmp/longjmp for portability.


# 1.4 13-Jul-1997 millert

bcopy() -> memcpy() and fix some casts.


# 1.3 13-Jul-1997 millert

Merge in NetBSD and 4.4BSD-lite2 changes as well as some of my own.
- 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


Revision tags: OPENBSD_2_0_BASE OPENBSD_2_1_BASE
# 1.2 11-Jun-1996 deraadt

from christos;
- 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.


# 1.1 18-Oct-1995 deraadt

branches: 1.1.1;
Initial revision