mirror of
https://github.com/yv1ing/rdp_channel.git
synced 2025-09-16 14:59:08 +08:00
完成X.224协议协商部分
This commit is contained in:
60
protocol/x224/x224_test.go
Normal file
60
protocol/x224/x224_test.go
Normal file
@@ -0,0 +1,60 @@
|
||||
package x224
|
||||
|
||||
import (
|
||||
"net"
|
||||
"rdp_channel/protocol/tpkt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestX224(t *testing.T) {
|
||||
go runServer(t)
|
||||
runClient(t)
|
||||
}
|
||||
|
||||
func runServer(t *testing.T) {
|
||||
listener, err := net.Listen("tcp", "127.0.0.1:3388")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer listener.Close()
|
||||
|
||||
for {
|
||||
conn, err := listener.Accept()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
go func(conn net.Conn) {
|
||||
defer conn.Close()
|
||||
|
||||
transport := tpkt.New(conn)
|
||||
x224 := New(transport)
|
||||
|
||||
_, packet, err := x224.Read()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
err = x224.handleConnectionRequest(packet)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}(conn)
|
||||
}
|
||||
}
|
||||
|
||||
func runClient(t *testing.T) {
|
||||
conn, err := net.Dial("tcp", "127.0.0.1:3388")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer conn.Close()
|
||||
|
||||
transport := tpkt.New(conn)
|
||||
x224 := New(transport)
|
||||
|
||||
err = x224.ConnectToServer()
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user