📄 announcecache.pl
字号:
#!/usr/local/bin/perl$|=1;$host = (shift || 'sd.cache.nlanr.net');$port = (shift || '3131');require "$ENV{'HARVEST_HOME'}/lib/socket.ph";$sockaddr = 'S n a4 x8';($name, $aliases, $proto) = getprotobyname("udp");($fqdn, $aliases, $type, $len, $themaddr) = gethostbyname($host);$thissock = pack($sockaddr, &AF_INET, 0, "\0\0\0\0");$them = pack($sockaddr, &AF_INET, $port, $themaddr);chop($me=`uname -a|cut -f2 -d' '`);$myip=(gethostbyname($me))[4];die "socket: $!\n" unless socket (SOCK, &AF_INET, &SOCK_DGRAM, $proto);while (<>) { chop; $request_template = 'CCnx4x8x4a4a' . length; $request = pack($request_template, 1, 1, 24 + length, $myip, $_); die "send: $!\n" unless send(SOCK, $request, 0, $them); die "recv: $!\n" unless recv(SOCK, $reply, 1024, 0); ($type,$ver,$len,$payload) = unpack('CCnx4x8x4A', $reply); print $CODES[$type] . " $_\n";}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -