summaryrefslogtreecommitdiffstats
path: root/lib/libc/arch/sparc
diff options
context:
space:
mode:
authorguenther <guenther@openbsd.org>2016-03-21 00:41:13 +0000
committerguenther <guenther@openbsd.org>2016-03-21 00:41:13 +0000
commitd97c60ea32de0a8a99b5d664064a75f410d0cf8b (patch)
tree90566aa07de0639ae6cc3262ea28061511ea0ef0 /lib/libc/arch/sparc
parentPlug a memory leak in vnet(4) ioctl code path. (diff)
downloadwireguard-openbsd-d97c60ea32de0a8a99b5d664064a75f410d0cf8b.tar.xz
wireguard-openbsd-d97c60ea32de0a8a99b5d664064a75f410d0cf8b.zip
The asm in the MD_DISABLE_KBIND macro was too fragile and broke alpha and hppa.
So instead, do the kbind disabling with syscall(). debugging and ok deraadt@, ok kettenis@
Diffstat (limited to 'lib/libc/arch/sparc')
-rw-r--r--lib/libc/arch/sparc/gdtoa/kbind.h27
1 files changed, 0 insertions, 27 deletions
diff --git a/lib/libc/arch/sparc/gdtoa/kbind.h b/lib/libc/arch/sparc/gdtoa/kbind.h
deleted file mode 100644
index 62db01ad881..00000000000
--- a/lib/libc/arch/sparc/gdtoa/kbind.h
+++ /dev/null
@@ -1,27 +0,0 @@
-/* $OpenBSD: kbind.h,v 1.1 2016/03/20 02:32:39 guenther Exp $ */
-
-/*
- * Copyright (c) 2016 Philip Guenther <guenther@openbsd.org>
- *
- * Permission to use, copy, modify, and distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
- * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
- * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
- * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
- */
-
-#include <sys/syscall.h>
-
-#define MD_DISABLE_KBIND \
- do { \
- register long syscall_num __asm("g1") = SYS_kbind; \
- register void *arg1 __asm("o0") = NULL; \
- __asm volatile("t 0" : "+r" (arg1) : "r" (syscall_num) \
- : "o1", "cc"); \
- } while (0)