diff --git a/cmd/Server.go b/cmd/Server.go index df5d698..23a031e 100644 --- a/cmd/Server.go +++ b/cmd/Server.go @@ -1,6 +1,7 @@ package cmd // code.bitsetter.de/fun/gosl/cmd import ( + "encoding/gob" "fmt" "log" "net" @@ -13,14 +14,22 @@ import ( var cmdServer = &cobra.Command{ Use: "server", Short: "Runs Gosl as a server", - Long: "Runs Gosl as a server", + Long: `Runs Gosl as a server + +[TODO:] +gosl.json for configuration (Port/Adress, Level) +`, // Run: } func handleConn(conn *net.TCPConn) { - log.Println("Got a connection!") - conn.Close() + log.Println("Got a connection from: ", conn.RemoteAddr().String()) + gobd := gob.NewDecoder(conn) + var h data.Handshake + gobd.Decode(&h) + log.Println(h) + conn.Close() } func runServer(cmd *cobra.Command, args []string) { diff --git a/data/Network.go b/data/Network.go new file mode 100644 index 0000000..eac611a --- /dev/null +++ b/data/Network.go @@ -0,0 +1,14 @@ +package data // code.bitsetter.de/fun/gosl/data + +import ( + "strconv" +) + +type Handshake struct { + Client int + Name string +} + +func (h Handshake) String() string { + return (h.Name + ": " + strconv.Itoa(h.Client)) +} diff --git a/gosl b/gosl index a9e599d..9e83a8e 100755 Binary files a/gosl and b/gosl differ