rm 4.1 compat
[unix-history] / usr / src / sys / kern / kern_xxx.c
/*
* Copyright (c) 1982, 1986 Regents of the University of California.
* All rights reserved. The Berkeley software License Agreement
* specifies the terms and conditions for redistribution.
*
* @(#)kern_xxx.c 7.3 (Berkeley) %G%
*/
#include "param.h"
#include "systm.h"
#include "dir.h"
#include "user.h"
#include "kernel.h"
#include "proc.h"
#include "reboot.h"
gethostid()
{
u.u_r.r_val1 = hostid;
}
sethostid()
{
struct a {
long hostid;
} *uap = (struct a *)u.u_ap;
if (suser())
hostid = uap->hostid;
}
gethostname()
{
register struct a {
char *hostname;
u_int len;
} *uap = (struct a *)u.u_ap;
register u_int len;
len = uap->len;
if (len > hostnamelen + 1)
len = hostnamelen + 1;
u.u_error = copyout((caddr_t)hostname, (caddr_t)uap->hostname, len);
}
sethostname()
{
register struct a {
char *hostname;
u_int len;
} *uap = (struct a *)u.u_ap;
if (!suser())
return;
if (uap->len > sizeof (hostname) - 1) {
u.u_error = EINVAL;
return;
}
hostnamelen = uap->len;
u.u_error = copyin((caddr_t)uap->hostname, hostname, uap->len);
hostname[hostnamelen] = 0;
}
reboot()
{
register struct a {
int opt;
};
if (suser())
boot(((struct a *)u.u_ap)->opt);
}