chore: Try to restore process rules
This commit is contained in:
parent
a7040af346
commit
a883faae9d
@ -596,7 +596,7 @@ func match(metadata *C.Metadata) (C.Proxy, C.Rule, error) {
|
|||||||
defer configMux.RUnlock()
|
defer configMux.RUnlock()
|
||||||
var (
|
var (
|
||||||
resolved bool
|
resolved bool
|
||||||
attemptProcessLookup = true
|
processFound bool
|
||||||
)
|
)
|
||||||
|
|
||||||
if node, ok := resolver.DefaultHosts.Search(metadata.Host, false); ok {
|
if node, ok := resolver.DefaultHosts.Search(metadata.Host, false); ok {
|
||||||
@ -620,8 +620,7 @@ func match(metadata *C.Metadata) (C.Proxy, C.Rule, error) {
|
|||||||
}()
|
}()
|
||||||
}
|
}
|
||||||
|
|
||||||
if attemptProcessLookup && !findProcessMode.Off() && (findProcessMode.Always() || rule.ShouldFindProcess()) {
|
if !findProcessMode.Off() && !processFound && (findProcessMode.Always() || rule.ShouldFindProcess()) {
|
||||||
attemptProcessLookup = false
|
|
||||||
uid, path, err := P.FindProcessName(metadata.NetWork.String(), metadata.SrcIP, int(metadata.SrcPort))
|
uid, path, err := P.FindProcessName(metadata.NetWork.String(), metadata.SrcIP, int(metadata.SrcPort))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Debugln("[Process] find process %s: %v", metadata.String(), err)
|
log.Debugln("[Process] find process %s: %v", metadata.String(), err)
|
||||||
@ -629,6 +628,7 @@ func match(metadata *C.Metadata) (C.Proxy, C.Rule, error) {
|
|||||||
metadata.Process = filepath.Base(path)
|
metadata.Process = filepath.Base(path)
|
||||||
metadata.ProcessPath = path
|
metadata.ProcessPath = path
|
||||||
metadata.Uid = uid
|
metadata.Uid = uid
|
||||||
|
processFound = true
|
||||||
if procesCache != metadata.Process {
|
if procesCache != metadata.Process {
|
||||||
log.Debugln("[Process] %s from process %s", metadata.String(), path)
|
log.Debugln("[Process] %s from process %s", metadata.String(), path)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user