summaryrefslogtreecommitdiffhomepage
path: root/src/main.go
blob: 7c589721ee115ec9c816bd91a8c8254504d4fe26 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package main

import (
	"log"
	"net"
)

/*
 *
 * TODO: Fix logging
 */

func main() {
	// Open TUN device

	// TODO: Fix capabilities

	tun, err := CreateTUN("test0")
	log.Println(tun, err)
	if err != nil {
		return
	}

	device := NewDevice(tun)

	// Start configuration lister

	l, err := net.Listen("unix", "/var/run/wireguard/wg0.sock")
	if err != nil {
		log.Fatal("listen error:", err)
	}

	for {
		fd, err := l.Accept()
		if err != nil {
			log.Fatal("accept error:", err)
		}
		go func(conn net.Conn) {
			err := ipcListen(device, conn)
			log.Println(err)
		}(fd)
	}
}