From 75d40c7abc44b833741074754eee9d66f479761f Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Mon, 11 Jun 2012 12:27:17 -0400 Subject: [PATCH] Always listen for EOF, even if we have no inbound credit. --- os2-tcp.rkt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/os2-tcp.rkt b/os2-tcp.rkt index 4a306a9..17a05e3 100644 --- a/os2-tcp.rkt +++ b/os2-tcp.rkt @@ -202,6 +202,11 @@ (extend-transition (adjust-credit state (- len)) (send-message (tcp-channel remote-addr local-addr bs)))])]))))) (transition (tcp-connection-state 'bytes 0) + (role 'explicit-eof-listener (topic-subscriber (cons (eof-evt cin) (wild))) + #:state state + [(cons (? evt?) _) + (close-transition state #t)]) + (role 'outbound-relay (topic-subscriber (tcp-channel local-addr remote-addr (wild))) #:state state #:on-absence (close-transition state #f)