summaryrefslogtreecommitdiffstats
path: root/sys/amd64/linux32
diff options
context:
space:
mode:
authored <ed@FreeBSD.org>2008-11-09 10:45:13 +0000
committered <ed@FreeBSD.org>2008-11-09 10:45:13 +0000
commit9d3703b8426a4dbb7eb7244d73de96428caf1532 (patch)
tree54928970669608762abe861909dd03f729e065cb /sys/amd64/linux32
parent43e6672f4c8f60d63328221a5abc0cc13663d14f (diff)
downloadFreeBSD-src-9d3703b8426a4dbb7eb7244d73de96428caf1532.zip
FreeBSD-src-9d3703b8426a4dbb7eb7244d73de96428caf1532.tar.gz
Mark uname(), getdomainname() and setdomainname() with COMPAT_FREEBSD4.
Looking at our source code history, it seems the uname(), getdomainname() and setdomainname() system calls got deprecated somewhere after FreeBSD 1.1, but they have never been phased out properly. Because we don't have a COMPAT_FREEBSD1, just use COMPAT_FREEBSD4. Also fix the Linuxolator to build without the setdomainname() routine by just making it call userland_sysctl on kern.domainname. Also replace the setdomainname()'s implementation to use this approach, because we're duplicating code with sysctl_domainname(). I wasn't able to keep these three routines working in our COMPAT_FREEBSD32, because that would require yet another keyword for syscalls.master (COMPAT4+NOPROTO). Because this routine is probably unused already, this won't be a problem in practice. If it turns out to be a problem, we'll just restore this functionality. Reviewed by: rdivacky, kib
Diffstat (limited to 'sys/amd64/linux32')
-rw-r--r--sys/amd64/linux32/syscalls.master2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/amd64/linux32/syscalls.master b/sys/amd64/linux32/syscalls.master
index 1b0857d..fe0485e 100644
--- a/sys/amd64/linux32/syscalls.master
+++ b/sys/amd64/linux32/syscalls.master
@@ -216,7 +216,7 @@
; linux uses some strange calling convention here so we have to use the dummy arg
120 AUE_RFORK STD { int linux_clone(l_int flags, void *stack, \
void *parent_tidptr, int dummy, void * child_tidptr); }
-121 AUE_SYSCTL NOPROTO { int setdomainname(char *name, \
+121 AUE_SYSCTL STD { int linux_setdomainname(char *name, \
int len); }
122 AUE_NULL STD { int linux_newuname( \
struct l_new_utsname *buf); }
OpenPOWER on IntegriCloud