2020-06-14 16:27:57 +02:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
2020-06-14 16:32:21 +02:00
|
|
|
"bufio"
|
2020-06-14 22:39:17 +02:00
|
|
|
"encoding/binary"
|
2020-06-14 16:27:57 +02:00
|
|
|
"net"
|
|
|
|
)
|
|
|
|
|
|
|
|
func main() {
|
2020-06-14 16:32:21 +02:00
|
|
|
conn, err := net.Dial("tcp", "poop.siteop.biz:3977")
|
2020-06-14 16:27:57 +02:00
|
|
|
failError(err, "net.Dial")
|
|
|
|
logInfoDebug("Connected to poop.siteop.biz:3977")
|
2020-06-14 16:44:40 +02:00
|
|
|
|
|
|
|
//send auth
|
|
|
|
p := PacketAdminJoin{
|
2020-06-14 16:48:00 +02:00
|
|
|
Packet: Packet{PType: AdminPacketAdminJoin},
|
2020-06-14 17:13:25 +02:00
|
|
|
Password: "plop",
|
|
|
|
AppName: "gottdad",
|
|
|
|
AppVersion: "alpha",
|
2020-06-14 16:44:40 +02:00
|
|
|
}
|
|
|
|
_, err = conn.Write(p.Bytes())
|
|
|
|
failError(err, "conn.Write")
|
2020-06-14 17:38:25 +02:00
|
|
|
logInfoDebug("Authentication sent (%v)", p.Bytes())
|
2020-06-14 22:16:39 +02:00
|
|
|
r := bufio.NewReader(conn)
|
2020-06-14 22:39:17 +02:00
|
|
|
b := make([]byte, 0xFFFF)
|
|
|
|
read := 0
|
|
|
|
n := 0
|
2020-06-14 16:44:40 +02:00
|
|
|
|
2020-06-14 22:39:17 +02:00
|
|
|
for {
|
|
|
|
p := Packet{}
|
2020-06-14 22:05:45 +02:00
|
|
|
|
|
|
|
for {
|
2020-06-14 22:39:17 +02:00
|
|
|
n, err = r.Read(b[read:])
|
|
|
|
logErrorDebug(err, "r.Read")
|
|
|
|
read += n
|
|
|
|
if read >= 3 {
|
2020-06-14 22:05:45 +02:00
|
|
|
break
|
|
|
|
}
|
2020-06-14 22:39:17 +02:00
|
|
|
}
|
|
|
|
p.PLength = binary.LittleEndian.Uint16(b[0:])
|
|
|
|
p.PType = b[2]
|
|
|
|
if p.PLength <= 3 {
|
|
|
|
logInfoAlert("Wrong packet length")
|
|
|
|
break
|
|
|
|
}
|
2020-06-14 22:20:19 +02:00
|
|
|
|
2020-06-14 22:39:17 +02:00
|
|
|
for {
|
|
|
|
n, err = r.Read(b[read:])
|
|
|
|
logErrorDebug(err, "r.Read")
|
|
|
|
read += n
|
|
|
|
if read >= p.PLength {
|
|
|
|
break
|
|
|
|
}
|
2020-06-14 22:20:19 +02:00
|
|
|
}
|
2020-06-14 22:39:17 +02:00
|
|
|
|
|
|
|
logInfoDebug("Packet read : len : %d / type : %d", p.PLength, p.PType)
|
|
|
|
c := make([]byte, 0xFFFF)
|
|
|
|
copy(c, b[p.PLength:])
|
|
|
|
b = c
|
|
|
|
read -= p.PLength
|
|
|
|
}
|
|
|
|
|
2020-06-14 16:27:57 +02:00
|
|
|
}
|