The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Name

SPVM::IO::Socket::INET - IPv4 Socket

Usage

  use IO::Socket::INET;
  use Sys::Socket;
  use Sys::Socket::Constant as SOCKET;

  # Socket
  my $host = "google.com";
  my $port = 80;
  my $io_socket = IO::Socket::INET->new({
    PeerAddr => $host,
    PeerPort => $port
  });
  
  my $io_socket = IO::Socket::INET->new({
    PeerAddr => 'www.perl.org',
    PeerPort => 80,
    Proto    => SOCKET->IPPROTO_TCP
  });
 
  my $io_socket = IO::Socket::INET->new({
    Listen    => 5,
    LocalAddr => 'localhost',
    LocalPort => 9000,
    Proto     => SOCKET->IPPROTO_TCP
  });
   
  my $io_socket = IO::Socket::INET->new({
    PeerPort  => 9999,
    PeerAddr  => Sys::Socket->inet_ntoa(SOCKET->INADDR_BROADCAST),
    Proto     => SOCKET->IPPROTO_UDP,
    LocalAddr => 'localhost',
    Broadcast => 1
  })

Description

IO::Socket::INET provides IPv4 Socket.

Super Class

IO::Socket

Fields

peer_address

  has peer_address : string;

peer_port

  has peer_port : int;

local_address

  has local_address : string;

local_port

  has local_port : int;

proto_number

  has proto_number : int;

Class Methods

new

  static method new : IO::Socket::INET ($options = undef : object[]);

new Options

  • ReuseAddr : string

  • ReusePort : Int

  • Broadcast : Int

  • PeerAddr : string

  • PeerPort : Int

  • LocalAddr : string

  • LocalPort : Int

  • Proto : Int

  • Timeout : Int

  • Domain : Int

  • Type : Int

  • Blocking : Int

  • Listen : Int

Instance Methods

init

  protected method init : void ($options = undef : object[]);

sockaddr

  method sockaddr : Sys::Socket::In_addr ();

sockport

  method sockport : int ();

sockhost

  method sockhost : string ();

peeraddr

  method peeraddr : Sys::Socket::In_addr ();

peerport

  method peerport : int ();

peerhost

  method peerhost : string ();

See Also

Perl's IO::Socket::INET

IO::Socket::INET is a Perl's IO::Socket::INET porting to SPVM.