X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=rdpsrv.c;fp=rdpsrv.cpp;h=5b1603d12f1919f0575a094b4523ba9dfd07ca67;hb=46f3372353ccdd654ef45f0b73128c16fb057e58;hp=ea4892fdea16e4760d026f86ea98db33172ff102;hpb=c905997e6c6ba2ab3fa6ed2cc5bad78d254e8104;p=rdpsrv diff --git a/rdpsrv.cpp b/rdpsrv.c similarity index 77% rename from rdpsrv.cpp rename to rdpsrv.c index ea4892f..5b1603d 100644 --- a/rdpsrv.cpp +++ b/rdpsrv.c @@ -6,23 +6,24 @@ #include #include -static const int RDP_PORT = 3389; +const int tcp_port_rdp = 3389; int create_server_socket(); +int serve_client(int sock); int main() { int server_sock = create_server_socket(); for ( ;; ) { - sockaddr_in sin; + struct sockaddr_in sin; socklen_t len; - int sock = accept(server_sock, (sockaddr *)&sin, &len); + int sock = accept(server_sock, (struct sockaddr *)&sin, &len); if (sock == -1) { perror("accept()"); exit(1); } - printf("Got socket.\n"); + serve_client(sock); close(sock); } @@ -40,7 +41,7 @@ int create_server_socket() addr.sin_family = AF_INET; addr.sin_addr.s_addr = INADDR_ANY; - addr.sin_port = htons(RDP_PORT); + addr.sin_port = htons(tcp_port_rdp); do { err = bind(server_sock, (struct sockaddr *)&addr, sizeof(struct sockaddr)); @@ -63,3 +64,13 @@ int create_server_socket() return server_sock; } + +int serve_client(int sock) +{ + for ( ;; ) { + unsigned char buf[4096]; + + /* receive ISO packets */ + + } +}