]> git.saurik.com Git - apple/launchd.git/blob - launchd/src/launchd.h
launchd-329.3.tar.gz
[apple/launchd.git] / launchd / src / launchd.h
1 /*
2 * Copyright (c) 2005 Apple Computer, Inc. All rights reserved.
3 *
4 * @APPLE_APACHE_LICENSE_HEADER_START@
5 *
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
9 *
10 * http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 *
18 * @APPLE_APACHE_LICENSE_HEADER_END@
19 */
20 #ifndef __LAUNCHD_H__
21 #define __LAUNCHD_H__
22
23 #include <mach/mach.h>
24 #include <mach/port.h>
25 #include "launch.h"
26 #include "bootstrap.h"
27 #include "launchd_runtime.h"
28
29 struct kevent;
30 struct conncb;
31
32 extern bool shutdown_in_progress;
33 extern bool fake_shutdown_in_progress;
34 extern bool network_up;
35 extern bool g_force_old_kill_path;
36 extern bool g_simulate_pid1_crash;
37 extern FILE *g_console;
38 extern char g_launchd_database_dir[PATH_MAX];
39
40 bool init_check_pid(pid_t);
41
42 launch_data_t launchd_setstdio(int d, launch_data_t o);
43 void launchd_SessionCreate(void);
44 void launchd_shutdown(void);
45 void launchd_single_user(void);
46 boolean_t launchd_mach_ipc_demux(mach_msg_header_t *Request, mach_msg_header_t *Reply);
47
48 enum {
49 LAUNCHD_DB_TYPE_OVERRIDES,
50 LAUNCHD_DB_TYPE_JOBCACHE,
51 LAUNCHD_DB_TYPE_LAST,
52 };
53 char *launchd_data_base_path(int db_type);
54
55 void mach_start_shutdown(void);
56
57 int _fd(int fd);
58
59 #endif