37 lines
664 B
Plaintext
37 lines
664 B
Plaintext
// Open server and client in 2 terminals:
|
|
// [1] q run examples/server
|
|
// [2] curl http://127.0.0.1:8080
|
|
import net
|
|
import sys
|
|
|
|
main() {
|
|
socket := sys.socket(2, 1, 0)
|
|
|
|
if socket < 0 {
|
|
sys.write(1, "socket error\n", 13)
|
|
sys.exit(1)
|
|
}
|
|
|
|
if net.bind(socket, 0x901F) != 0 {
|
|
sys.write(1, "bind error\n", 11)
|
|
sys.exit(1)
|
|
}
|
|
|
|
if sys.listen(socket, 128) != 0 {
|
|
sys.write(1, "listen error\n", 13)
|
|
sys.exit(1)
|
|
}
|
|
|
|
sys.write(1, "listening...\n", 13)
|
|
|
|
loop {
|
|
conn := sys.accept(socket, 0, 0)
|
|
|
|
if conn >= 0 {
|
|
sys.write(conn, "HTTP/1.0 200 OK\r\nContent-Length: 6\r\n\r\nHello\n", 44)
|
|
sys.close(conn)
|
|
} else {
|
|
sys.write(1, "error\n", 6)
|
|
}
|
|
}
|
|
} |