31 lines
1.0 KiB
Go
31 lines
1.0 KiB
Go
package nft
|
|
|
|
import (
|
|
"strconv"
|
|
|
|
"git.kor-elf.net/kor-elf-shield/go-nftables-client/family"
|
|
)
|
|
|
|
func RuleAdd(family family.Type, tableName string, chainName string, expr ...string) []string {
|
|
args := []string{"add", "rule", family.String(), tableName, chainName}
|
|
args = append(args, expr...)
|
|
return args
|
|
}
|
|
|
|
func RuleInsert(family family.Type, tableName string, chainName string, expr ...string) []string {
|
|
args := []string{"insert", "rule", family.String(), tableName, chainName}
|
|
args = append(args, expr...)
|
|
return args
|
|
}
|
|
|
|
func RuleReplace(family family.Type, tableName string, chainName string, handle uint64, expr ...string) []string {
|
|
args := []string{"replace", "rule", family.String(), tableName, chainName, "handle", strconv.Itoa(int(handle))}
|
|
args = append(args, expr...)
|
|
return args
|
|
}
|
|
|
|
func RuleDelete(family family.Type, tableName string, chainName string, handle uint64) []string {
|
|
args := []string{"delete", "rule", family.String(), tableName, chainName, "handle", strconv.Itoa(int(handle))}
|
|
return args
|
|
}
|