Example #1
0
int main(int argc, char **argv)
{
	if(argc != 2)
	{
		cout << "Usage:\n";
		cout << "\t./server [listen port]\n";
		return -1;
	}

	if(atoi(argv[1]) < 0 || atoi(argv[1]) > 65535)
	{
		cout << "The port must be between 0 and 65535\n";
		return -1;
	}

	MyTcpSocket mySocket;
	if(!mySocket.listen(atoi(argv[1])))
		cout << "There was an error listening\n";

	char data[W*MSS];
	int n;
	
	while((n = mySocket.receive(data)) != -1)
	{
		cout << "Received data from client.\n";
		cout << "echoing " << n << " bytes to client\n";
		mySocket.send(data, n);	// Echo back to client
	}
}