Blink roll 25b6bd3a7a131ffe68d809546ad1a20707915cdc:3a503f41ae42e5b79cfcd2ff10e65afde...
[chromium-blink-merge.git] / sandbox / linux / services / init_process_reaper.h
blob840f6fcda7b2159265cf5e74d35d7a111e116e16
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef SANDBOX_LINUX_SERVICES_INIT_PROCESS_REAPER_H_
6 #define SANDBOX_LINUX_SERVICES_INIT_PROCESS_REAPER_H_
8 #include "base/callback_forward.h"
9 #include "sandbox/sandbox_export.h"
11 namespace sandbox {
13 // The current process will fork(). The parent will become a process reaper
14 // like init(1). The child will continue normally (after this function
15 // returns).
16 // If not NULL, |post_fork_parent_callback| will run in the parent almost
17 // immediately after fork().
18 // Since this function calls fork(), it's very important that the caller has
19 // only one thread running.
20 SANDBOX_EXPORT bool CreateInitProcessReaper(
21 base::Closure* post_fork_parent_callback);
23 } // namespace sandbox.
25 #endif // SANDBOX_LINUX_SERVICES_INIT_PROCESS_REAPER_H_