18 lines
618 B
Plaintext
18 lines
618 B
Plaintext
func main[] : i64
|
|
s : net.UDPSocket = must(net.create_udp_server?(net.pack_addr(127, 0, 0, 1), 8000))
|
|
|
|
io.println("Listening on port 8000...")
|
|
while true
|
|
pkt := net.udp_receive(s, 60000)
|
|
if pkt->size <= 0
|
|
net.UDPPacket.free(pkt)
|
|
continue
|
|
|
|
io.printf("%d.%d.%d.%d:%d\n", pkt->source_addr[4], pkt->source_addr[5], pkt->source_addr[6], pkt->source_addr[7], mem.read16be(pkt->source_addr + 2))
|
|
|
|
io.print_sized(pkt->data, pkt->size)
|
|
io.println("")
|
|
|
|
net.udp_send_to(s, pkt->source_addr, pkt->data, pkt->size)
|
|
net.UDPPacket.free(pkt)
|