blob: da9b4bf8764c2316cbec2689a4ce49e6e773771b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
# Example of a udp server listening on ipv6 which sends a response
# Note that on many hosts, this will also respond to ipv4 requests too
# Listen on port 20000.
set s [socket -ipv6 dgram.server {[::]:20000}]
# For each request...
$s readable {
# Get the request (max 80 chars) - need the source address
set buf [$s recvfrom 80 addr]
puts -nonewline "read '$buf' from $addr"
try {
set result "$buf = [expr $buf]"
} on error {msg} {
set result "Error: $buf => $msg"
}
puts ", sending '$result'"
# Send the result back to where it came from
$s sendto $result $addr
}
vwait done
|