The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Net::SixXS::TIC::Server::Inetd - an inetd-run TIC server

SYNOPSIS

  use Net::SixXS::Data::Tunnel;
  use Net::SixXS::Server::Inetd;

  my %tunnels = (
      T00001 => Net::SixXS::Data::Tunnel->from_json(\%data1),
      T00002 => Net::SixXS::Data::Tunnel->from_json(\%data2),
  );
  my $s = Net::SixXS::Server::Inetd->new(username => 'user',
      password => 'secret', tunnels => \%tunnels);
  $s->run;

DESCRIPTION

The Net::SixXS::TIC::Server::Inetd class implements a TIC server providing the data about one or more IPv6-over-IPv4 tunnels running the "Anything-In-Anything" (AYIYA) protocol as used by SixXS. It provides the communication with the clients - receiving command lines and sending back the responses - needed by the Net::SixXS::TIC::Server class, and depends on the latter for the actual implementation of the TIC negotiation.

ATTRIBUTES

The Net::SixXS::TIC::Server::Inetd class does not define any attributes in addition to the ones provided by Net::SixXS::TIC::Server.

METHODS

The Net::SixXS::TIC::Server::Inetd class defines the following methods in addition to the ones provided by Net::SixXS::TIC::Server:

run ()

Communicate with a TIC client by reading its commands from the standard input stream and writing the server responses to the standard output stream in a way compatible with the inetd superserver.

client_write_line (client, line)

Implement the client_write_line() method required by Net::SixXS::TIC::Server by writing the line to the standard output stream.

SEE ALSO

Net::SixXS, Net::SixXS::Data::Tunnel, Net::SixXS::TIC::Server, Net::SixXS::TIC::Server::AnyEvent

LICENSE

Copyright (C) 2015 Peter Pentchev <roam@ringlet.net>.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

AUTHOR

Peter Pentchev <roam@ringlet.net>