X-Git-Url: https://git.sesse.net/?p=rdpsrv;a=blobdiff_plain;f=iso.c;h=c694624962c6bb90d68262dfa02606542d951ec1;hp=26e967b384560fbe790d92e047ac8e57e9354d33;hb=d4bb133e346809bf5393c0cdb06b2a422b99dddb;hpb=46f3372353ccdd654ef45f0b73128c16fb057e58 diff --git a/iso.c b/iso.c index 26e967b..c694624 100644 --- a/iso.c +++ b/iso.c @@ -182,28 +182,27 @@ iso_recv(void) return s; } -/* Establish a connection up to the ISO layer */ BOOL -iso_connect(char *server, char *username) +iso_recv_connect(int server_sock) { + STREAM s; uint8 code; - if (!tcp_connect(server)) - return False; - - iso_send_connection_request(username); - - if (iso_recv_msg(&code) == NULL) - return False; + tcp_recv_connect(server_sock); + + s = iso_recv_msg(&code); + if (s == NULL) + return 0; - if (code != ISO_PDU_CC) + if (code != ISO_PDU_CR) { - error("expected CC, got 0x%x\n", code); - tcp_disconnect(); - return False; + error("expected CR, got 0x%x\n", code); + return 0; } - return True; + DEBUG(("Got ISO connection request\n")); + + return 1; } /* Disconnect from the ISO layer */