clocal, nonblock, other carrier related stuff
[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.5 (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 (u.u_error = suser(u.u_cred, &u.u_acflag))
return;
hostid = uap->hostid;
}
gethostname()
{
register struct a {
char *hostname;
u_int len;
} *uap = (struct a *)u.u_ap;
if (uap->len > hostnamelen + 1)
uap->len = hostnamelen + 1;
u.u_error = copyout((caddr_t)hostname, (caddr_t)uap->hostname,
uap->len);
}
sethostname()
{
register struct a {
char *hostname;
u_int len;
} *uap = (struct a *)u.u_ap;
if (u.u_error = suser(u.u_cred, &u.u_acflag))
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 (u.u_error = suser(u.u_cred, &u.u_acflag))
return;
boot(((struct a *)u.u_ap)->opt);
}