Skip to content

Instantly share code, notes, and snippets.

@mumumu
Created December 24, 2012 10:52
Show Gist options
  • Save mumumu/4368792 to your computer and use it in GitHub Desktop.
Save mumumu/4368792 to your computer and use it in GitHub Desktop.
tcp client by perl, using low-level socket API.
#!/usr/bin/perl -w
use strict;
use warnings;
use IO::Socket;
use Data::Dumper;
my $socket = IO::Socket::INET->new(
Proto => 'tcp',
Type => SOCK_STREAM
) || die "creating socket: $!";
my $port = 80;
my $remote_addr = "www.google.com";
$remote_addr = pack_sockaddr_in( $port, inet_aton($remote_addr) );
connect($socket, $remote_addr);
my $query = "GET / HTTP/1.0\n\n";
send( $socket, $query, 0, $remote_addr );
my $buffer;
my $recv_remote_addr = recv( $socket, $buffer, 8080, 0 );
print Dumper $recv_remote_addr; # should be empty string.
print $buffer;
1;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment