> From [EMAIL PROTECTED] Thu Oct  2 06:38:03 2003
> Date: Thu, 2 Oct 2003 14:42:15 +0200 (CEST)
> From: Villy Kruse <[EMAIL PROTECTED]>
> To: [EMAIL PROTECTED]
> Subject: Re: LPRng: serial port blues - solution
>
> On Tue, 30 Sep 2003, Patrick Powell wrote:
>
> >
> > The tcdrain() function does this as well.  However,  I sure wish there
> > was a non-blocking version of this.
>
> You can avoid the blocking issue by fork()ing a child process which calls
> tcdrain().  The parent process then forgets about this child process
> and terminates normaly while the child process is waiting for tcdrain()
> to terminate and the child process will then close the printer port
> and exit.  Closing the printer port in the parent process while the
> child process is running has no effect.  Only the last close of the
> printer port is critical.  Don't worry about zombies either,  the child
> process will be orphaned as soon as the parent process is terminated, and
> the init will then take care of the zombie eventualy.
>
> Making a daemon whith the sole purpose to have the printer port open is
> probably simpler.  You then start it from one of the rc scripts, and
> as long as this daemon is running the printer port will never see the last
> close and therefore never reset.
>
> The following inittab entry may do the trick for the port /dev/ttyxxx.
>
> 1:12345:respawn:sleep 200000 < /dev/ttyxxx
>
> Villy

I like this solution MUCH better.  By putting this at the system
level you can eliminate all the fussing with tcdrain, etc.

Good idea!

Patrick

-----------------------------------------------------------------------------
YOU MUST BE A LIST MEMBER IN ORDER TO POST TO THE LPRNG MAILING LIST
The address you post from MUST be your subscription address

If you need help, send email to [EMAIL PROTECTED] (or lprng-requests
or lprng-digest-requests) with the word 'help' in the body.  For the impatient,
to subscribe to a list with name LIST,  send mail to [EMAIL PROTECTED]
with:                           | example:
subscribe LIST <mailaddr>       |  subscribe lprng-digest [EMAIL PROTECTED]
unsubscribe LIST <mailaddr>     |  unsubscribe lprng [EMAIL PROTECTED]

If you have major problems,  send email to [EMAIL PROTECTED] with the word
LPRNGLIST in the SUBJECT line.
-----------------------------------------------------------------------------

Reply via email to