Question: Write a program to make the TCP server program in Table 25.3 more generic: to receive a request, to process the request, and to send

Write a program to make the TCP server program in Table 25.3 more generic: to receive a request, to process the request, and to send back the response.

Table 25.3 Echo server program using the services of TCP 1 / Echo server program 2 #include

Table 25.3 Echo server program using the services of TCP 1 / Echo server program 2 #include "headerFiles.h" int main (void) // Declare and define 6. int Is; I/ Listen socket descriptor 7 int s; Il Socket descriptor (reference) 8 char buffer [256]: I/ Data buffer 9. char* ptr = buffer; I/ Data buffer 10 int len = 0; I/ Number of bytes to send or receive I/ Maximum number of bytes // Number of bytes for each recv call I/ Size of waiting clients I/ Server address // Client address 11 int maxLen = sizeof (buffer); 12 int n = 0; 13 int waitSize = 16; 14 struct sockaddr_in serverAddr; 15 struct sockaddr in clientAddr; 16 int clntAddrLen; // Length of client address 17 // Create local (server) socket address 18 memset (&servAddr, 0, sizeof (servAddr); 19 servAddr.sin_family = AF_INET; 20 servAddr.sin_addr.s_addr = htonl (INADDR_ANY); I/ Default IP address 21 servAddr.sin_port = htons (SERV_PORT); // Default port // Create listen socket if (Is = socket (PF_INET, SOCK_STREAM, 0) < 0); 23 perror ("Error: Listen socket failed!"); exit (1); 28 // Bind listen socket to the local socket address if (bind (Is, &servAddr, sizeof (servAddr)) < 0); 30 31 perror ("Error: binding failed!"); 32 exit (1); 33 34 // Listen to connection requests 35 if (listen (Is, waitSize) < 0); 36 37 perror ("Error: listening failed!"); 38 exit (1); 39 40 // Handle the connection 41 for (;:) // Run forever 42 // Accept connections from client if (s = accept (Is, &clntAddr, &clntAddrlen)

Step by Step Solution

3.49 Rating (162 Votes )

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock

We have used same strategy as in Prg21 here with some changes Since TCP is a ... View full answer

blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Computer Networking Questions!