DNS reading timeout?
[1/5] from: mat::b::codeplay::com at: 22-Aug-2001 18:13
Heya,
system/schemes/default/timeout doesn't work for reads from the DNS://
protocol?
Regards,
Mat Bettinson
Codeplay
Tel: +44 (0)20 7482 3382
140-142 Kentish Town Rd, London, NW1 9QB
http://www.codeplay.com
[2/5] from: holger:rebol at: 22-Aug-2001 10:31
On Wed, Aug 22, 2001 at 06:13:51PM +0100, Mat Bettinson wrote:
> Heya,
>
> system/schemes/default/timeout doesn't work for reads from the DNS://
> protocol?
system/schemes/default/timeout only applies to reading from open TCP or
UDP ports, directly or indirectly. "Indirectly" refers to situations where
a TCP or UDP port is used in the implementation of another port, such as FTP
or HTTP.
Any other types of timeouts (writing, connecting, closing a TCP port, DNS etc.)
are determined by the operating system (and, in some cases, by the protocol
being used), and are not affected by system/schemes/default/timeout.
--
Holger Kruse
[holger--rebol--com]
[3/5] from: mat:b:codeplay at: 22-Aug-2001 18:45
Hello Holger,
HK> Any other types of timeouts (writing, connecting, closing a TCP port, DNS etc.)
HK> are determined by the operating system (and, in some cases, by the protocol
HK> being used), and are not affected by system/schemes/default/timeout.
Ahh rats. My log file processor is going to take a LONG time to run on
Windows...
Regards,
Mat Bettinson
Codeplay
Tel: +44 (0)20 7482 3382
140-142 Kentish Town Rd, London, NW1 9QB
http://www.codeplay.com
[4/5] from: fsievert:uos at: 22-Aug-2001 22:02
You an open some async dns-ports:
dns: []
loop 10 [
append dns open dns:///async
]
Now you need some work. You can wait for the ports with
wait/all dns
and you will receive the data. You can save the query-string in the
user-data - field of the ports.
You will need to build some timeout-handling yourself.
Hope that helps,
Frank
On Wed, 22 Aug 2001, Mat Bettinson wrote:
[5/5] from: fsievert:uos at: 22-Aug-2001 22:10
... and if you only want timeout, you can do this:
to-receive: ["www.uos.de" "www.amiga.de" "www.rebol.com"]
timeout: 2
dns: open dns:///async
foreach val to-receive [
insert dns val
either wait [dns timeout] [
print [val copy dns]
] [
print ["timeout:" val]
close dns
dns: open dns:///async
]
]
close dns
On Wed, 22 Aug 2001, Mat Bettinson wrote: