1 // Copyright 2014 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 #include "sandbox/linux/tests/test_utils.h"
13 #include "base/logging.h"
14 #include "base/posix/eintr_wrapper.h"
18 bool TestUtils::CurrentProcessHasChildren() {
19 siginfo_t process_info
;
20 int ret
= HANDLE_EINTR(
21 waitid(P_ALL
, 0, &process_info
, WEXITED
| WNOHANG
| WNOWAIT
));
23 PCHECK(ECHILD
== errno
);
30 void TestUtils::HandlePostForkReturn(pid_t pid
) {
31 const int kChildExitCode
= 1;
34 PCHECK(pid
== HANDLE_EINTR(waitpid(pid
, &status
, 0)));
35 CHECK(WIFEXITED(status
));
36 CHECK_EQ(kChildExitCode
, WEXITSTATUS(status
));
37 } else if (pid
== 0) {
38 _exit(kChildExitCode
);
42 } // namespace sandbox