rpw3@fortune.UUCP (12/20/83)
#R:denelcor:-25000:fortune:12300008:000:1031 fortune!rpw3 Dec 19 20:33:00 1983 Re: Outbound and inbound lines (getty, etc) While I cannot give you the code, I can tell you what we did, since it is in our published tty(4) page (FOR:PRO 1.7 version). A new sub-device, whose minor number is 128 greater than the normal device, is created for every tty. the "x"+128 device is used for calling out, and the "x" device is used for hanging getty on. The trick is, 1. If the getty line is opened "successfully" (carrier up), an open to the +128 line will fail (busy). 2. If the getty line is "hanging" waiting for carrier, and an open to the +128 port occurs, the +128 open succeeds, and the getty port continues to hang. 3. The kernel makes sure there are no races. If /dev/tty131 (say) is in L.sys for some uucp hosts, and /dev/tty03 (131-128) is in /etc/ttys for init to find, then they can share the port quite nicely. Rob Warnock UUCP: {sri-unix,amd70,hpda,harpo,ihnp4,allegra}!fortune!rpw3 DDD: (415)595-8444 USPS: Fortune Systems Corp, 101 Twin Dolphins Drive, Redwood City, CA 94065
norskog@fortune.UUCP (12/21/83)
#R:denelcor:-25000:fortune:12300009:000:561 fortune!norskog Dec 20 18:53:00 1983 It doesn't have to be in the kernel. Someone on the net awhile back stated that they had done it thusly: The execute bit on tty files is not used for anything essential. Hack init so that it will accept a signal whose meaning is: "If the execute bit on any tty is on, disable logins on that tty" and conversely, "If the execute bit is off, enable logins". and hack 'cu' & 'uuxqt' to twiddle the execute bit and signal 'init' when they want to use that tty. Lance Norskog Fortune Systems {hpda,harpo,sri-unix,amd70,ihnp4,allegra}!fortune!norskog
chuqui@cae780.UUCP (Chuq Von Rospach) (12/21/83)
Another way is to write a program to enable and disable logins on a particular line. Fred Blonder at the UofMaryland passed one my way when this came up at a previous employer a year ago, and it works fine. What you do is edit /etc/ttys to change the login entry for the tty, and then throw a signal at init, which will adjust all of the gettys for you, adding or dropping as needed. I ran a uucp link through a 3451 for 9 months that way with NO hacking of any existing Unix code (which was handy, since it was a binary license...)