mirror of
https://github.com/safing/portmaster
synced 2025-09-02 02:29:12 +00:00
[service] Fix kext verdict of update command
This commit is contained in:
parent
fe7bc629c6
commit
176494550e
1 changed files with 45 additions and 2 deletions
|
@ -130,7 +130,7 @@ func UpdateVerdict(conn *network.Connection) error {
|
||||||
LocalPort: conn.LocalPort,
|
LocalPort: conn.LocalPort,
|
||||||
RemoteAddress: [4]byte(conn.Entity.IP),
|
RemoteAddress: [4]byte(conn.Entity.IP),
|
||||||
RemotePort: conn.Entity.Port,
|
RemotePort: conn.Entity.Port,
|
||||||
Verdict: uint8(conn.Verdict),
|
Verdict: uint8(getKextVerdictFromConnection(conn)),
|
||||||
}
|
}
|
||||||
|
|
||||||
return kextinterface.SendUpdateV4Command(kextFile, update)
|
return kextinterface.SendUpdateV4Command(kextFile, update)
|
||||||
|
@ -141,7 +141,7 @@ func UpdateVerdict(conn *network.Connection) error {
|
||||||
LocalPort: conn.LocalPort,
|
LocalPort: conn.LocalPort,
|
||||||
RemoteAddress: [16]byte(conn.Entity.IP),
|
RemoteAddress: [16]byte(conn.Entity.IP),
|
||||||
RemotePort: conn.Entity.Port,
|
RemotePort: conn.Entity.Port,
|
||||||
Verdict: uint8(conn.Verdict),
|
Verdict: uint8(getKextVerdictFromConnection(conn)),
|
||||||
}
|
}
|
||||||
|
|
||||||
return kextinterface.SendUpdateV6Command(kextFile, update)
|
return kextinterface.SendUpdateV6Command(kextFile, update)
|
||||||
|
@ -149,6 +149,49 @@ func UpdateVerdict(conn *network.Connection) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getKextVerdictFromConnection(conn *network.Connection) kextinterface.KextVerdict {
|
||||||
|
if conn.VerdictPermanent {
|
||||||
|
switch conn.Verdict {
|
||||||
|
case network.VerdictUndecided:
|
||||||
|
return kextinterface.VerdictUndecided
|
||||||
|
case network.VerdictUndeterminable:
|
||||||
|
return kextinterface.VerdictUndeterminable
|
||||||
|
case network.VerdictAccept:
|
||||||
|
return kextinterface.VerdictPermanentAccept
|
||||||
|
case network.VerdictBlock:
|
||||||
|
return kextinterface.VerdictPermanentBlock
|
||||||
|
case network.VerdictDrop:
|
||||||
|
return kextinterface.VerdictPermanentDrop
|
||||||
|
case network.VerdictRerouteToNameserver:
|
||||||
|
return kextinterface.VerdictRerouteToNameserver
|
||||||
|
case network.VerdictRerouteToTunnel:
|
||||||
|
return kextinterface.VerdictRerouteToTunnel
|
||||||
|
case network.VerdictFailed:
|
||||||
|
return kextinterface.VerdictFailed
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
switch conn.Verdict {
|
||||||
|
case network.VerdictUndecided:
|
||||||
|
return kextinterface.VerdictUndecided
|
||||||
|
case network.VerdictUndeterminable:
|
||||||
|
return kextinterface.VerdictUndeterminable
|
||||||
|
case network.VerdictAccept:
|
||||||
|
return kextinterface.VerdictAccept
|
||||||
|
case network.VerdictBlock:
|
||||||
|
return kextinterface.VerdictBlock
|
||||||
|
case network.VerdictDrop:
|
||||||
|
return kextinterface.VerdictDrop
|
||||||
|
case network.VerdictRerouteToNameserver:
|
||||||
|
return kextinterface.VerdictRerouteToNameserver
|
||||||
|
case network.VerdictRerouteToTunnel:
|
||||||
|
return kextinterface.VerdictRerouteToTunnel
|
||||||
|
case network.VerdictFailed:
|
||||||
|
return kextinterface.VerdictFailed
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return kextinterface.VerdictUndeterminable
|
||||||
|
}
|
||||||
|
|
||||||
// Returns the kext version.
|
// Returns the kext version.
|
||||||
func GetVersion() (*VersionInfo, error) {
|
func GetVersion() (*VersionInfo, error) {
|
||||||
data, err := kextinterface.ReadVersion(kextFile)
|
data, err := kextinterface.ReadVersion(kextFile)
|
||||||
|
|
Loading…
Add table
Reference in a new issue