Deleted Added
full compact
kern_sysctl.c (46112) kern_sysctl.c (46155)
1/*-
2 * Copyright (c) 1982, 1986, 1989, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Mike Karels at Berkeley Software Design, Inc.
7 *
8 * Quite extensively rewritten by Poul-Henning Kamp of the FreeBSD

--- 23 unchanged lines hidden (view full) ---

32 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * SUCH DAMAGE.
38 *
39 * @(#)kern_sysctl.c 8.4 (Berkeley) 4/14/94
1/*-
2 * Copyright (c) 1982, 1986, 1989, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Mike Karels at Berkeley Software Design, Inc.
7 *
8 * Quite extensively rewritten by Poul-Henning Kamp of the FreeBSD

--- 23 unchanged lines hidden (view full) ---

32 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
33 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
34 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
35 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
36 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
37 * SUCH DAMAGE.
38 *
39 * @(#)kern_sysctl.c 8.4 (Berkeley) 4/14/94
40 * $Id: kern_sysctl.c,v 1.86 1999/03/30 09:00:45 phk Exp $
40 * $Id: kern_sysctl.c,v 1.87 1999/04/27 11:16:05 phk Exp $
41 */
42
43#include "opt_compat.h"
44
45#include <sys/param.h>
46#include <sys/buf.h>
47#include <sys/kernel.h>
48#include <sys/sysctl.h>

--- 710 unchanged lines hidden (view full) ---

759 /* If writing isn't allowed */
760 if (req->newptr && (!(oid->oid_kind & CTLFLAG_WR) ||
761 ((oid->oid_kind & CTLFLAG_SECURE) && securelevel > 0)))
762 return (EPERM);
763
764 /* Most likely only root can write */
765 if (!(oid->oid_kind & CTLFLAG_ANYBODY) &&
766 req->newptr && req->p &&
41 */
42
43#include "opt_compat.h"
44
45#include <sys/param.h>
46#include <sys/buf.h>
47#include <sys/kernel.h>
48#include <sys/sysctl.h>

--- 710 unchanged lines hidden (view full) ---

759 /* If writing isn't allowed */
760 if (req->newptr && (!(oid->oid_kind & CTLFLAG_WR) ||
761 ((oid->oid_kind & CTLFLAG_SECURE) && securelevel > 0)))
762 return (EPERM);
763
764 /* Most likely only root can write */
765 if (!(oid->oid_kind & CTLFLAG_ANYBODY) &&
766 req->newptr && req->p &&
767 (i = suser(req->p)))
767 (i = suser_xxx(0, req->p,
768 (oid->oid_kind & CTLFLAG_PRISON) ? PRISON_ROOT : 0)))
768 return (i);
769
770 if (!oid->oid_handler)
771 return EINVAL;
772
773 if ((oid->oid_kind & CTLTYPE) == CTLTYPE_NODE) {
774 i = (oid->oid_handler) (oid,
775 name + indx, namelen - indx,

--- 330 unchanged lines hidden ---
769 return (i);
770
771 if (!oid->oid_handler)
772 return EINVAL;
773
774 if ((oid->oid_kind & CTLTYPE) == CTLTYPE_NODE) {
775 i = (oid->oid_handler) (oid,
776 name + indx, namelen - indx,

--- 330 unchanged lines hidden ---