chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-users] Tcp bug report


From: Reed Sheridan
Subject: [Chicken-users] Tcp bug report
Date: Wed, 28 Sep 2005 01:21:40 -0500

Hi,

The ports returned by tcp-accept don't handle broken pipes. 

Server:
(define l (tcp-listen 3000))
(define-values (si so) (tcp-accept l))

Client:
(define-values (i o) (tcp-connect "localhost" 3000))
(close-input-port i)
(close-output-port o)

Server:
(display "foo" so)
(display "foo" so)

Process scheme broken pipe

With (set-signal-mask! (list signal/pipe)) you get a Chicken error instead of a dead process.  Is there a compelling reason not to make this the default?  I don't really know what other effects masking the signal has, but a little googling shows that this is the most common way to deal with this problem.

Reed Sheridan

reply via email to

[Prev in Thread] Current Thread [Next in Thread]