Resolve port and server

This commit is contained in:
Bolke de Bruin 2020-06-30 10:49:43 +02:00
parent 62afbe6146
commit 3914adf345

10
rdg.go
View file

@ -119,6 +119,7 @@ func (s RdgSession) RdgHandshake(next http.Handler) http.Handler {
rw.Writer.Flush() rw.Writer.Flush()
} else if r.Method == MethodRDGIN { } else if r.Method == MethodRDGIN {
if s.ConnIn == nil { if s.ConnIn == nil {
defer conn.Close()
s.ConnIn = conn s.ConnIn = conn
s.BufIn = rw.Reader s.BufIn = rw.Reader
log.Printf("Opening RDGIN for client %s", conn.RemoteAddr().String()) log.Printf("Opening RDGIN for client %s", conn.RemoteAddr().String())
@ -148,7 +149,7 @@ func (s RdgSession) RdgHandshake(next http.Handler) http.Handler {
case PKT_TYPE_CHANNEL_CREATE: case PKT_TYPE_CHANNEL_CREATE:
server, port := readChannelCreateRequest(packet) server, port := readChannelCreateRequest(packet)
var err error var err error
s.Remote, err = net.Dial("tcp", "localhost:3389") s.Remote, err = net.Dial("tcp", net.JoinHostPort(server, strconv.Itoa(int(port))))
if err != nil { if err != nil {
log.Printf("Error connecting to %s, %d, %s", server, port, err) log.Printf("Error connecting to %s, %d, %s", server, port, err)
return return
@ -246,9 +247,11 @@ func readCreateTunnelRequest(data []byte) (caps uint32, cookie string){
if fields == HTTP_TUNNEL_PACKET_FIELD_PAA_COOKIE { if fields == HTTP_TUNNEL_PACKET_FIELD_PAA_COOKIE {
var size uint16 var size uint16
binary.Read(r, binary.LittleEndian, &size) binary.Read(r, binary.LittleEndian, &size)
// skip decoding paa for now cookieB := make([]byte, size)
r.Read(cookieB)
cookie, _ = DecodeUTF16(cookieB)
} }
log.Printf("Create tunnel caps: %d", caps) log.Printf("Create tunnel caps: %d, cookie: %s", caps, cookie)
return return
} }
@ -354,6 +357,7 @@ func receiveDataPacket(conn net.Conn, data []byte) {
} }
func sendDataPacket(conn net.Conn, w *bufio.Writer) { func sendDataPacket(conn net.Conn, w *bufio.Writer) {
defer conn.Close()
b1 := new(bytes.Buffer) b1 := new(bytes.Buffer)
buf := make([]byte, 32767) buf := make([]byte, 32767)
for { for {