in reply to Re: Simple question regarding Bidirectional socket programming
in thread Simple question regarding Bidirectional socket programming
server.pl
client.pluse strict; use Socket; my $port = shift || 7890; my $proto = getprotobyname('tcp'); socket(SERVER, PF_INET, SOCK_STREAM, $proto) or die "socket: $!"; setsockopt(SERVER, SOL_SOCKET, SO_REUSEADDR, 1) or die "setsock: $!"; my $paddr = sockaddr_in($port, INADDR_ANY); bind(SERVER, $paddr) or die "bind: $!"; listen(SERVER, SOMAXCONN) or die "listen: $!"; print "SERVER started on port $port\n"; my $client_addr; while ($client_addr = accept(CLIENT, SERVER)) { my ($client_port, $client_ip) = sockaddr_in($client_addr); my $client_ipnum = inet_ntoa($client_ip); my $client_host = gethostbyaddr($client_ip, AF_INET) ; print "got a connection from: $client_host"," [$client_ipnum]\n"; $| = 1; print CLIENT "Hello from the server \n\n "; my $response; # Trying to read client while ( defined ($response = <$client_addr>) ){ print "Response from client : $response" ; } sleep(1); close CLIENT; }
#! /usr/bin/perl -w # client1.pl - a simple client use strict; use Socket; my $host = shift || 'sajan.random.com'; my $port = shift || 7890; my $proto = getprotobyname('tcp'); my $iaddr = inet_aton($host); my $paddr = sockaddr_in($port, $iaddr); socket(SOCKET, PF_INET, SOCK_STREAM, $proto) or die "socket: $!"; connect(SOCKET, $paddr) or die "connect: $!"; my $line; while ($line = <SOCKET>) { $| = 1; print $line; # Trying to send something to server print SOCKET "Client says hellooooo toooo !!! "; open my $tfh, " >> /tmp/sajan.tmp"; print $tfh $line; close $tfh } close SOCKET or die "close: $!";
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Simple question regarding Bidirectional socket programming
by almut (Canon) on Jun 15, 2010 at 09:42 UTC | |
by sajanagr (Acolyte) on Jun 15, 2010 at 10:27 UTC | |
by almut (Canon) on Jun 15, 2010 at 11:26 UTC | |
by ikegami (Patriarch) on Jun 15, 2010 at 18:11 UTC | |
by sajanagr (Acolyte) on Jun 16, 2010 at 06:27 UTC |