Lines Matching refs:content
32 static void NotifyResToParent(struct AppSpawnContent *content, AppSpawnClient *client, int result) in NotifyResToParent() argument
35 if (content->notifyResToParent != NULL) { in NotifyResToParent()
36 content->notifyResToParent(content, client, result); in NotifyResToParent()
91 int AppSpawnChild(AppSpawnContent *content, AppSpawnClient *client) in AppSpawnChild() argument
93 APPSPAWN_CHECK(content != NULL && client != NULL, return -1, "Invalid arg for appspawn child"); in AppSpawnChild()
96 int ret = AppSpawnExecuteClearEnvHook(content, client); in AppSpawnChild()
99 NotifyResToParent(content, client, ret); in AppSpawnChild()
100 AppSpawnEnvClear(content, client); in AppSpawnChild()
105 if (content->coldStartApp != NULL && content->coldStartApp(content, client) == 0) { in AppSpawnChild()
114 ret = AppSpawnExecuteSpawningHook(content, client); in AppSpawnChild()
117 NotifyResToParent(content, client, ret); in AppSpawnChild()
118 AppSpawnEnvClear(content, client); in AppSpawnChild()
121 ret = AppSpawnExecutePreReplyHook(content, client); in AppSpawnChild()
124 NotifyResToParent(content, client, ret); in AppSpawnChild()
125 AppSpawnEnvClear(content, client); in AppSpawnChild()
130 NotifyResToParent(content, client, 0); in AppSpawnChild()
134 (void)AppSpawnExecutePostReplyHook(content, client); in AppSpawnChild()
137 if (content->runChildProcessor != NULL) { in AppSpawnChild()
138 ret = content->runChildProcessor(content, client); in AppSpawnChild()
141 AppSpawnEnvClear(content, client); in AppSpawnChild()
150 ProcessExit(AppSpawnChild(forkArg->content, forkArg->client)); in CloneAppSpawn()
155 static void NwebSpawnCloneChildProcess(AppSpawnContent *content, AppSpawnClient *client, pid_t *pid) in NwebSpawnCloneChildProcess() argument
159 arg.content = content; in NwebSpawnCloneChildProcess()
169 *pid = clone(CloneAppSpawn, NULL, content->sandboxNsFlags | SIGCHLD, (void *)&arg); in NwebSpawnCloneChildProcess()
172 *pid = clone(CloneAppSpawn, NULL, content->sandboxNsFlags | SIGCHLD, (void *)&arg); in NwebSpawnCloneChildProcess()
177 static void AppSpawnForkChildProcess(AppSpawnContent *content, AppSpawnClient *client, pid_t *pid) in AppSpawnForkChildProcess() argument
188 ProcessExit(AppSpawnChild(content, client)); in AppSpawnForkChildProcess()
194 int AppSpawnProcessMsg(AppSpawnContent *content, AppSpawnClient *client, pid_t *childPid) argument
196 APPSPAWN_CHECK(content != NULL, return -1, "Invalid content for appspawn");
199 client->id, content->mode, content->sandboxNsFlags);
203 if (content->mode == MODE_FOR_NWEB_SPAWN) {
204 NwebSpawnCloneChildProcess(content, client, &pid);
209 AppSpawnForkChildProcess(content, client, &pid);