Documentation ¶
Index ¶
- Variables
- func DecideOnConnection(ctx context.Context, conn *network.Connection, pkt packet.Packet)
- func FilterResolvedDNS(ctx context.Context, conn *network.Connection, q *resolver.Query, ...) *resolver.RRCache
- func GetPermittedPort(protocol packet.IPProtocol) uint16
- func PermittedAddr(network string) net.Addr
- func PermittedTCPAddr() *net.TCPAddr
- func PermittedUDPAddr() *net.UDPAddr
- func PreventBypassing(ctx context.Context, conn *network.Connection) (endpoints.EPResult, string, nsutil.Responder)
- func SetNameserverIPMatcher(fn func(ip net.IP) bool) error
- func UpdateIPsAndCNAMEs(q *resolver.Query, rrCache *resolver.RRCache, conn *network.Connection)
Constants ¶
This section is empty.
Variables ¶
var ( CfgOptionEnableFilterKey = "filter/enable" CfgOptionAskWithSystemNotificationsKey = "filter/askWithSystemNotifications" CfgOptionAskTimeoutKey = "filter/askTimeout" CfgOptionPermanentVerdictsKey = "filter/permanentVerdicts" )
Configuration Keys.
Functions ¶
func DecideOnConnection ¶
DecideOnConnection makes a decision about a connection. When called, the connection and profile is already locked.
func FilterResolvedDNS ¶ added in v0.6.7
func FilterResolvedDNS( ctx context.Context, conn *network.Connection, q *resolver.Query, rrCache *resolver.RRCache, ) *resolver.RRCache
FilterResolvedDNS filters a dns response according to the application profile and settings.
func GetPermittedPort ¶ added in v0.2.5
func GetPermittedPort(protocol packet.IPProtocol) uint16
GetPermittedPort returns a local port number that is already permitted for communication. This bypasses the process attribution step to guarantee connectivity. Communication on the returned port is attributed to the Portmaster. Every pre-authenticated port is only valid once. If no unused local port number can be found, it will return 0, which is expected to trigger automatic port selection by the underlying OS.
func PermittedAddr ¶ added in v0.2.5
PermittedAddr returns an already permitted local address for the given network for reliable connectivity. Returns nil in case of error.
func PermittedTCPAddr ¶ added in v0.2.5
PermittedTCPAddr returns an already permitted local tcp address for reliable connectivity. Returns nil in case of error.
func PermittedUDPAddr ¶ added in v0.2.5
PermittedUDPAddr returns an already permitted local udp address for reliable connectivity. Returns nil in case of error.
func PreventBypassing ¶ added in v0.4.1
func PreventBypassing(ctx context.Context, conn *network.Connection) (endpoints.EPResult, string, nsutil.Responder)
PreventBypassing checks if the connection should be denied or permitted based on some bypass protection checks.
func SetNameserverIPMatcher ¶ added in v0.6.5
SetNameserverIPMatcher sets a function that is used to match the internal nameserver IP(s). Can only bet set once.
func UpdateIPsAndCNAMEs ¶ added in v0.6.7
UpdateIPsAndCNAMEs saves all the IP->Name mappings to the cache database and updates the CNAMEs in the Connection's Entity.
Types ¶
This section is empty.
Source Files ¶
Directories ¶
Path | Synopsis |
---|---|
nfq
Package nfq contains a nfqueue library experiment.
|
Package nfq contains a nfqueue library experiment. |
windowskext
Package windowskext provides network interception capabilities on windows via the Portmaster Kernel Extension.
|
Package windowskext provides network interception capabilities on windows via the Portmaster Kernel Extension. |