/usr/bin/ods-kaspcheck is in opendnssec-auditor 1.3.4-1ubuntu1.
This file is owned by root:root, with mode 0o755.
The actual contents of the file can be viewed below.
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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 | #!/usr/bin/ruby1.8 -I/usr/lib/opendnssec
#
# $Id: ods-kaspcheck.in 3140 2010-04-06 14:52:57Z alex $
#
# Copyright (c) 2009 Nominet UK. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
# GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
# IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
# IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#
require 'kasp_checker.rb'
require 'optparse'
require 'ostruct'
include KASPChecker
class OptionsParser
#
# Return a structure describing the options.
#
def self.parse(args)
# The options specified on the command line will be collected in *options*.
# We set default values here.
path = "/etc/opendnssec"
options = OpenStruct.new
options.rng_path = "/usr/share/opendnssec"
options.xmllint = "/usr/bin/xmllint"
options.default_conf_file = path + "/conf.xml"
opts = OptionParser.new do |opts|
opts.banner = "Usage: ods-kaspcheck [options]"
opts.separator ""
opts.separator "Specific options:"
# conf.xml
opts.on("-c", "--conf [PATH_TO_CONF_FILE]",
"Path to OpenDNSSEC configuration file",
" (defaults to " + options.default_conf_file + ")") do |ext|
options.conf_file = ext
end
# kasp.xml
opts.on("-k", "--kasp [PATH_TO_KASP_FILE]",
"Path to KASP policy file",
" (defaults to the path given in the configuration file)") do |ext|
options.kasp_file = ext
end
opts.on("-v", "--version", # Override default
"Display version information") do |x|
print "1.3.4\n"
exit
end
opts.separator ""
opts.separator "Common options:"
# No argument, shows at tail. This will print an options summary.
# Try it and see!
opts.on_tail("-h", "-?", "--help", "Show this message") do
puts opts
exit
end
end
begin
opts.parse!(args)
rescue OptionParser::InvalidOption => e
print "#{e}\n"
puts opts
exit(1)
end
options
end # parse()
end
checker = Checker.new
options = OptionsParser.parse(ARGV)
if (options.conf_file)
checker.conf_file = options.conf_file
else
checker.conf_file = options.default_conf_file
end
if (options.kasp_file)
checker.kasp_file = options.kasp_file
end
checker.rng_path = options.rng_path
checker.xmllint = options.xmllint
checker.check()
|