Modem control problems
Ralph-Diether Marzusch
marzusch at rzuv2.UUCP
Fri Jun 10 23:31:50 AEST 1988
I'm having trouble hanging up a modem connected to the serial port (tty0 or 1)
when using 'cu' or 'uucico' (*not* HDB UUCP, but that's not the point).
With Microport's tty driver it is possible to have a 'getty' running
(on '/dev/ttyM0') and access the same tty line (via '/dev/tty0') (i.e. for
outgoing calls) at the same time. Getty's 'open' call sleeps until anyone
calls in (DCD high) and while using '/dev/tty0' for outgoing calls.
When 'cu' or 'uucico' terminates, the tty line (e.g. '/dev/tty0') hangs
up (on last close) as it is supposed to do. About 1/4 sec. later 'getty' sees
that the line is no longer busy, looks for DCD and finds the carrier the
remote modem has still asserted. The 1/4 sec. DTR drop is _too short_ for the
modem to hang up, so the 'getty' process starts to communicate with whatever
there is at the remote machine (e.g. another 'getty' - very boring!).
btw: when using 'kermit' this doesn't happen ('kermit' explicitly hangs up
the line). Of course the 'undial' routine could have done this too, but (bad
luck) it doesn't, so neither 'cu' nor 'uucico' hang up the line long enough
when 'getty' is running.
Another (minor) problem: if I don't spawn 'getty' on '/dev/ttyM[01]' and use
'/dev/tty[01]' no carrier loss is reported ('uucico' tries to continue even if
the remote modem hung up).
Any ideas?
Ralph-Diether Marzusch
More information about the Comp.unix.microport
mailing list