net
Low-level TCP client/server and DNS lookup using raw POSIX sockets.
Import
import netFunctions
net.tcp_connect(host: str, port: int) -> conn
Open a TCP connection to host:port, returning a connection object.
net.tcp_listen(port: int) -> listener
Bind and listen on the given TCP port, returning a listener object.
net.resolve(host: str) -> str
DNS lookup - resolve a hostname to an IP address string.
Examples
import net
-- DNS lookup
let ip = net.resolve("example.com")
println(ip)
-- TCP client
let conn = net.tcp_connect("example.com", 80)
conn.write("GET / HTTP/1.0\r\nHost: example.com\r\n\r\n")
let resp = conn.read()
println(resp)
conn.close()
-- TCP server
let srv = net.tcp_listen(8080)
let client = srv.accept()
let msg = client.read()
client.write("echo: {msg}")
client.close()