Commit Graph

42 Commits

Author SHA1 Message Date
mycroft fb526e055c Substantial signal handling changes:
* Increase the size of sigset_t to accomodate 128 signals -- adding new
  versions of sys_setprocmask(), sys_sigaction(), sys_sigpending() and
  sys_sigsuspend() to handle the changed arguments.
* Abstract the guts of sys_sigaltstack(), sys_setprocmask(), sys_sigaction(),
  sys_sigpending() and sys_sigsuspend() into separate functions, and call them
  from all the emulations rather than hard-coding everything.  (Avoids uses
  the stackgap crap for these system calls.)
* Add a new flag (p_checksig) to indicate that a process may have signals
  pending and userret() needs to do the full (slow) check.
* Eliminate SAS_ALTSTACK; it's exactly the inverse of SS_DISABLE.
* Correct emulation bugs with restoring SS_ONSTACK.
* Make the signal mask in the sigcontext always use the emulated mask format.
* Store signals internally in sigaction structures, rather than maintaining a
  bunch of little sigsets for each SA_* bit.
* Keep track of where we put the signal trampoline, rather than figuring it out
  in *_sendsig().
* Issue a warning when a non-emulated sigaction bit is observed.
* Add missing emulated signals, and a native SIGPWR (currently not used).
* Implement the `not reset when caught' semantics for relevant signals.

Note: Only code touched by the i386 port has been modified.  Other ports and
emulations need to be updated.
1998-09-11 12:50:05 +00:00
thorpej 8aee7782f5 defopt COMPAT_SUNOS 1998-06-25 23:40:33 +00:00
mycroft 2ada4b4af1 Replace TS_WOPEN with t_wopen, per mail on tech-kern. 1998-03-21 04:02:47 +00:00
fvdl e5bc90f40c Merge with Lite2 + local changes 1998-03-01 02:20:01 +00:00
mycroft 2bc736661a Implement poll(2). 1996-09-07 12:40:22 +00:00
mycroft af113f915d Use SET(), CLR(), ISSET(). 1996-09-05 15:31:40 +00:00
mycroft b3eac79b64 tty stop functions really should return void, not int, and certainly not both. 1996-09-02 06:43:16 +00:00
pk 947ec65105 sunos_compat: return EIO when TIOCGPGRPing a half-open pty. This is
expected by SunOS pty-allocating programs (telnetd,rlogind,..).
1996-07-02 21:19:02 +00:00
mrg 5583238255 impliment ttylist stats based on disk stats. 1996-05-29 02:02:42 +00:00
christos 87a65718ea Eliminate kern_conf.h 1996-03-30 22:24:38 +00:00
christos 09afd77655 More proto fixes 1996-02-09 18:59:18 +00:00
christos 8a5b1b92e2 First pass at prototyping 1996-02-04 02:15:01 +00:00
mycroft 2dd293d3c3 Add hooks for COMPAT_FREEBSD, from Noriyuki Soda. 1995-10-10 01:26:36 +00:00
mycroft b92e5976ff Rename pttty() to ptytty() to mimic ptyioctl(). 1995-04-19 22:33:56 +00:00
mycroft cdd1a8eb54 Fix typo. 1995-04-19 18:58:14 +00:00
mycroft 7aaa443e99 Implement pttty(), and rename pt_ioctl to pt_softc. 1995-04-19 18:50:21 +00:00
mycroft 790aa66ac5 Remove extra arg to ptcopen(). 1994-12-14 19:45:30 +00:00
mycroft d8d7490080 Fix compiler warning. 1994-12-13 19:59:25 +00:00
cgd 6ac2bbfc35 be more careful with types, also pull in headers where necessary. 1994-10-30 21:43:03 +00:00
cgd cf92afd66e New RCS ID's, take two. they're more aesthecially pleasant, and use 'NetBSD' 1994-06-29 06:29:24 +00:00
cgd ff49fed069 upgrade to 4.4-Lite's tty code. our bug fixes included, some might need GC. 1994-05-12 03:48:33 +00:00
cgd a0a7429482 lots of changes: prototype migration, move lots of variables, definitions,
and structure elements around.  kill some unnecessary type and macro
definitions.  standardize clock handling.  More changes than you'd want.
1994-05-05 05:35:42 +00:00
cgd 4bbabd8e7a Rename a lot of process flags. 1994-05-04 03:41:12 +00:00
cgd 22aa92e0a9 kill some code that became obsolete when berknet died... 1994-04-25 05:48:41 +00:00
mycroft bbb3e7618c All ioctl routines take a struct proc * now. 1994-02-09 21:06:46 +00:00
cgd ad869e40c0 kill two patchkit bogons 1994-01-27 03:26:48 +00:00
mycroft 7f50bd1829 Canonicalize all #includes. 1993-12-18 04:21:37 +00:00
deraadt 33d816fdbc add a ptyattach() function, as in magnum. 1993-11-15 09:17:05 +00:00
cgd c6ff42e027 from Mike Karels, via bsdi-users: nuking session pointer prevents cleanup. 1993-11-12 15:15:57 +00:00
cgd 4a21fe3648 ifdef out the ttyfree()'s, so that fill_eproc doesn't panic when
a process's session still holds a ref to a tty which has been deallocated
and reused.
1993-09-29 02:36:21 +00:00
deraadt 9aed375ba3 tty XXstart() routines return void 1993-08-29 13:46:31 +00:00
mycroft 7aecc812a5 Move flushq() macro into tty.h. 1993-07-19 05:52:27 +00:00
mycroft 69fdebd9fa Make sure there are character in the ring before flushing. 1993-07-19 05:49:13 +00:00
mycroft b8756ae04c Use ndflush(), not while(getc()). 1993-07-19 05:10:30 +00:00
mycroft 41b03a4a6e Change tty code to use clist interface, but with ring buffer implementation.
Also, fix a couple of bugs in tty.c and pccons.c, and some gross kluginess
in the hp300 stuff.
1993-07-12 11:33:54 +00:00
andrew 6535028529 * ansifications
* fixed the arguments given to the line discipline l_open function in
  ptsopen()
* should ptsstart() return 1 if (tp->t_state & TS_TTSTOP)?
1993-06-27 06:06:47 +00:00
cgd f1b8c74730 make getc() and ungetc() be rb{un,}getc(), so getc() and ungetc()
don't conflict w/ansi prototypes...
1993-06-06 23:04:42 +00:00
deraadt 2f0c0eb674 tty dynamic allocation 1993-05-26 10:06:41 +00:00
cgd 8d6c77881c make kernel select interface be one-stop shopping & clean it all up. 1993-05-18 18:18:40 +00:00
deraadt 64f341ec2a ring buffer now uses rbchar's (shorts) instead of chars. 1993-05-10 23:15:37 +00:00
cgd e541169ce2 after 0.2.2 "stable" patches applied 1993-03-21 18:04:42 +00:00
cgd 61f282557f initial import of 386bsd-0.1 sources 1993-03-21 09:45:37 +00:00