File: make_as_del.pl

package info (click to toggle)
whois 5.6.6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 584 kB
  • sloc: ansic: 2,412; perl: 203; makefile: 153; sh: 109
file content (33 lines) | stat: -rwxr-xr-x 686 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#!/usr/bin/perl
# SPDX-License-Identifier: GPL-2.0-or-later

use warnings;
use strict;

my $last_l = 0;

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

	my ($fh, $fl, $lh, $ll, $s, $f, $l);
	my $comment = '';
	if (($fh, $fl, $lh, $ll, $s) =
			/^(\d+)\.(\d+)\s+(\d+)\.(\d+)\s+([\w\.-]+)$/) {
		$f = ($fh << 16) + $fl;
		$l = ($lh << 16) + $ll;
		$comment = qq|\t/* $fh.$fl $lh.$ll */|;
	} elsif (($f, $l, $s) = /^(\d+)\s+(\d+)\s+([\w\.-]+)$/) {
	} else {
		die "format error: $_";
	}

	die "constraint violated: $l < $last_l" if $l < $last_l;
	$last_l = $l;

	my $server = ($s =~ /\./) ? $s : "whois.$s.net";
	print qq|{ ${f}u, ${l}u,\t"$server" },$comment\n|;
}