I thought that was understood to be the reason.
Probably opening fifo should also help (in place of
running in nodaemon mode) since it keeps one file descriptor
(am I right ?)

On Thu, 21 Oct 1999, Ed G. wrote:

> Umm, could this possibly be the source of your problem?
> 
> Ed G.
> 
> PS:  a simple workaround is run in diald in non-daemon mode, i.e., 
> include -daemon in your diald.conf file.
> 
> ------- Forwarded Message Follows -------
> From:                 "Ed G." <[EMAIL PROTECTED]>
> To:                   [EMAIL PROTECTED]
> Date sent:            Thu, 7 Oct 1999 20:12:25 -0400
> Subject:              chat fails due to diald bug?
> Send reply to:        [EMAIL PROTECTED]
> Copies to:            [EMAIL PROTECTED]
> 
> On my setup (LRP 2.9.4 running diald-99-1 and kernel 2.2.11), chat 
>  works fine when slip is the proxy device, but fails when using  
> ethertap: 
> 
> Oct  7 16:39:10 myrouter2 diald[538]: running '/usr/sbin/chat -v -f 
> /etc/chatscripts/provider' 
> Oct  7 16:39:10 myrouter2 chat[556]: Can't get terminal 
> parameters: Invalid argument 
> Oct  7 16:39:10 myrouter2 diald[538]: SIGCHLD[4]: pid 555 dial, 
> status 512 
> Oct  7 16:39:10 myrouter2 diald[538]: Connect script failed. 
> 
> strace shows chat dying when it is unable to open STDIN (file  
> descriptor zero): 
> 
> 556 <chat>   16:39:10 ioctl(0, TCGETS, 0xbffffcf8) = -1 EINVAL 
> (Invalid argument) 
> 556 <chat>   16:39:10 send(2, "<147>Oct  7 16:39:10 chat[556 
> <chat>]: "..., 80, 0) = 80 
> 556 <chat>   16:39:10 sigaction(SIGPIPE, {SIG_DFL}, NULL) = 0 
> 556 <chat>   16:39:10 _exit(2)                 = ? 
> 
> It seems diald is inadvertently closing the modem fd in run_shell  
> before it starts chat. Function run_shell closes closes file  
> descriptors 0, 1 and 2 (STDIN, STDOUT and STDERR) and then  
> creates new file descriptors for STDIN and STDOUT pointing to the  
> modem.   
> 
> The assumption appears to be that the modem fd will never be less 
>  than 3.   
> 
> Unfortunately, this appears not to be the case.    
> 
> strace shows diald returning a file descriptor of 2 for the modem  
> when ethertap is loaded: 
> 
> 538 <diald>   16:39:09 open("/dev/ttyS0", 
> O_RDWR|O_NONBLOCK) = 2 
> 
> 
> 
> 
> 
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-
> diald" in
> the body of a message to [EMAIL PROTECTED]
> 
> 
> -
> To unsubscribe from this list: send the line "unsubscribe linux-diald" in
> the body of a message to [EMAIL PROTECTED]
> 


-
To unsubscribe from this list: send the line "unsubscribe linux-diald" in
the body of a message to [EMAIL PROTECTED]

Reply via email to