[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet-scheme] 221/324: mq-impl/stream: Delay knowing the port.
From: |
gnunet |
Subject: |
[gnunet-scheme] 221/324: mq-impl/stream: Delay knowing the port. |
Date: |
Tue, 21 Sep 2021 13:24:21 +0200 |
This is an automated email from the git hooks/post-receive script.
maxime-devos pushed a commit to branch master
in repository gnunet-scheme.
commit b8183f5894602fd8f848dc8be9772608fc97a647
Author: Maxime Devos <maximedevos@telenet.be>
AuthorDate: Wed Sep 1 20:08:05 2021 +0200
mq-impl/stream: Delay knowing the port.
* gnu/gnunet/mq-impl/stream.scm
(prepare-port-message-queue): Remove 'port' argument.
(prepare-port-message-queue)[start-reader!,start-writer!]:
Add 'port' argument'
(port->message-queue): Adjust caller.
---
gnu/gnunet/mq-impl/stream.scm | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/gnu/gnunet/mq-impl/stream.scm b/gnu/gnunet/mq-impl/stream.scm
index 3a34c37..bcee0b0 100644
--- a/gnu/gnunet/mq-impl/stream.scm
+++ b/gnu/gnunet/mq-impl/stream.scm
@@ -260,7 +260,7 @@ an appropriate @code{&undefined-key-error} is raised."
(retry))))
;; See 'port->message-queue'. Also used by connect/fibers.
- (define* (prepare-port-message-queue port spawn)
+ (define* (prepare-port-message-queue spawn)
;; TODO: closing message queues
(define rcvar (make-repeated-condition))
(define (interrupt! mq)
@@ -270,7 +270,7 @@ an appropriate @code{&undefined-key-error} is raised."
;; it informs the other fiber by signalling the condition and injects
;; an appropriate error, unless the other fiber will do it already.
(define closed-condition (make-condition))
- (define (start-reader! mq)
+ (define (start-reader! mq port)
(define-values (key . rest)
(let/ec escape
(define wait-op
@@ -289,7 +289,7 @@ an appropriate @code{&undefined-key-error} is raised."
(handle-input! mq port #:return values))))
(when (signal-condition! closed-condition)
(apply inject-error! mq key rest)))
- (define (start-writer! mq)
+ (define (start-writer! mq port)
(let/ec escape
;; operation for calling the escape continuation when
;; when the other fiber detected the connection is broken
@@ -328,9 +328,9 @@ an appropriate @code{&undefined-key-error} is raised."
(handle-output! mq port wait!)))
(when (signal-condition! closed-condition)
(inject-error! mq 'input:regular-end-of-file)))
- (values (lambda (mq)
- (spawn (lambda () (start-reader! mq)))
- (spawn (lambda () (start-writer! mq))))
+ (values (lambda (mq port)
+ (spawn (lambda () (start-reader! mq port)))
+ (spawn (lambda () (start-writer! mq port))))
;; Pass this to make-message-queue as the 'sender'.
interrupt!))
@@ -347,10 +347,10 @@ is injected. A half-duplex port is treated as a broken
connection.
XXX: half-duplex connections cannot always be detected
XXX: Likewise for connect/fibers?"
(define-values (start-fibers interrupt!)
- (prepare-port-message-queue port spawn))
+ (prepare-port-message-queue spawn))
(define mq
(make-message-queue handlers error-handler interrupt!))
- (start-fibers mq)
+ (start-fibers mq port)
mq)
(define* (connect/fibers config service-name handlers error-handler
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [gnunet-scheme] 223/324: mq,doc: Update TODOs about message queues., (continued)
- [gnunet-scheme] 223/324: mq,doc: Update TODOs about message queues., gnunet, 2021/09/21
- [gnunet-scheme] 224/324: doc: Don't forget the message verifier., gnunet, 2021/09/21
- [gnunet-scheme] 225/324: mq: Inject errors when message verification has negative result., gnunet, 2021/09/21
- [gnunet-scheme] 234/324: doc: Remove resolved TODO., gnunet, 2021/09/21
- [gnunet-scheme] 240/324: mq-impl/stream: Handle ECONNRESET gracefully., gnunet, 2021/09/21
- [gnunet-scheme] 238/324: mq-impl/stream: Allow closing queues made with connect-fibers., gnunet, 2021/09/21
- [gnunet-scheme] 244/324: doc: Document the 'disconnected' callback., gnunet, 2021/09/21
- [gnunet-scheme] 246/324: mq,mq-impl: Remove TODOs about allocating memory., gnunet, 2021/09/21
- [gnunet-scheme] 245/324: mq-impl/stream: Eliminate 'return' argument of 'handle-input!'., gnunet, 2021/09/21
- [gnunet-scheme] 251/324: tests/utils: Move call-with-spawner from tests/mq-stream.scm., gnunet, 2021/09/21
- [gnunet-scheme] 221/324: mq-impl/stream: Delay knowing the port.,
gnunet <=
- [gnunet-scheme] 228/324: doc/fdl: Correct ‘quote’ typography., gnunet, 2021/09/21
- [gnunet-scheme] 231/324: doc: Document message verifiers., gnunet, 2021/09/21
- [gnunet-scheme] 236/324: mq-impl/stream: Close the port when stopping the fibers., gnunet, 2021/09/21
- [gnunet-scheme] 242/324: nse/client: Remove unused fields., gnunet, 2021/09/21
- [gnunet-scheme] 243/324: doc/scheme-gnunet.tm: Correct use of 'connected' and 'updated'., gnunet, 2021/09/21
- [gnunet-scheme] 237/324: mq-impl/stream: Allow closing the queue on request., gnunet, 2021/09/21
- [gnunet-scheme] 247/324: nse/client: Only call 'send-start!' after 'mq' has been defined., gnunet, 2021/09/21
- [gnunet-scheme] 248/324: tests/mq-stream: Add missing parenthesis., gnunet, 2021/09/21
- [gnunet-scheme] 249/324: nse/client: Prepare for auto-reconnecting., gnunet, 2021/09/21
- [gnunet-scheme] 250/324: doc: Document that (gnu gnunet nse client) reconnects., gnunet, 2021/09/21