slightly cleaner network code

This commit is contained in:
Erik Faye-Lund 2008-02-02 02:34:09 +00:00
parent 6a7582973a
commit 9bf44409f9

View File

@ -13,23 +13,26 @@ void closeNetwork()
WSACleanup();
}
static const char *clientGreeting = "hello, synctracker!";
static const char *serverGreeting = "hello, demo!";
SOCKET clientConnect(SOCKET serverSocket)
{
SOCKET clientSocket = accept(serverSocket, NULL, NULL);
if (INVALID_SOCKET == clientSocket) return INVALID_SOCKET;
const char *expectedHandshake = "hello, synctracker!";
char recievedHandshake[19];
const char *expectedGreeting = clientGreeting;
char recievedGreeting[128];
recv(clientSocket, recievedHandshake, int(strlen(expectedHandshake)), 0);
if (strncmp(expectedHandshake, recievedHandshake, strlen(expectedHandshake)) != 0)
recv(clientSocket, recievedGreeting, int(strlen(expectedGreeting)), 0);
if (strncmp(expectedGreeting, recievedGreeting, strlen(expectedGreeting)) != 0)
{
closesocket(clientSocket);
return INVALID_SOCKET;
}
const char *test = "hello, demo!";
send(clientSocket, test, int(strlen(test)), 0);
const char *greeting = serverGreeting;
send(clientSocket, greeting, int(strlen(greeting)), 0);
return clientSocket;
}
@ -39,19 +42,19 @@ SOCKET serverConnect(struct sockaddr_in *addr)
SOCKET serverSocket = socket( AF_INET, SOCK_STREAM, 0 );
connect( serverSocket,(struct sockaddr *)addr, sizeof(struct sockaddr_in));
const char * request_text = "hello, synctracker!";
send(serverSocket, request_text, int(strlen(request_text)), 0);
const char *greeting = clientGreeting;
send(serverSocket, greeting, int(strlen(greeting)), 0);
const char *expectedHandshake = "hello, demo!";
char recievedHandshake[12];
recv(serverSocket, recievedHandshake, int(sizeof(recievedHandshake)), 0);
if (strncmp(expectedHandshake, recievedHandshake, strlen(expectedHandshake)) != 0)
const char *expectedGreeting = serverGreeting;
char recievedGreeting[128];
recv(serverSocket, recievedGreeting, int(sizeof(recievedGreeting)), 0);
if (strncmp(expectedGreeting, recievedGreeting, strlen(expectedGreeting)) != 0)
{
closesocket(serverSocket);
return INVALID_SOCKET;
}
return serverSocket;
}
return serverSocket;
}
bool pollRead(SOCKET socket)