pas/src/main.go

44 lines
880 B
Go
Raw Normal View History

2024-06-08 20:28:43 +02:00
package main
import (
"bufio"
"fmt"
"log"
"net"
2024-07-14 04:49:21 +02:00
"exhq.dev/pas/src/Constants"
"exhq.dev/pas/src/helper"
"exhq.dev/pas/src/parser"
2024-06-08 20:28:43 +02:00
)
func main() {
2024-07-14 04:49:21 +02:00
ln, err := net.Listen("tcp", ":42069")
2024-06-08 20:28:43 +02:00
if err != nil {
log.Fatal(err)
}
2024-07-14 04:49:21 +02:00
fmt.Println("Listening on port 42069")
2024-06-08 20:28:43 +02:00
for {
conn, err := ln.Accept()
if err != nil {
log.Fatal(err)
}
2024-07-14 04:49:21 +02:00
message, err := helper.ReadUntilNullString(bufio.NewReader(conn))
2024-06-08 20:28:43 +02:00
if err != nil {
log.Fatal(err)
}
2024-07-14 04:49:21 +02:00
parsed := parser.ParseIntent(message)
if parsed.Path == "/" {
conn.Write(helper.StringToByteWithEnd(helper.IntentGenerator(Constants.OK, map[string]string{
"version": "0.69",
}) + "welcome to the first ever shitternet page"))
2024-06-08 20:28:43 +02:00
}
2024-07-14 04:49:21 +02:00
if parsed.Path == "/meow" {
conn.Write(helper.StringToByteWithEnd(helper.IntentGenerator(Constants.OK, map[string]string{
"version": "0.69",
}) + "meowmeow"))
2024-06-08 20:28:43 +02:00
}
}
}