Date: Wed, 29 Aug 2007 20:35:19 GMT From: Robert Watson <rwatson@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 125828 for review Message-ID: <200708292035.l7TKZJ5G010945@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=125828 Change 125828 by rwatson@rwatson_zoo on 2007/08/29 20:34:59 Fix issues in recent integration by adapting branch-local code to new world order from CVS. Affected files ... .. //depot/projects/trustedbsd/mac/sys/i386/i386/trap.c#52 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_policy.h#5 edit .. //depot/projects/trustedbsd/mac/sys/security/mac_test/mac_test.c#155 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/i386/i386/trap.c#52 (text+ko) ==== @@ -64,7 +64,6 @@ #include <sys/kernel.h> #include <sys/ktr.h> #include <sys/lock.h> -#include <sys/mac.h> #include <sys/mutex.h> #include <sys/resourcevar.h> #include <sys/signalvar.h> @@ -80,6 +79,7 @@ #include <sys/pmckern.h> #endif #include <security/audit/audit.h> +#include <security/mac/mac_framework.h> #include <vm/vm.h> #include <vm/vm_param.h> ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_policy.h#5 (text+ko) ==== @@ -323,6 +323,9 @@ struct label *ifplabel, struct label *newlabel); typedef void (*mpo_update_ipq_t)(struct mbuf *m, struct label *mlabel, struct ipq *ipq, struct label *ipqlabel); +typedef int (*mpo_update_mbuf_from_cipso_t)(struct mbuf *m, + struct label *mlabel, struct ifnet *ifp, + struct label *ifplabel, char *cp, int *code); typedef void (*mpo_inpcb_sosetlabel_t)(struct socket *so, struct label *label, struct inpcb *inp, struct label *inplabel); @@ -757,6 +760,7 @@ mpo_reflect_mbuf_tcp_t mpo_reflect_mbuf_tcp; mpo_relabel_ifnet_t mpo_relabel_ifnet; mpo_update_ipq_t mpo_update_ipq; + mpo_update_mbuf_from_cipso_t mpo_update_mbuf_from_cipso; mpo_inpcb_sosetlabel_t mpo_inpcb_sosetlabel; /* ==== //depot/projects/trustedbsd/mac/sys/security/mac_test/mac_test.c#155 (text+ko) ==== @@ -1068,11 +1068,11 @@ COUNTER_DECL(update_mbuf_from_cipso); static int mac_test_update_mbuf_from_cipso(struct mbuf *m, struct label *mlabel, - struct ifnet *ifnet, struct label *ifnetlabel, char *cp, int *code) + struct ifnet *ifp, struct label *ifplabel, char *cp, int *code) { - ASSERT_MBUF_LABEL(mlabel); - ASSERT_IFNET_LABEL(ifnetlabel); + LABEL_CHECK(mlabel, MAGIC_MBUF); + LABEL_CHECK(ifplabel, MAGIC_IFNET); return (0); } @@ -1152,15 +1152,23 @@ } COUNTER_DECL(thread_userret); +static void +mac_test_thread_userret(struct thread *td) +{ + + COUNTER_INC(thread_userret); +} + +COUNTER_DECL(thread_userret_sysctl); static int sysctl_mac_test_thread_userret(SYSCTL_HANDLER_ARGS) { - COUNTER_INC(thread_userret); - mtx_lock_spin(&sched_lock); + COUNTER_INC(thread_userret_sysctl); + thread_lock(curthread); curthread->td_flags |= TDF_ASTPENDING; curthread->td_proc->p_sflag |= PS_MACPEND; - mtx_unlock_spin(&sched_lock); + thread_unlock(curthread); return (sysctl_handle_int(oidp, NULL, curthread->td_proc->p_pid, req)); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200708292035.l7TKZJ5G010945>