Sha256: ea4c7a8489857dcac6825ca8d674a9e08af35353e897f44778417868d30a0d23

Contents?: true

Size: 759 Bytes

Versions: 32

Compression:

Stored size: 759 Bytes

Contents

#!/usr/bin/perl -w

use strict;

while (<>) {
	chomp;
	s/^\s*(.*)\s*$/$1/;
	s/\s*#.*$//;
	next if /^$/;

	die "invalid line:\n$_\n"
		if not m#^([\da-fA-F]{4}):([\da-fA-F]{1,4})::/(\d+)\s+([\w\.]+)$#;
	my $len = $3; my $s = $4;
	my $i1 = $1; my $i2 = $2;
	my $net = (hex($i1) << 16) + hex $i2;

	if (0) { # just some code to help me visually aggregate networks
		my $bs = unpack('B32', pack('N', $net));
		$bs =~ s/(.{8})/$1 /g;
		print "${i1}:${i2}::/$len\t$bs $s\n";
		next;
	}

	print qq|{ ${net}UL, $len, "|;
	if ($s =~ /\./) {
		print $s;
	} elsif ($s eq '6to4') {
		print "\\x0A";
	} elsif ($s eq 'teredo') {
		print "\\x0B";
	} elsif ($s eq 'UNALLOCATED') {
		print "\\006";
	} else {
		print $s =~ /\./ ? $s : "whois.$s.net";
	}
	print qq|" },\n|;
}

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
whois-1.2.2 data/make_ip6_del.pl
whois-1.2.1 data/make_ip6_del.pl
whois-1.2.0 data/make_ip6_del.pl
whois-1.1.8 data/make_ip6_del.pl
whois-1.1.7 data/make_ip6_del.pl
whois-1.1.6 data/make_ip6_del.pl
whois-1.1.5 data/make_ip6_del.pl
whois-1.1.4 data/make_ip6_del.pl
whois-1.1.3 data/make_ip6_del.pl
whois-1.1.2 data/make_ip6_del.pl
whois-1.1.1 data/make_ip6_del.pl
whois-1.1.0 data/make_ip6_del.pl
whois-1.0.12 data/make_ip6_del.pl
whois-1.0.11 data/make_ip6_del.pl
whois-1.0.10 data/make_ip6_del.pl
whois-1.0.9 data/make_ip6_del.pl
whois-1.0.8 data/make_ip6_del.pl
whois-1.0.7 data/make_ip6_del.pl
whois-1.0.6 data/make_ip6_del.pl
whois-1.0.5 data/make_ip6_del.pl