1 | /* |
2 | This file is part of the KDE libraries |
3 | Copyright (c) 1999 Waldo Bastian <bastian@kde.org> |
4 | |
5 | This library is free software; you can redistribute it and/or |
6 | modify it under the terms of the GNU Library General Public |
7 | License version 2 as published by the Free Software Foundation. |
8 | |
9 | This library is distributed in the hope that it will be useful, |
10 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 | Library General Public License for more details. |
13 | |
14 | You should have received a copy of the GNU Library General Public License |
15 | along with this library; see the file COPYING.LIB. If not, write to |
16 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
17 | Boston, MA 02110-1301, USA. |
18 | */ |
19 | |
20 | #ifndef _KLAUNCHER_CMDS_H_ |
21 | #define _KLAUNCHER_CMDS_H_ |
22 | |
23 | #define KDED_EXENAME "kded4" |
24 | |
25 | typedef struct |
26 | { |
27 | long cmd; |
28 | long arg_length; |
29 | } ; |
30 | |
31 | /* Launcher commands: */ |
32 | |
33 | #define LAUNCHER_EXEC 1 |
34 | /* |
35 | * LAUNCHER_EXEC |
36 | * |
37 | * Start a new process. Try using LAUNCHER_EXEC_NEW instead. |
38 | * There will be no app startup notification. |
39 | * |
40 | * long argc: number of arguments |
41 | * char *args: arguments, argument 0 is the program to start. |
42 | */ |
43 | |
44 | |
45 | #define LAUNCHER_SETENV 2 |
46 | /* |
47 | * LAUNCHER_SETENV |
48 | * |
49 | * Change environment of future processes launched via kdeinit. |
50 | * DON'T use this if you want to change environment only for one |
51 | * application you're going to start. |
52 | * |
53 | * char *env_name; |
54 | * char *env_value; |
55 | */ |
56 | |
57 | #define LAUNCHER_CHILD_DIED 3 |
58 | /* |
59 | * LAUNCHER_CHILD_DIED |
60 | * |
61 | * Notification A child of kdeinit died. |
62 | * |
63 | * long pid; |
64 | * long exit_code; |
65 | */ |
66 | |
67 | #define LAUNCHER_OK 4 |
68 | /* |
69 | * LAUNCHER_OK |
70 | * |
71 | * Notification Last process launched ok. |
72 | * |
73 | * long pid; |
74 | */ |
75 | |
76 | #define LAUNCHER_ERROR 5 |
77 | /* |
78 | * LAUNCHER_ERROR |
79 | * |
80 | * Notification Last process could not be launched. |
81 | * |
82 | * char *error msg (utf8) |
83 | */ |
84 | |
85 | #define LAUNCHER_SHELL 6 |
86 | /* |
87 | * LAUNCHER_SHELL |
88 | * |
89 | * Start a new process and use given environment. |
90 | * Starts app-startup notification. |
91 | * |
92 | * long argc: number of arguments |
93 | * char *args: arguments, argument 0 is the program to start. |
94 | * char *cwd: Working directory. |
95 | * long envc: number of environment vars |
96 | * char *envs: environment strings. |
97 | * int avoid_loops : avoid using the first path in $PATH where |
98 | * this process binary is found in order to avoid |
99 | * infinite loop by binary->kdeinit_wrapper link in $PATH |
100 | * char* startup_id: app startup notification id, "0" for none, |
101 | * "" ( empty string ) is the default |
102 | */ |
103 | |
104 | #define LAUNCHER_TERMINATE_KDE 7 |
105 | |
106 | /* |
107 | * LAUNCHER_TERMINATE_KDEINIT |
108 | * |
109 | * Suicide is painless |
110 | */ |
111 | #define LAUNCHER_TERMINATE_KDEINIT 8 |
112 | |
113 | #define LAUNCHER_DEBUG_WAIT 9 |
114 | /* |
115 | * LAUNCHER_DEBUG_WAIT |
116 | * |
117 | * Next process started will do a sleep(1000000) |
118 | * before calling main()/kdemain() |
119 | * |
120 | * (Used for debugging io-slaves) |
121 | */ |
122 | |
123 | #define LAUNCHER_EXT_EXEC 10 |
124 | /* |
125 | * LAUNCHER_EXT_EXEC |
126 | * |
127 | * Start a new process. The given environment variables will |
128 | * be added to its environment before starting it. |
129 | * Starts app-startup notification. |
130 | * |
131 | * long argc: number of arguments |
132 | * char *args: arguments, argument 0 is the program to start. |
133 | * long envc: number of environment vars |
134 | * char *envs: environment strings. |
135 | * int avoid_loops : avoid using the first path in $PATH where |
136 | * this process binary is found in order to avoid |
137 | * infinite loop by binary->kdeinit_wrapper link in $PATH |
138 | * char* startup_id: app startup notification id, "0" for none, |
139 | * "" ( empty string ) is the default |
140 | * |
141 | */ |
142 | |
143 | |
144 | #define LAUNCHER_KWRAPPER 11 |
145 | /* |
146 | * LAUNCHER_KWRAPPER |
147 | * |
148 | * Start a new process, use given environment, pass signals and output. |
149 | * Starts app-startup notification. |
150 | * |
151 | * long argc: number of arguments |
152 | * char *args: arguments, argument 0 is the program to start. |
153 | * char *cwd: Working directory. |
154 | * long envc: number of environment vars |
155 | * char *envs: environment strings. |
156 | * char *tty: tty to redirect stdout/stderr to. |
157 | * int avoid_loops : avoid using the first path in $PATH where |
158 | * this process binary is found in order to avoid |
159 | * infinite loop by binary->kdeinit_wrapper link in $PATH |
160 | * char* startup_id: app startup notification id, "0" for none, |
161 | * "" ( empty string ) is the default |
162 | */ |
163 | |
164 | #define LAUNCHER_EXEC_NEW 12 |
165 | /* |
166 | * LAUNCHER_EXEC_NEW |
167 | * |
168 | * Start a new process. An improved version of LAUNCHER_EXEC. |
169 | * The given environment variables will be added |
170 | * to its environment before starting it. |
171 | * There will be no app startup notification. |
172 | * |
173 | * long argc: number of arguments |
174 | * char *args: arguments, argument 0 is the program to start. |
175 | * long envc: number of environment vars |
176 | * char *envs: environment strings. |
177 | * int avoid_loops : avoid using the first path in $PATH where |
178 | * this process binary is found in order to avoid |
179 | * infinite loop by binary->kdeinit_wrapper link in $PATH |
180 | */ |
181 | |
182 | const char* commandToString(int command); |
183 | |
184 | #endif |
185 | |