Run packet writer in a turn to add proper error handling

This commit is contained in:
Tony Garnock-Jones 2021-06-09 14:53:41 +02:00
parent c40ba51a29
commit fff4b05036
1 changed files with 12 additions and 10 deletions

View File

@ -189,6 +189,8 @@
(when (null? (tunnel-relay-pending-turn-rev tr))
(queue-task! (actor-engine (facet-actor (tunnel-relay-facet tr)))
(lambda ()
(turn! (tunnel-relay-facet tr)
(action ()
(define pending (Turn (reverse (tunnel-relay-pending-turn-rev tr))))
(set-tunnel-relay-pending-turn-rev! tr '())
(log-info "OUT (parsed): ~v" pending)
@ -198,7 +200,7 @@
(preserve->bytes (->preserve pending)
#:canonicalizing? #t
#:write-annotations? #f
#:encode-embedded encode-embedded:protocol)))))
#:encode-embedded encode-embedded:protocol)))))))
(set-tunnel-relay-pending-turn-rev! tr (cons (TurnEvent (Oid oid) event)
(tunnel-relay-pending-turn-rev tr))))