On 6 Feb, 2014, at 12:18 , Marc Balmer <m...@msys.ch> wrote: > Actually the one second delay is wrong. If you want to de-assert DTR > for a modem to hangup, then do it in the application.
You've clearly not run a bank of dial-in/out modems on a multiuser system. When HUPCL is set you really do want to make sure the modem hangs up if the application talking to it exits, and you want to make sure this happens even if the application crashes without cleaning it up first or has no idea it is talking to a modem. That the application has to wait a second in close() is an implementation problem, as is the placement of the code to do the delay in com.c, but a correct driver would still want to observe a delay between consecutive opens when HUPCL is set. An application which didn't want that could always clear HUPCL after the open. I'm personally undisturbed by removing it, rather than fixing it, only because I don't know anyone who still uses dialup modems like that and I only remember this because I am old. For the things I do use serial ports for now the modem control generally just gets in the way. Dennis Ferguson