mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
Merge tag 'audit-pr-20250121' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit
Pull audit update from Paul Moore: "A single audit patch that fixes a problem when collecting pathnames for audit PATH records that was caused by some faulty pathname matching logic" * tag 'audit-pr-20250121' of git://git.kernel.org/pub/scm/linux/kernel/git/pcmoore/audit: audit: fix suffixed '/' filename matching
This commit is contained in:
@@ -1319,13 +1319,20 @@ int audit_compare_dname_path(const struct qstr *dname, const char *path, int par
|
||||
if (pathlen < dlen)
|
||||
return 1;
|
||||
|
||||
parentlen = parentlen == AUDIT_NAME_FULL ? parent_len(path) : parentlen;
|
||||
if (pathlen - parentlen != dlen)
|
||||
return 1;
|
||||
if (parentlen == AUDIT_NAME_FULL)
|
||||
parentlen = parent_len(path);
|
||||
|
||||
p = path + parentlen;
|
||||
|
||||
return strncmp(p, dname->name, dlen);
|
||||
/* handle trailing slashes */
|
||||
pathlen -= parentlen;
|
||||
while (p[pathlen - 1] == '/')
|
||||
pathlen--;
|
||||
|
||||
if (pathlen != dlen)
|
||||
return 1;
|
||||
|
||||
return memcmp(p, dname->name, dlen);
|
||||
}
|
||||
|
||||
int audit_filter(int msgtype, unsigned int listtype)
|
||||
|
||||
Reference in New Issue
Block a user