diff --git a/sys/compat/linux/common/linux_misc.c b/sys/compat/linux/common/linux_misc.c index 2b2cf18dc351..6b3b1b50d658 100644 --- a/sys/compat/linux/common/linux_misc.c +++ b/sys/compat/linux/common/linux_misc.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_misc.c,v 1.74 2000/12/01 12:28:33 jdolecek Exp $ */ +/* $NetBSD: linux_misc.c,v 1.75 2000/12/01 21:14:42 jdolecek Exp $ */ /*- * Copyright (c) 1995, 1998, 1999 The NetBSD Foundation, Inc. @@ -90,6 +90,8 @@ #include #include #include +#include /* for SWAP_ON */ +#include /* for KERN_DOMAINNAME */ #include #include @@ -1167,3 +1169,47 @@ linux_sys_reboot(struct proc *p, void *v, register_t *retval) return(sys_reboot(p, &sra, retval)); } + +/* + * Copy of compat_12_sys_swapon(). + */ +int +linux_sys_swapon(p, v, retval) + struct proc *p; + void *v; + register_t *retval; +{ + struct sys_swapctl_args ua; + struct linux_sys_swapon_args /* { + syscallarg(const char *) name; + } */ *uap = v; + + SCARG(&ua, cmd) = SWAP_ON; + SCARG(&ua, arg) = (void *)SCARG(uap, name); + SCARG(&ua, misc) = 0; /* priority */ + return (sys_swapctl(p, &ua, retval)); +} + +/* + * Copy of compat_09_sys_setdomainname() + */ +/* ARGSUSED */ +int +linux_sys_setdomainname(p, v, retval) + struct proc *p; + void *v; + register_t *retval; +{ + struct linux_sys_setdomainname_args /* { + syscallarg(char *) domainname; + syscallarg(int) len; + } */ *uap = v; + int name; + int error; + + if ((error = suser(p->p_ucred, &p->p_acflag)) != 0) + return (error); + name = KERN_DOMAINNAME; + return (kern_sysctl(&name, 1, 0, 0, SCARG(uap, domainname), + SCARG(uap, len), p)); +}