diff options
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/client/main.go | 14 | ||||
| -rw-r--r-- | cmd/daemon/main.go | 16 | ||||
| -rw-r--r-- | cmd/test/main.go | 34 |
3 files changed, 44 insertions, 20 deletions
diff --git a/cmd/client/main.go b/cmd/client/main.go index a229632..8bb1c24 100644 --- a/cmd/client/main.go +++ b/cmd/client/main.go @@ -23,17 +23,19 @@ func main() { } defer conn.Close() - go ping(conn) - if err := core.Loop(conn); err != nil { - log.Fatal("event loop error ", err) - } + ping(conn) } func ping(conn net.Conn) { for { log.Print("ping") - p := core.Ping{} - core.Send(conn, core.TypePing, p) + data, err := core.Encode(core.Ping{}) + if err != nil { + panic(err) + } + if _, err := conn.Write(data); err != nil { + panic(err) + } time.Sleep(time.Second) } } diff --git a/cmd/daemon/main.go b/cmd/daemon/main.go index b344caf..b55cc69 100644 --- a/cmd/daemon/main.go +++ b/cmd/daemon/main.go @@ -31,21 +31,9 @@ func listen() error { if err != nil { log.Print("cannot accept connection: ", err) } - go handle(conn) - } -} - -func handle(conn net.Conn) { - log.Print("received connection from: ", conn.RemoteAddr()) - hs := core.Handshake{Version: 0x0} - - if err := core.Send(conn, core.TypeHandshake, hs); err != nil { - log.Print("cannot send handshake ", err) - return - } + log.Print("received connection from: ", conn.RemoteAddr()) - if err := core.Loop(conn); err != nil { - log.Fatal("event loop error ", err) + go core.ReadConnection(conn) } } diff --git a/cmd/test/main.go b/cmd/test/main.go new file mode 100644 index 0000000..e580b63 --- /dev/null +++ b/cmd/test/main.go @@ -0,0 +1,34 @@ +package main + +import ( + "fmt" + "time" + + "git.sr.ht/~rctt/solecd/core" +) + +func main() { + in := core.Test{ + Num1: 1, + Time1: time.Now(), + Str1: "test string", + Num2: 2, + Bin1: []byte{0x01, 0x02, 0x03}, + Num3: 3, + Str2: "こんにちは", + Num4: 4, + } + + data, err := core.Encode(in) + if err != nil { + panic(err) + } + + fmt.Printf("% X\n", data) + out, err := core.Decode(data) + if err != nil { + panic(err) + } + + fmt.Printf("%+v\n", out) +} |
