I'm trying to use an open source MSN messenger(tmsnc oldest version) and it is out of support right now.
The problem is in socket part it is trying to connect hotmail.messenger.com (as host address) which is not supported any more, I searched about that and some guys were suggested to use
Quote:
messenger.hotmail.geo.msnmessenger.msn.com.akadns.net
instead but after it gives me the server in other parts such as send() it gives me connection reset by peer error or sometimes even cannot bind it.
Is that even possible to fix it? may by replacing other server or ...
What I have tried:
commented part is mine where i tried to simulate source part using getaddrinfo() and loop to find may a good result but in that way even it cannot bind.
int tcp_connect(char *server, int port)
{
struct sockaddr_in localAddr, servAddr;
struct hostent *h;
int rc;
int sd;
h = gethostbyname(server);
if(h==NULL)
return -1;
servAddr.sin_family = h->h_addrtype;
memcpy((char *) &servAddr.sin_addr.s_addr, h->h_addr_list[0], h->h_length);
servAddr.sin_port = htons(port);
sd = socket(AF_INET, SOCK_STREAM, 0);
if(sd<0)
return -1;
localAddr.sin_family = AF_INET;
localAddr.sin_addr.s_addr = htonl(INADDR_ANY);
localAddr.sin_port = htons(0);
rc = bind(sd, (struct sockaddr *) &localAddr, sizeof(localAddr));
if(rc<0)
return -1;
rc = connect(sd, (struct sockaddr *) &servAddr, sizeof(servAddr));
if(rc<0)
return -1;
return sd;
}