MAC: mac_policy.h: Declare common MAC sysctl and jail parameters' nodesDo this only when the headers for these functionalities were includedprior to this one. Indeed, if they need to be included,
MAC: mac_policy.h: Declare common MAC sysctl and jail parameters' nodesDo this only when the headers for these functionalities were includedprior to this one. Indeed, if they need to be included, style(9)mandates they should have been so before this one.Remove the common MAC sysctl declaration from<security/mac/mac_internal.h>, as it is now redundant (all its includersalso include <security/mac/mac_policy.h>).Remove local such declarations from all policies' files.Reviewed by: jamieApproved by: markj (mentor)MFC after: 5 daysSponsored by: The FreeBSD FoundationDifferential Revision: https://reviews.freebsd.org/D46903
show more ...
sys: Remove $FreeBSD$: two-line .h patternRemove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that arestill not MPSAFE (or already are but aren’t properly mark
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that arestill not MPSAFE (or already are but aren’t properly marked).Use it in preparation for a general review of all nodes.This is non-functional change that adds annotations to SYSCTL_NODE andSYSCTL_PROC nodes using one of the soon-to-be-required flags.Mark all obvious cases as MPSAFE. All entries that haven't been markedas MPSAFE before are by default marked as NEEDGIANTApproved by: kib (mentor, blanket)Commented by: kib, gallatin, melifaroDifferential Revision: https://reviews.freebsd.org/D23718
Make it possible to run ntpd as a non-root user, add ntpd uid and gid.Code analysis and runtime analysis using truss(8) indicate that the onlyprivileged operations performed by ntpd are adjusting
Make it possible to run ntpd as a non-root user, add ntpd uid and gid.Code analysis and runtime analysis using truss(8) indicate that the onlyprivileged operations performed by ntpd are adjusting system time, and(re-)binding to privileged UDP port 123. These changes add a new mac(4)policy module, mac_ntpd(4), which grants just those privileges to anyprocess running with uid 123.This also adds a new user and group, ntpd:ntpd, (uid:gid 123:123), and makesthem the owner of the /var/db/ntp directory, so that it can be used as alocation where the non-privileged daemon can write files such as thedriftfile, and any optional logfile or stats files.Because there are so many ways to configure ntpd, the question of how toconfigure it to run without root privs can be a bit complex, so that will beaddressed in a separate commit. These changes are just what's required togrant the limited subset of privs to ntpd, and the small change to ntpd toprevent it from exiting with an error if running as non-root.Differential Revision: https://reviews.freebsd.org/D16281