root / lib / facter / nftables.rb @ 032387dc
Historique | Voir | Annoter | Télécharger (691 octets)
1 | 03d9e7da | Steve Traylen | #
|
---|---|---|---|
2 | # Produce an array of nftables.
|
||
3 | # nft list tables
|
||
4 | # table inet filter
|
||
5 | # table ip nat
|
||
6 | # table ip6 nat
|
||
7 | # table inet f2b-table
|
||
8 | #
|
||
9 | 032387dc | Steve Traylen | # Produce the version of nftables (nft --version)
|
10 | # nftables v0.9.3 (Topsy)
|
||
11 | #
|
||
12 | 03d9e7da | Steve Traylen | Facter.add(:nftables) do |
13 | @nft_cmd = Facter::Util::Resolution.which('nft') |
||
14 | confine { @nft_cmd }
|
||
15 | |||
16 | setcode do
|
||
17 | tables = [] |
||
18 | table_result = Facter::Core::Execution.execute(%(#{@nft_cmd} list tables)) |
||
19 | table_result.each_line do |line|
|
||
20 | tables.push(line.split(' ')[1, 2].join('-')) |
||
21 | end
|
||
22 | 032387dc | Steve Traylen | version = Facter::Core::Execution.execute(%(#{@nft_cmd} --version))[%r{^.*v(\d+\.\d+.\d+)\s.*$}, 1] |
23 | { |
||
24 | 'tables' => tables,
|
||
25 | 'version' => version,
|
||
26 | } |
||
27 | 03d9e7da | Steve Traylen | end
|
28 | end |