mirror of
https://github.com/SagerNet/sing-box.git
synced 2026-04-11 17:47:20 +10:00
Fix package_name shared uid matching
This commit is contained in:
@@ -426,8 +426,8 @@ func (r *Router) matchRule(
|
||||
} else {
|
||||
r.logger.InfoContext(ctx, "found process path: ", processInfo.ProcessPath)
|
||||
}
|
||||
} else if processInfo.AndroidPackageName != "" {
|
||||
r.logger.InfoContext(ctx, "found package name: ", processInfo.AndroidPackageName)
|
||||
} else if len(processInfo.AndroidPackageNames) > 0 {
|
||||
r.logger.InfoContext(ctx, "found package name: ", strings.Join(processInfo.AndroidPackageNames, ", "))
|
||||
} else if processInfo.UserId != -1 {
|
||||
if processInfo.UserName != "" {
|
||||
r.logger.InfoContext(ctx, "found user: ", processInfo.UserName)
|
||||
|
||||
@@ -25,10 +25,15 @@ func NewPackageNameItem(packageNameList []string) *PackageNameItem {
|
||||
}
|
||||
|
||||
func (r *PackageNameItem) Match(metadata *adapter.InboundContext) bool {
|
||||
if metadata.ProcessInfo == nil || metadata.ProcessInfo.AndroidPackageName == "" {
|
||||
if metadata.ProcessInfo == nil || len(metadata.ProcessInfo.AndroidPackageNames) == 0 {
|
||||
return false
|
||||
}
|
||||
return r.packageMap[metadata.ProcessInfo.AndroidPackageName]
|
||||
for _, packageName := range metadata.ProcessInfo.AndroidPackageNames {
|
||||
if r.packageMap[packageName] {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (r *PackageNameItem) String() string {
|
||||
|
||||
Reference in New Issue
Block a user