franco@cs.UAlberta.CA (Franco Carlacci) (11/21/90)
I've got a few responses to my query concerning getty, but it seems that the responders misunderstood my problem. Let me try again. The getty.c code found in /usr/src/commands contains a routine called do_carrier. This routine is suppose to sit and wait for DCD to be set before it will allow the login process to continue. ( Another option is to completely ignore the wait for DCD step). After having compiled getty.c, I modified my /etc/ttys so that port #2 would have a getty hanging of it .ie. the entry in /etc/ttys was set to 2d2. I then copied my getty executable to /etc and sent init signal #1 to have it reread /etc/ttys. No problem so far. The getty is running and ps -l shows that it is paused. However, it refuses to acknowledge any incoming calls. Placing some debug code in the do_carrier routine show that DCD is never set .ie. the statement "if ( tp.sg_flags & DCD ) return" never gets executed. I looked through the tty.c and rs232.c codes and I can't seem to find any routine or line of code that reads the modem status port looking for DCD. Tracking the ioctl call led me to tty.c and a call to a routine named do_ioctl. All this routine does is read the flags out of the tty_mode field in the tty_struct structure. But, as I said previously, I can't find any code that sets the DCD flag in this tty_mode field. Any insight into this problem would be appreciated franco ( franco@cs.ualberta.ca ) -- Franco Carlacci | " I always have to postpone what I WANT VOX: (403)492-2428 / 432-1570 | to do for what I HAVE to do! " franco@cs.ualberta.ca | Calvin and Hobbes