1 |
/* |
/* |
2 |
rdesktop: A Remote Desktop Protocol client. |
rdesktop: A Remote Desktop Protocol client. |
3 |
Protocol services - TCP layer |
Protocol services - TCP layer |
4 |
Copyright (C) Matthew Chapman 1999-2002 |
Copyright (C) Matthew Chapman 1999-2005 |
5 |
|
|
6 |
This program is free software; you can redistribute it and/or modify |
This program is free software; you can redistribute it and/or modify |
7 |
it under the terms of the GNU General Public License as published by |
it under the terms of the GNU General Public License as published by |
148 |
hints.ai_family = AF_UNSPEC; |
hints.ai_family = AF_UNSPEC; |
149 |
hints.ai_socktype = SOCK_STREAM; |
hints.ai_socktype = SOCK_STREAM; |
150 |
|
|
151 |
if (getaddrinfo(server, tcp_port_rdp_s, &hints, &res)) |
if ((n = getaddrinfo(server, tcp_port_rdp_s, &hints, &res))) |
152 |
{ |
{ |
153 |
error("getaddrinfo: %s\n", gai_strerror(n)); |
error("getaddrinfo: %s\n", gai_strerror(n)); |
154 |
return False; |
return False; |
232 |
{ |
{ |
233 |
static char ipaddr[32]; |
static char ipaddr[32]; |
234 |
struct sockaddr_in sockaddr; |
struct sockaddr_in sockaddr; |
235 |
size_t len = sizeof(sockaddr); |
int len = sizeof(sockaddr); |
236 |
if (getsockname(sock, (struct sockaddr *) &sockaddr, &len) == 0) |
if (getsockname(sock, (struct sockaddr *) &sockaddr, &len) == 0) |
237 |
{ |
{ |
238 |
unsigned char *ip = (unsigned char *) &sockaddr.sin_addr; |
unsigned char *ip = (unsigned char *) &sockaddr.sin_addr; |