我试图更新充当identd的perl脚本,同时也在ipv6套接字上监听。
#!/usr/bin/perl
use strict;
use warnings;
use IO::Socket;
use IO::Socket::IP;
my($client,$socket);
if (!defined($ARGV[0])) { die "Please supply ident\n"; }
my $ident=$ARGV[0];
$socket = IO::Socket::IP->new(
"Domain" => "PF_INET6",
"Proto" => "tcp",
"LocalPort" => 113,
Reuse => 1,
"Listen" => 1) or die "Error: $!\n";
print "using ident: $ident\n";
while ($client=$socket->accept()) {
my $host=$client->peerhost();
print "connection: ", $host . "\n";
my $data = <$client>;
if ($data) {
print "$host recv: $data\n";
$data =~ s/^\s+//;
$data =~ s/\s+$//;
$ident =~ s/^\s+//;
$ident =~ s/\s+$//;
print $client "$data : USERID : UNIX : $ident\n";
close $client;
}
}
undef $client if $client;
结果根本不令人满意:
netstat -alpn | grep perl
tcp 0 0 0.0.0.0:113 0.0.0.0:* LISTEN
答案 0 :(得分:2)
以下似乎有效:
@android.arch.persistence.room.PrimaryKey(autoGenerate = true)
protected long rowId;
结果:
$socket = IO::Socket::IP->new(
Domain => PF_INET6,
LocalHost => "::1",
"Proto" => "tcp",
"LocalPort" => 113,
Reuse => 1,
"Listen" => 1) or die "Error: $!\n";