summaryrefslogtreecommitdiffstats
path: root/lib/libc/regex/regex2.h
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2001-04-02 01:02:32 +0000
committerrwatson <rwatson@FreeBSD.org>2001-04-02 01:02:32 +0000
commit3100bf9079fdce415a0e7394dfaeb5914b09c958 (patch)
tree89112cb3cb092acfed7006aa4fe784e167f8a3a6 /lib/libc/regex/regex2.h
parent7526515200d98995fbd83fb535488a7baa2b01f9 (diff)
downloadFreeBSD-src-3100bf9079fdce415a0e7394dfaeb5914b09c958.zip
FreeBSD-src-3100bf9079fdce415a0e7394dfaeb5914b09c958.tar.gz
o Correct an ACL implementation bug that could result in a system panic
under heavy use when default ACLs were bgin inherited by new files or directories. This is done by removing a bug in default ACL reading, and improving error handling for this failure case: - Move the setting of the buffer length (len) variable to above the ACL type (ap->a_type) switch rather than having it only for ACL_TYPE_ACCESS. Otherwise, the len variable is unitialized in the ACL_TYPE_DEFAULT case, which generally worked right, but could result in failure. - Add a check for a short/long read of the ACL_TYPE_DEFAULT type from the underlying EA, resulting in EPERM rather than passing a potentially corrupted ACL back to the caller (resulting "cleaner" failures if the EA is damaged: right now, the caller will almost always panic in the presence of a corrupted EA). This code is similar to code in the ACL_TYPE_ACCESS handling in the previous switch case. - While I'm fixing this code, remove a redundant bzero() of the ACL reader buffer; it need only be initialized above the acl_type switch. Obtained from: TrustedBSD Project
Diffstat (limited to 'lib/libc/regex/regex2.h')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud