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
|
# File 'lib/netgrep/options.rb', line 4
def self.parse(argv)
options = OpenStruct.new
options.netblocks_file = nil
options.log_file = nil
options.num_workers = 1
options.ignore_ipv6 = false
parser = OptionParser.new do |opts|
opts.on("-f NETBLOCKS_FILE", String, "File containing one IP or CIDR per line") do |file_name|
options.netblocks_file = File.absolute_path(file_name)
end
opts.on("--ignore-ipv6", "Don't try to match IPV6 Addresses") do
options.ignore_ipv6 = true
end
opts.on("-w NUM_WORKERS", Integer, "Number of worker processes to use") do |n|
options.num_workers = Integer(n)
raise(OptionParser::InvalidArgument) if options.num_workers < 1
end
end
parser.parse!(argv)
options.log_file = argv[0]
options.log_file || raise(OptionParser::InvalidOption.new)
options
end
|