check-changes revision 70e5a7403f0e0a3bd292b8287c5fed5772c15270
436aad11e01e916f75e68a2e9cb89ac217a990d3Tinderbox User#!/usr/bin/perl
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater#
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox User# Copyright (C) 2004, 2007 Internet Systems Consortium, Inc. ("ISC")
18920d790825d96ca3943aa2dcb6eb80dc611c5fTinderbox User# Copyright (C) 2002 Internet Software Consortium.
a5636b773fa05a272b6876afd99309c0b3090e2fMark Andrews#
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox User# Permission to use, copy, modify, and/or distribute this software for any
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox User# purpose with or without fee is hereby granted, provided that the above
c57668a2fbbe558c1bd21652813616f2f517c469Tinderbox User# copyright notice and this permission notice appear in all copies.
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews#
1f4c645185bd8fc70048e0a69eee46193a284e5cTinderbox User# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
bed0874e1a09e810575328c4bfc346a47514b69fMark Andrews# AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
02b47c5d62e1e827743684c28a08e871da454a2dMark Andrews# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
e20309353e6246485c521278131d3fced73d7957Tinderbox User# PERFORMANCE OF THIS SOFTWARE.
e20309353e6246485c521278131d3fced73d7957Tinderbox User
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# $Id: check-changes,v 1.4 2007/06/19 23:47:24 tbox Exp $
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrews
a7c412f37cc73d0332887a746e81220cbf09dd00Mark Andrewseval 'exec /usr/bin/perl -S $0 ${1+"$@"}'
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews if $running_under_some_shell;
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews # this emulates #! processing on NIH machines.
e20309353e6246485c521278131d3fced73d7957Tinderbox User # (remove #! line above if indigestible)
e20309353e6246485c521278131d3fced73d7957Tinderbox User
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrewseval '$'.$1.'$2;' while $ARGV[0] =~ /^([A-Za-z_0-9]+=)(.*)/ && shift;
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews # process any FOO=bar switches
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews$, = ' '; # set output field separator
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews$\ = "\n"; # set output record separator
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews$change = 0;
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews$status = 0;
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrewsline: while (<>) {
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews ($Fld1,$Fld2) = split(' ', $_, 9999);
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews if ($Fld1 =~ /^[1-9][0-9]*\.$/ && $Fld2 =~ /^\[.*\]$/) {
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews if ($change != 0 && $Fld1 + 1 != $change) {
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews print 'bad change number', $Fld1;
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $status = 1;
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews }
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews $change = $Fld1;
0eb371ca0dab50ae3462e98794a6126198c52f4bMark Andrews }
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User}
dedefc0bdbb4e6e39eeb98aa2fc6883efec2ddb0Mark Andrews
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Huntexit $status;
dc238a06bffa79de141ee7655765e2df91498a8aTinderbox User