diff options
Diffstat (limited to 'usr.bin/uucp/acucntrl/acucntrl.8')
-rw-r--r-- | usr.bin/uucp/acucntrl/acucntrl.8 | 164 |
1 files changed, 0 insertions, 164 deletions
diff --git a/usr.bin/uucp/acucntrl/acucntrl.8 b/usr.bin/uucp/acucntrl/acucntrl.8 deleted file mode 100644 index b2b7f0e..0000000 --- a/usr.bin/uucp/acucntrl/acucntrl.8 +++ /dev/null @@ -1,164 +0,0 @@ -.\" Copyright (c) 1985, 1993 -.\" The Regents of the University of California. All rights reserved. -.\" -.\" Redistribution and use in source and binary forms, with or without -.\" modification, are permitted provided that the following conditions -.\" are met: -.\" 1. Redistributions of source code must retain the above copyright -.\" notice, this list of conditions and the following disclaimer. -.\" 2. Redistributions in binary form must reproduce the above copyright -.\" notice, this list of conditions and the following disclaimer in the -.\" documentation and/or other materials provided with the distribution. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University nor the names of its contributors -.\" may be used to endorse or promote products derived from this software -.\" without specific prior written permission. -.\" -.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND -.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE -.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -.\" SUCH DAMAGE. -.\" -.\" @(#)acucntrl.8 8.2 (Berkeley) 12/11/93 -.\" -.TH ACUCNTRL 8 "December 11, 1993" -.UC 6 -.SH NAME -acucntrl \- turn around tty line between dialin and dialout -.SH SYNOPSIS -.B /usr/lib/uucp/acucntrl -keyword ttyline -.SH DESCRIPTION -.PP -.I Acucntrl -turns around the terminal line, -enabling it to be used for both dialin and dialout. -On dialin a terminal line is assumed to have modem control enabled and a getty -process in existence waiting for logins. On dialout modem control is disabled -and there is no getty process. -.PP -This program must be run setuid to root. -.PP -.I keyword -is chosen from the list: -.I disable -or -.IR dialout , -to condition a line for dialout; -and -.I enable -or -.IR dialin , -to condition a line for dialin. -.PP -When the line is conditioned for dialing out, the login name of the real uid -of the process is placed in /etc/utmp in capitals. -This declares that the line is in use and acts as an additional locking -mechanism. -.I Acucntrl -will refuse to act if the /etc/utmp entry for the line is not null, -is not the the user's login name (capitalized or not), -and if the process is not running as the superuser. -The last condition is to allow the superuser to clear the state of the line. -.PP -Turning modem control on or off is handled by poking into /dev/kmem. -It is currently implemented for dz, dh, and dmf lines. -.PP -Under 4.2 BSD the program will also refuse to disable a line if carrier is -sensed on it. This is to avoid the dead period where someone has just dialed -in and made the connection but has not yet logged in. -.PP -.I Ttyline -can be either of the form tty* or /dev/tty*. -Enabling/disabling a line whose name does not begin with ttyd? is prohibited -unless the real uid of the process is 0 or if the login name corresponding to -the real uid is uucp. This is a security precaution. -.PP -Steps taken when disabling -.RI ( i . e . -setup for dialing out) -.IP 1) -check input arguments -.IP 2) -look in /etc/utmp to check that the line is not in use by another user -.IP 3) -disable modem control on line -.IP 4) -check for carrier on device -.IP 5) -change owner of device to real uid -.IP 6) -edit /etc/ttys, changing the first character of the appropriate line to 0 -.IP 7) -send a hangup to process 1 to poke init to disable getty -.IP 8) -post uid name in capitals in /etc/utmp to let world know device has been grabbed -.IP 9) -make sure that DTR is on -.PP -Steps taken when enabling -.RI ( i . e . -setup for dialing in) -.IP 1) -check input arguments -.IP 2) -look in /etc/utmp to check that the line is not in use by another user -.IP 3) -make sure modem control on line is disabled -.IP 4) -turn off DTR to make sure line is hung up -.IP 5) -condition line: clear exclusive use and set hangup on close modes -.IP 6) -turn on modem control -.IP 7) -edit /etc/ttys, changing the first character of the appropriate line to 1 -.IP 8) -send a hangup to process 1 to poke init to enable getty -.IP 9) -clear uid name for /etc/utmp -.SH HISTORY -.PP -First written by Allan Wilkes (fisher!allan) -.PP -Modified June 8,1983 by W.Sebok (astrovax!wls) to poke the kernel rather -than use a kernel hack to turn on/off modem control, using a subroutine -stolen from a program written by Tsutomu Shimomura {astrovax,escher}!tsutomu -.PP -Worked over many times by W.Sebok -.RI ( i . e . -hacked to death) -.SH FILES -/dev/kmem, /kernel, /etc/ttys, /etc/utmp, /dev/tty* -.SH BUGS -.PP -Sensing carrier requires the 4.2 BSD TIOCMGET ioctl call. Unfortunately this -ioctl is not implemented in the vanilla 4.2 BSD dh driver even though the -dz and dmf drivers use an emulation of the DH11's modem control bits. This -has been fixed here. -.PP -Some time (currently 2 seconds) is required between disabling modem control -and opening the device. This is probably because of a race with getty whose -open is finally being allowed to complete. This time interval may not be -enough on a loaded system. Because of this problem and the above problem with -the dh driver there is deliberately no error message given when the TIOCMGET -ioctl fails. -.PP -Previously there were similar synchronization problems with the init process. -When dialins are disabled the capitalized name of the process cannot be posted -into /etc/utmp until init has finished clearing /etc/utmp. However one does -not know how long that will take, and, on a loaded system, it can take quite -a while. This was solved by the strategy of 1) posting the name, 2) poking -init, 3) going into a loop where the process repeatedly waits a second and -checks whether the entry has been cleared from /etc/utmp, and 4) posting the -name again. |