From aa57cfdf36407148af613e5633e264a22c4459de Mon Sep 17 00:00:00 2001 From: sinanmohd Date: Sat, 6 Jul 2024 17:57:56 +0530 Subject: api: init --- api/main.go | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 api/main.go (limited to 'api') diff --git a/api/main.go b/api/main.go new file mode 100644 index 0000000..5ce05c1 --- /dev/null +++ b/api/main.go @@ -0,0 +1,46 @@ +package api + +import ( + "log" + "net" + + "sinanmohd.com/redq/usage" +) + +const sockPath = "/tmp/redq_ebpf.sock" + +type Api struct { + sock net.Listener +} + +func (a *Api) Init() error { + var err error + + a.sock, err = net.Listen("unix", sockPath) + if err != nil { + log.Printf("listening on unix socket: %s", err) + return err + } + + return nil +} + +func handleConn(conn net.Conn) { + defer conn.Close() +} + +func (a *Api) Run(u *usage.Usage) { + for { + conn, err := a.sock.Accept() + if err != nil { + log.Printf("accepting connection: %s", err) + continue + } + + go handleConn(conn) + } +} + +func (a *Api) CleanUp() { + a.sock.Close() +} -- cgit v1.2.3