gosl/cmd/Server.go

51 lines
830 B
Go
Raw Normal View History

2016-01-18 23:19:51 +01:00
package cmd // code.bitsetter.de/fun/gosl/cmd
import (
"fmt"
2016-01-19 16:51:50 +01:00
"log"
"net"
2016-01-18 23:19:51 +01:00
"github.com/spf13/cobra"
2016-01-19 16:38:15 +01:00
"code.bitsetter.de/fun/gosl/data"
2016-01-18 23:19:51 +01:00
)
var cmdServer = &cobra.Command{
Use: "server",
Short: "Runs Gosl as a server",
Long: "Runs Gosl as a server",
// Run:
}
2016-01-19 16:51:50 +01:00
func handleConn(conn *net.TCPConn) {
log.Println("Got a connection!")
conn.Close()
}
2016-01-18 23:19:51 +01:00
func runServer(cmd *cobra.Command, args []string) {
fmt.Println("running server ...")
2016-01-19 16:51:50 +01:00
listener, err := net.ListenTCP("tcp", &net.TCPAddr{Port: 8989})
if err != nil {
log.Fatal(err)
panic("Could not open Listener")
}
defer listener.Close()
for {
conn, err := listener.AcceptTCP()
if err != nil {
log.Fatal(err)
panic("Listener could not accept connection!")
}
go handleConn(conn)
}
2016-01-19 16:38:15 +01:00
data.TestNC()
2016-01-18 23:19:51 +01:00
}
func init() {
cmdServer.Run = runServer
}