Mercurial > hg > Members > kono > nitros9-code
changeset 2702:2bd966ffd6d5 lwtools-port
Fixed longstanding issue with processes not going away when a network path closed. Also inetd now turns of pause
author | Boisy Pitre <boisy.pitre@nuance.com> |
---|---|
date | Fri, 20 Jul 2012 15:02:12 -0500 |
parents | 772a16760499 |
children | aa91dd03121d |
files | level1/cmds/inetd.a level1/modules/dw3.asm |
diffstat | 2 files changed, 18 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/level1/cmds/inetd.a Fri Jul 20 13:36:02 2012 -0500 +++ b/level1/cmds/inetd.a Fri Jul 20 15:02:12 2012 -0500 @@ -68,6 +68,17 @@ leax nbuffer,u stx nnext,u +* Turn off pause in standard out + ldd #$01*256+SS.Opt + leas -32,s + tfr s,x + os9 I$GetStt + bcs opterr + clr PD.PAU-PD.OPT,x + os9 I$SetStt +opterr + leas 32,s + * open the path to the control channel lbsr TCPOpen lbcs errex
--- a/level1/modules/dw3.asm Fri Jul 20 13:36:02 2012 -0500 +++ b/level1/modules/dw3.asm Fri Jul 20 15:02:12 2012 -0500 @@ -410,7 +410,7 @@ * multiread/status flag is in bit 4 of A bita #$10 - beq IRQPutch ; branch for read1 if multiread not set + lbeq IRQPutch ; branch for read1 if multiread not set * all 0s in port means status, anything else is multiread @@ -453,8 +453,8 @@ * This routine roots through process descriptors in a queue and * checks to see if the process has a path that is open to the device -* represented by the static storage pointer in U. If so, the S$HUP -* signal is sent to that process +* represented by the static storage pointer in U. If so, set the Condem +* bit of the P$State of that process. * * Note: we start with path 0 and continue until we get to either (a) the * last path for that process or (b) a hit on the static storage that we @@ -487,9 +487,9 @@ bne loop ldx ,s - lda P$ID,x - ldb #S$HUP - os9 F$Send + lda P$State,x get state of recipient + ora #Condem set condemn bit + sta P$State,x and set it back out puls x ldx P$Queue,x @@ -499,7 +499,7 @@ statcont clrb tfr d,u * NEW: root through all process descriptors. if any has a path open to this -* device, send then S$HUP +* device, set the Condem bit of the P$State ldx <D.AProcQ beq dowaitq bsr RootThrough