ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews#!/usr/bin/perl
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# Copyright (C) 2002, 2004, 2007, 2012, 2016 Internet Systems Consortium, Inc. ("ISC")
bf8267aa453e5d2a735ed732a043b77a0b355b20Mark Andrews#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# This Source Code Form is subject to the terms of the Mozilla Public
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# License, v. 2.0. If a copy of the MPL was not distributed with this
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# file, You can obtain one at http://mozilla.org/MPL/2.0/.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
ea94d370123a5892f6c47a97f21d1b28d44bb168Tinderbox User# $Id$
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrewseval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews if $running_under_some_shell;
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews # this emulates #! processing on NIH machines.
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews # (remove #! line above if indigestible)
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrewseval '$'.$1.'$2;' while $ARGV[0] =~ /^([A-Za-z_0-9]+=)(.*)/ && shift;
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews # process any FOO=bar switches
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews$, = ' '; # set output field separator
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews$\ = "\n"; # set output record separator
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews$change = 0;
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews$status = 0;
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrewsline: while (<>) {
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews ($Fld1,$Fld2) = split(' ', $_, 9999);
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews if ($Fld1 =~ /^[1-9][0-9]*\.$/ && $Fld2 =~ /^\[.*\]$/) {
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews if ($change != 0 && $Fld1 + 1 != $change) {
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews print 'bad change number', $Fld1;
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews $status = 1;
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews }
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews $change = $Fld1;
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews }
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews}
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrews
ce76952df3c1a8d5da2e98849a1464f500c0aa38Mark Andrewsexit $status;