int new_server_socket_fd=accept(server_socket_fd,(struct sockaddr*)&client_addr, &client_addr_length); if ( new_server_socket_fd <0) { perror (" Server Accept Failed :"); break ; } char buffer[BUFFER_SIZE]; bzero ( buffer, BUFFER_SIZE); if ( recv( new_server_socket_fd , buffer ,BUFFER_SIZE ,0)<0) { perror(" Server Receive Data Failed ;"); break; } char file_name[FILE_NAME_MAX_SIZE+1]; bzero(file_name , FILE_NAME_MAX_SIZE+1); strncpy(file_name,buffer,strlen(buffer)>FILE_NAME_MAX_SIZE?FILE_NAME_MAX_SIZE:strlen(buffer)); printf ("%s \n ", file_name ); FILE *fp =fopen ( file_name ," r "); if ( NULL == fp ) { printf (" File :%s Not Found \n ", file_name ); } else { bzero(buffer, BUFFER_SIZE ); int length =0; while ((length = fread(buffer, sizeof (char), BUFFER_SIZE , fp))>0) { if (send(new_server_socket_fd , buffer,length ,0)<0) { printf (" Send File :%s Failed ./n ", file_name ); break ; }