Click here to Skip to main content
15,914,350 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Socket Not Connecting (Weird) Pin
Mark Salsbery11-Jan-07 15:29
Mark Salsbery11-Jan-07 15:29 
GeneralMessage Removed Pin
11-Jan-07 15:35
Armond Sarkisian11-Jan-07 15:35 
GeneralRe: Socket Not Connecting (Weird) Pin
Mark Salsbery11-Jan-07 15:45
Mark Salsbery11-Jan-07 15:45 
GeneralMessage Removed Pin
11-Jan-07 15:50
Armond Sarkisian11-Jan-07 15:50 
GeneralRe: Socket Not Connecting (Weird) Pin
Mark Salsbery11-Jan-07 15:54
Mark Salsbery11-Jan-07 15:54 
GeneralMessage Removed Pin
11-Jan-07 15:56
Armond Sarkisian11-Jan-07 15:56 
GeneralMessage Removed Pin
11-Jan-07 16:00
Armond Sarkisian11-Jan-07 16:00 
GeneralRe: Socket Not Connecting (Weird) Pin
Mark Salsbery11-Jan-07 16:35
Mark Salsbery11-Jan-07 16:35 
Armond Sarkisian wrote:
Can I zip up all four files and send it to you?


Before we do that, try this...I just connected to google.com - 3 different ip addresses returned
by DNS. step through this in the debugger. Notice I'm using ALL the info returned by getaddrinfo
to do the socket() and connect() calls. Does this all succeed for you?
char* ip = "google.com";
char* port = "80";
struct addrinfo aiHints;
struct addrinfo *aiList = NULL;
int retVal;
sockaddr addr;
 
memset(&aiHints, 0, sizeof(aiHints));
aiHints.ai_family = AF_INET;
aiHints.ai_socktype = SOCK_STREAM;
aiHints.ai_protocol = IPPROTO_TCP;
 
if ((retVal = getaddrinfo(ip, port, &aiHints, &aiList)) != 0) 
{
  printf("getaddrinfo() failed.\n");
}
else
{
	int SockErr;
 
	addrinfo *pAddrInfo = aiList;
	while (pAddrInfo)
	{
		addr = *pAddrInfo->ai_addr;
 
		SOCKET s = socket(pAddrInfo->ai_family, pAddrInfo->ai_socktype, pAddrInfo->ai_protocol);
 
		if (s != INVALID_SOCKET)
		{
			if (SOCKET_ERROR == connect(s, &addr, sizeof(sockaddr)))
			{
				SockErr = WSAGetLastError();
			}
			closesocket(s);
		}
		else
		{
			SockErr = WSAGetLastError();
		}
 
		pAddrInfo = pAddrInfo->ai_next;
	}
}


Same code without /pre tags...

char* ip = "google.com";
char* port = "80";
struct addrinfo aiHints;
struct addrinfo *aiList = NULL;
int retVal;
sockaddr addr;

memset(&aiHints, 0, sizeof(aiHints));
aiHints.ai_family = AF_INET;
aiHints.ai_socktype = SOCK_STREAM;
aiHints.ai_protocol = IPPROTO_TCP;

if ((retVal = getaddrinfo(ip, port, &aiHints, &aiList)) != 0)
{
printf("getaddrinfo() failed.\n");
}
else
{
int SockErr;

addrinfo *pAddrInfo = aiList;
while (pAddrInfo)
{
addr = *pAddrInfo->ai_addr;

SOCKET s = socket(pAddrInfo->ai_family, pAddrInfo->ai_socktype, pAddrInfo->ai_protocol);

if (s != INVALID_SOCKET)
{
if (SOCKET_ERROR == connect(s, &addr, sizeof(sockaddr)))
{
SockErr = WSAGetLastError();
}
closesocket(s);
}
else
{
SockErr = WSAGetLastError();
}

pAddrInfo = pAddrInfo->ai_next;
}
}
GeneralRe: Socket Not Connecting (Weird) Pin
Mark Salsbery11-Jan-07 16:02
Mark Salsbery11-Jan-07 16:02 
GeneralMessage Removed Pin
11-Jan-07 16:07
Armond Sarkisian11-Jan-07 16:07 
GeneralMessage Removed Pin
11-Jan-07 16:24
Armond Sarkisian11-Jan-07 16:24 
GeneralRe: Socket Not Connecting (Weird) Pin
Mark Salsbery11-Jan-07 18:25
Mark Salsbery11-Jan-07 18:25 
QuestionVFW Device selection Pin
tanffn_aj11-Jan-07 6:16
tanffn_aj11-Jan-07 6:16 
AnswerRe: VFW Device selection Pin
Mark Salsbery11-Jan-07 6:25
Mark Salsbery11-Jan-07 6:25 
GeneralRe: VFW Device selection Pin
tanffn_aj11-Jan-07 7:10
tanffn_aj11-Jan-07 7:10 
GeneralRe: VFW Device selection Pin
Mark Salsbery11-Jan-07 7:21
Mark Salsbery11-Jan-07 7:21 
GeneralRe: VFW Device selection Pin
tanffn_aj11-Jan-07 8:00
tanffn_aj11-Jan-07 8:00 
GeneralRe: VFW Device selection Pin
Mark Salsbery11-Jan-07 8:15
Mark Salsbery11-Jan-07 8:15 
GeneralRe: VFW Device selection Pin
tanffn_aj11-Jan-07 8:35
tanffn_aj11-Jan-07 8:35 
GeneralRe: VFW Device selection Pin
Mark Salsbery11-Jan-07 8:46
Mark Salsbery11-Jan-07 8:46 
GeneralRe: VFW Device selection Pin
tanffn_aj13-Jan-07 23:57
tanffn_aj13-Jan-07 23:57 
QuestionProblem with ODBC connection Pin
Jackson8611-Jan-07 6:11
Jackson8611-Jan-07 6:11 
AnswerRe: Problem with ODBC connection Pin
led mike11-Jan-07 6:23
led mike11-Jan-07 6:23 
AnswerRe: Problem with ODBC connection Pin
Mark Salsbery11-Jan-07 6:27
Mark Salsbery11-Jan-07 6:27 
QuestionRe: Problem with ODBC connection Pin
David Crow11-Jan-07 7:12
David Crow11-Jan-07 7:12 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.