Loading...
bsd/sys/exec.h xnu-12377.101.15 xnu-517
--- xnu/xnu-12377.101.15/bsd/sys/exec.h
+++ xnu/xnu-517/bsd/sys/exec.h
@@ -1,20 +1,17 @@
 /*
  * Copyright (c) 2000-2002 Apple Computer, Inc. All rights reserved.
  *
- * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
- *
+ * @APPLE_LICENSE_HEADER_START@
+ * 
+ * Copyright (c) 1999-2003 Apple Computer, Inc.  All Rights Reserved.
+ * 
  * 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.
- *
+ * compliance with the License. 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,
@@ -22,8 +19,8 @@
  * 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@
+ * 
+ * @APPLE_LICENSE_HEADER_END@
  */
 /* Copyright (c) 1995 NeXT Computer, Inc. All Rights Reserved */
 /*-
@@ -66,17 +63,43 @@
  *	@(#)exec.h	8.3 (Berkeley) 1/21/94
  */
 
-#ifndef _SYS_EXEC_H_
-#define _SYS_EXEC_H_
+#ifndef	_SYS_EXEC_H_
+#define	_SYS_EXEC_H_
 
 #include <sys/appleapiopts.h>
 
+#ifdef  __APPLE_API_OBSOLETE
 /*
- * XXX at this point, this file only exists for backward compatability with
- * XXX software which includes <sys/exec.h> instead of the more correct
- * XXX <machine/exec.h> and/or need the inclusion of <sys/appleapiopts.h>
- * XXX as a side effect.
+ * The following structure is found at the top of the user stack of each
+ * user process. The ps program uses it to locate argv and environment
+ * strings. Programs that wish ps to display other information may modify
+ * it; normally ps_argvstr points to the text for argv[0], and ps_nargvstr
+ * is the same as the program's argc. The fields ps_envstr and ps_nenvstr
+ * are the equivalent for the environment.
  */
+struct ps_strings {
+	char	*ps_argvstr;	/* first of 0 or more argument strings */
+	int	ps_nargvstr;	/* the number of argument strings */
+	char	*ps_envstr;	/* first of 0 or more environment strings */
+	int	ps_nenvstr;	/* the number of environment strings */
+};
+
+#endif /* __APPLE_API_OBSOLETE */
+
 #include <machine/exec.h>
 
+#ifdef KERNEL
+#ifdef __APPLE_API_PRIVATE
+/*
+ * Arguments to the exec system call.
+ */
+struct execve_args {
+	char	*fname;
+	char	**argp;
+	char	**envp;
+};
+#endif /*__APPLE_API_PRIVATE */
+#endif /* KERNEL */
+
 #endif /* !_SYS_EXEC_H_ */
+