summaryrefslogtreecommitdiffstats
path: root/doc/misc/docbook-zoneopt.pl
diff options
context:
space:
mode:
Diffstat (limited to 'doc/misc/docbook-zoneopt.pl')
-rw-r--r--doc/misc/docbook-zoneopt.pl64
1 files changed, 64 insertions, 0 deletions
diff --git a/doc/misc/docbook-zoneopt.pl b/doc/misc/docbook-zoneopt.pl
new file mode 100644
index 0000000..295fc28
--- /dev/null
+++ b/doc/misc/docbook-zoneopt.pl
@@ -0,0 +1,64 @@
+#!/usr/bin/perl
+#
+# Copyright (C) Internet Systems Consortium, Inc. ("ISC")
+#
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# See the COPYRIGHT file distributed with this work for additional
+# information regarding copyright ownership.
+
+use warnings;
+use strict;
+use Time::Piece;
+
+if (@ARGV < 1) {
+ print STDERR <<'END';
+usage:
+ perl docbook-zoneopt.pl zoneopt_file [YYYY]
+END
+ exit 1;
+}
+
+my $FILE = shift;
+
+my $t = Time::Piece->new();
+my $year;
+$year = `git log --max-count=1 --date=format:%Y --format='%cd' -- $FILE` or $year = $t->year;
+chomp $year;
+
+open (FH, "<", $FILE) or die "Can't open $FILE";
+
+print <<END;
+<!--
+ - Copyright (C) 2004-$year Internet Systems Consortium, Inc. ("ISC")
+ -
+ - This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/.
+-->
+
+<!-- Generated by doc/misc/docbook-zoneopt.pl -->
+<programlisting>
+END
+
+while (<FH>) {
+ if (m{// not.*implemented} || m{// obsolete} || m{// test.*only}) {
+ next;
+ }
+
+ s{ // not configured}{};
+ s{ // may occur multiple times}{};
+ s{<([a-z0-9_-]+)>}{<replaceable>$1</replaceable>}g;
+ s{^(\s*)([a-z0-9_-]+)\b}{$1<command>$2</command>};
+ s{[[]}{[}g;
+ s{[]]}{]}g;
+ s{ }{\t}g;
+
+ print;
+}
+
+print <<END;
+</programlisting>
+END