Documentation ¶
Index ¶
- func GetIcmpNoMatch() []string
- func MakeRuleSpecText(winRuleSpec *WindowsRuleSpec, validate bool) (string, error)
- func ReduceIcmpProtoString(icmpProtoTypeCode string, policyRestrictions []string) ([]string, error)
- func TransformIcmpProtoString(icmpProtoTypeCode string) []string
- type WindowsRuleIcmpMatch
- type WindowsRuleMatchSet
- type WindowsRuleRange
- type WindowsRuleSpec
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetIcmpNoMatch ¶
func GetIcmpNoMatch() []string
GetIcmpNoMatch returns a rulespec subsection to indicate that there should be no match
func MakeRuleSpecText ¶
func MakeRuleSpecText(winRuleSpec *WindowsRuleSpec, validate bool) (string, error)
converts a WindowsRuleSpec back into a string for an iptables rule
func ReduceIcmpProtoString ¶
ReduceIcmpProtoString will look at policyRestrictions and return a rulespec substring for matching. represents the logic: "icmpProtoTypeCode and (policyRestrictions[0] or policyRestrictions[1] or...)" can return empty list if there is a proto match with no restriction. will return error if there is no intersection.
func TransformIcmpProtoString ¶
TransformIcmpProtoString parses icmp/type/code string coming from ACL rule and returns a rulespec subsection
Types ¶
type WindowsRuleIcmpMatch ¶
type WindowsRuleIcmpMatch struct { IcmpType int IcmpCodeRange *WindowsRuleRange Nomatch bool }
WindowsRuleIcmpMatch represents parameters for an ICMP match
func ParseIcmpTypeCode ¶
func ParseIcmpTypeCode(icmpTypeCode string) ([]*WindowsRuleIcmpMatch, error)
ParseIcmpTypeCode parses --icmp-type option string is of the form type/code:code,code,code:code
func (*WindowsRuleIcmpMatch) Equal ¶
func (w *WindowsRuleIcmpMatch) Equal(other *WindowsRuleIcmpMatch) bool
Equal compares a WindowsRuleIcmpMatch to another for equality
type WindowsRuleMatchSet ¶
type WindowsRuleMatchSet struct { MatchSetName string MatchSetNegate bool MatchSetDstIp bool MatchSetDstPort bool MatchSetSrcIp bool MatchSetSrcPort bool }
structure representing result of parsed --match-set
func (*WindowsRuleMatchSet) Equal ¶
func (w *WindowsRuleMatchSet) Equal(other *WindowsRuleMatchSet) bool
Equal compares a WindowsRuleMatchSet to another for equality
type WindowsRuleRange ¶
WindowsRuleRange represents a range of values for a rule
func ParsePortString ¶
func ParsePortString(portString string) ([]*WindowsRuleRange, error)
parse comma-separated list of port or port ranges
func (*WindowsRuleRange) Equal ¶
func (w *WindowsRuleRange) Equal(other *WindowsRuleRange) bool
Equal compares a WindowsRulePortRange to another for equality
type WindowsRuleSpec ¶
type WindowsRuleSpec struct { Protocol int Action int // FilterAction (allow, drop, nfq, proxy) ProxyPort int Mark int Log bool LogPrefix string GroupId int ProcessID int ProcessIncludeChildren bool ProcessIncludeChildrenOnly bool MatchSrcPort []*WindowsRuleRange MatchDstPort []*WindowsRuleRange MatchBytes []byte MatchBytesOffset int MatchSet []*WindowsRuleMatchSet IcmpMatch []*WindowsRuleIcmpMatch }
structure representing result of parsed iptables rule
func ParseRuleSpec ¶
func ParseRuleSpec(rulespec ...string) (*WindowsRuleSpec, error)
ParseRuleSpec parses a windows iptable rule
func (*WindowsRuleSpec) Equal ¶
func (w *WindowsRuleSpec) Equal(other *WindowsRuleSpec) bool
Equal compares a WindowsRuleSpec to another for equality