]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/kern/subr_xxx.c
xnu-6153.141.1.tar.gz
[apple/xnu.git] / bsd / kern / subr_xxx.c
index 503401a6c0ca1417b8f36b711742dfbfef8fe50a..c3f69f22f410bbefa6a4d9a119a5148e03af4e24 100644 (file)
@@ -1,23 +1,29 @@
 /*
- * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2018 Apple Computer, Inc. All rights reserved.
  *
- * @APPLE_LICENSE_HEADER_START@
- * 
- * The contents of this file constitute Original Code as defined in and
- * are subject to the Apple Public Source License Version 1.1 (the
- * "License").  You may not use this file except in compliance with the
- * License.  Please obtain a copy of the License at
- * http://www.apple.com/publicsource and read it before using this file.
- * 
- * This Original Code and all software distributed under the License are
- * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
+ *
+ * This file contains Original Code and/or Modifications of Original Code
+ * as defined in and that are subject to the Apple Public Source License
+ * Version 2.0 (the 'License'). You may not use this file except in
+ * compliance with the License. The rights granted to you under the License
+ * may not be used to create, or enable the creation or redistribution of,
+ * unlawful or unlicensed copies of an Apple operating system, or to
+ * circumvent, violate, or enable the circumvention or violation of, any
+ * terms of an Apple operating system software license agreement.
+ *
+ * Please obtain a copy of the License at
+ * http://www.opensource.apple.com/apsl/ and read it before using this file.
+ *
+ * The Original Code and all software distributed under the License are
+ * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
  * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
  * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT.  Please see the
- * License for the specific language governing rights and limitations
- * under the License.
- * 
- * @APPLE_LICENSE_HEADER_END@
+ * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
+ * Please see the License for the specific language governing rights and
+ * limitations under the License.
+ *
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
  */
 /* Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved */
 /*
 
 #include <sys/param.h>
 #include <sys/systm.h>
+#include <sys/kernel.h>
 #include <sys/conf.h>
-#include <sys/buf.h>
-#include <sys/proc.h>
+#include <sys/proc_internal.h>
 #include <sys/vnode.h>
 #include <sys/uio.h>
+#include <sys/sysproto.h>
+
+#include <sys/signalvar.h>              /* for psignal() */
+#include <kern/debug.h>
+
+#if DEVELOPMENT || DEBUG
+bool send_sigsys = true;
+#else
+#define send_sigsys true
+#endif
 
 /*
  * Unsupported device function (e.g. writing to read-only device).
  */
 int
-enodev()
+enodev(void)
 {
-       return (ENODEV);
+       return ENODEV;
 }
 
-/* 
+/*
  * Unsupported strategy function.
  */
 void
-enodev_strat()
+enodev_strat(void)
 {
        return;
 }
@@ -85,18 +101,18 @@ enodev_strat()
  * Unconfigured device function; driver not configured.
  */
 int
-enxio()
+enxio(void)
 {
-       return (ENXIO);
+       return ENXIO;
 }
 
 /*
  * Unsupported ioctl function.
  */
 int
-enoioctl()
+enoioctl(void)
 {
-       return (ENOTTY);
+       return ENOTTY;
 }
 
 
@@ -106,28 +122,30 @@ enoioctl()
  * that is not supported by the current system binary.
  */
 int
-enosys()
+enosys(void)
 {
-       return (ENOSYS);
+       return ENOSYS;
 }
 
 /*
  * Return error for operation not supported
  * on a specific object or file type.
+ *
+ * XXX Name of this routine is wrong.
  */
 int
-eopnotsupp()
+eopnotsupp(void)
 {
-       return (EOPNOTSUPP);
+       return ENOTSUP;
 }
 
 /*
  * Generic null operation, always returns success.
  */
 int
-nullop()
+nullop(void)
 {
-       return (0);
+       return 0;
 }
 
 
@@ -136,22 +154,22 @@ nullop()
  * in the bdevsw and cdevsw tables.
  */
 int
-nulldev()
+nulldev(void)
 {
-       return (0);
+       return 0;
 }
 
 /*
  * Null system calls. Not invalid, just not configured.
  */
 int
-errsys()
+errsys(void)
 {
-       return(EINVAL);
+       return EINVAL;
 }
 
 void
-nullsys()
+nullsys(void)
 {
 }
 
@@ -162,26 +180,29 @@ nullsys()
  */
 /* ARGSUSED */
 int
-nosys(p, args, retval)
-       struct proc *p;
-       void *args;
-       register_t *retval;
+nosys(__unused struct proc *p, __unused struct nosys_args *args, __unused int32_t *retval)
 {
-       psignal(p, SIGSYS);
-       return (ENOSYS);
+       if (send_sigsys) {
+               psignal_uthread(current_thread(), SIGSYS);
+       }
+       return ENOSYS;
 }
 
-#ifdef GPROF
-/*
- * Stub routine in case it is ever possible to free space.
- */
+#if !CRYPTO
+#include <crypto/rc4/rc4.h>
+
+/* Stubs must be present in all configs for Unsupported KPI exports */
+
 void
-cfreemem(cp, size)
-       caddr_t cp;
-       int size;
+rc4_init(struct rc4_state *state __unused, const u_char *key __unused, int keylen __unused)
 {
-       printf("freeing %x, size %d\n", cp, size);
+       panic("rc4_init: unsupported kernel configuration");
 }
-#endif
-
 
+void
+rc4_crypt(struct rc4_state *state __unused,
+    const u_char *inbuf __unused, u_char *outbuf __unused, int buflen __unused)
+{
+       panic("rc4_crypt: unsupported kernel configuration");
+}
+#endif /* !CRYPTO */