sub tb_data_lnk_open { my ($link_add); my ($network_addr, $port_addr); my ($remote_host, $remote_port); $link_add = $_[0]; #=========================================================================# # The input $link_add contains the IP address and port in a single # # separated by a - # #=========================================================================# ($remote_host, $remote_port) = split( /-/, $link_add); #=========================================================================# # Create a socket. The socket is openend with TCP properties # #=========================================================================# socket(LINK_HNDL, PF_INET, SOCK_STREAM, getprotobyname('tcp')); #=========================================================================# # Remote address to connect in the network format # #=========================================================================# $network_addr = inet_aton($remote_host) or return 0; $port_addr = sockaddr_in($remote_port, $network_addr); #=========================================================================# # Connect to the server which is already listening # #=========================================================================# connect(LINK_HNDL, $port_addr) or return 1; return 0; } #### sub tb_data_recv { my ($size, $data, $temp, $length_read); $size = $_[0]; $data = ""; $length_read = length($data); my $time_elapsed = 0; my $start_time = time(); #print "\nStart Time :$start_time "; my $count = 0; while($length_read < $size) { recv(LINK_HNDL, $temp, $size - length($data), $flags); $time_elapsed = time() - $start_time; #print "\n$count|Time Elapsed :$time_elapsed : $TIME_OUT : **$temp** : **$data** \n"; if($time_elapsed > $TIME_OUT) { $data = ""; goto TEST_DOC_REP_CRASH; #return $data; } $data = $data.$temp; $length_read = length($data); $count++; } # print "\nTimeOut Not Detected"; return $data; }