mirror of
https://github.com/logos-storage/logos-storage-nim-dht.git
synced 2026-01-08 00:13:07 +00:00
add recvFrom to fake DatagramTransport
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
This commit is contained in:
parent
cd1303f6c0
commit
3e0c2839b5
@ -37,14 +37,19 @@ when(true): #enable network emulator
|
|||||||
proc `$`*(transp: DatagramTransport): string =
|
proc `$`*(transp: DatagramTransport): string =
|
||||||
$transp.local
|
$transp.local
|
||||||
|
|
||||||
|
proc recvFrom[T](transp: DatagramTransport, remote: TransportAddress,
|
||||||
|
msg: sink seq[T], msglen = -1) =
|
||||||
|
#echo "recv from ", remote
|
||||||
|
{.gcsafe.}:
|
||||||
|
transp.ingress.addLast(msg)
|
||||||
|
# call the callback on remote
|
||||||
|
asyncCheck transp.callback(transp, remote)
|
||||||
|
|
||||||
proc sendTo*[T](transp: DatagramTransport, remote: TransportAddress,
|
proc sendTo*[T](transp: DatagramTransport, remote: TransportAddress,
|
||||||
msg: sink seq[T], msglen = -1) {.async.} =
|
msg: sink seq[T], msglen = -1) {.async.} =
|
||||||
#echo "sending to ", remote
|
#echo "sending to ", remote
|
||||||
{.gcsafe.}:
|
{.gcsafe.}:
|
||||||
network[remote.port].ingress.addLast(msg)
|
network[remote.port].recvFrom(transp.local, msg)
|
||||||
# call the callback on remote
|
|
||||||
asyncCheck network[remote.port].function(network[remote.port], transp.local)
|
|
||||||
|
|
||||||
|
|
||||||
proc getMessage*(t: DatagramTransport,): seq[byte] {.
|
proc getMessage*(t: DatagramTransport,): seq[byte] {.
|
||||||
raises: [Defect, CatchableError].} =
|
raises: [Defect, CatchableError].} =
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user