Révision aaa37172
Implement nftables:;simplerule::daddr
templates/simplerule.epp | ||
---|---|---|
2 | 2 |
Optional[String] $comment, |
3 | 3 |
Optional[Variant[Array[Stdlib::Port, 1], Stdlib::Port, String]] $dport, |
4 | 4 |
Optional[String] $proto, |
5 |
Optional[Variant[Stdlib::IP::Address::V6, Stdlib::IP::Address::V4, Pattern[/^@[-a-zA-Z0-9_]+$/]]] $daddr, |
|
6 |
Enum['ip', 'ip6'] $set_type, |
|
5 | 7 |
| -%> |
6 | 8 |
<%- if $proto { |
7 | 9 |
$_proto = $proto ? { |
... | ... | |
16 | 18 |
} else { |
17 | 19 |
$_ip_version_filter = undef |
18 | 20 |
} -%> |
21 |
<%- if $daddr { |
|
22 |
if $daddr =~ Stdlib::IP::Address::V6 { |
|
23 |
$_dst_hosts = "ip6 daddr ${daddr}" |
|
24 |
} elsif $daddr =~ Stdlib::IP::Address::V4 { |
|
25 |
$_dst_hosts = "ip daddr ${daddr}" |
|
26 |
} else { |
|
27 |
$_dst_hosts = $set_type ? { |
|
28 |
'ip' => "ip daddr ${daddr}", |
|
29 |
'ip6' => "ip6 daddr ${daddr}", |
|
30 |
} |
|
31 |
} |
|
32 |
} else { |
|
33 |
$_dst_hosts = undef |
|
34 |
} -%> |
|
19 | 35 |
<%- if $proto and $dport { |
20 | 36 |
if $dport =~ Array { |
21 |
$_destination = "${_proto} dport {${dport.join(', ')}}"
|
|
37 |
$_dst_port = "${_proto} dport {${dport.join(', ')}}"
|
|
22 | 38 |
} else { |
23 |
$_destination = "${_proto} dport $dport"
|
|
39 |
$_dst_port = "${_proto} dport $dport"
|
|
24 | 40 |
} |
25 | 41 |
} else { |
26 |
$_destination = undef
|
|
42 |
$_dst_port = undef
|
|
27 | 43 |
} -%> |
28 | 44 |
<%- if $comment { |
29 | 45 |
$_comment = "comment \"${comment}\"" |
30 | 46 |
} else { |
31 | 47 |
$_comment = undef |
32 | 48 |
} -%> |
33 |
<%= regsubst(strip([$_ip_version_filter, $_destination, $_comment, $action].join(' ')), '\s+', ' ', 'G') -%> |
|
49 |
<%= regsubst(strip([$_ip_version_filter, $_dst_port, $_dst_hosts, $action, $_comment].join(' ')), '\s+', ' ', 'G') -%> |
Formats disponibles : Unified diff