[fa.info-vax] disconnecting...

info-vax@ucbvax.ARPA (07/13/85)

From: Kevin Carosso <engvax!KVC@cit-vax>

The QIO I tried to force a disconnect on a terminal (i.e. how the DISCONNECT
DCL command does it) is a IO$_SETMODE ! IO$M_TT_DISCON.  There is, I believe,
also a IO$M_DISCONNECT, but I was told by an unnamed VMS developer that that
one is used for something completely different (I don't even remember what).

I never tried it with a IO$M_HANGUP (or whatever), just with the SETMODE.
In any case, you will still have the same problem with TT_DISCON, namely
that lobbing one at someone else's terminal won't cause anything to happen
immediately...

The problem is that if that terminal has an outstanding IO request, your QIO
just gets put in queue (that's why they call it a QIO, I suppose... :-) until
the other guy's read (that's what is usually waiting) is satisfied.  Not
terribly useful.  The solution is to issue the QIO to disconnect, then
blast a special kernel AST at everyone else who has a channel to the terminal
with an outstanding IO request causing a $CANCEL of that request.  This is
incredibly gross, and I haven't gotten around to writing it yet.  I asked
the group many months ago if anyone had any solutions to this problem, but
that was the best that came of it.  Oh well...

Anyone know if it's possible to cancel other people's IO requests without
going into their process context?  That might make things a little easier,
and it kinda gives you that warm feeling all over when you hit the return
key to run the program that does it...

	/Kevin Carosso           engvax!kvc @ CIT-VAX.ARPA
	 Hughes Aircraft Co.

info-vax@ucbvax.ARPA (07/16/85)

From: ecsvax!jerryr%mcnc.csnet@csnet-relay.ARPA

What would happen if one issued a write to the terminal with the break
through read function modifier to ask for the cursor location, device status,
or anything that would cause the terminal to respond automatically? 
This won't help for a terminal that's off, unfortunately, but what happens
to other queued io's when a read is interrupted?

					Jerry Robinson
				    UNC School of Medicine
				    UUCP: ...mcnc!ecsvax!jerryr