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 } }