OLD | NEW |
---|---|
(Empty) | |
1 // Copyright 2015 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. | |
4 | |
5 #include "sandbox/linux/services/resource_limits.h" | |
6 | |
7 #include <errno.h> | |
8 #include <sys/resource.h> | |
9 #include <sys/time.h> | |
10 #include <unistd.h> | |
11 | |
12 #include "base/logging.h" | |
13 #include "sandbox/linux/tests/test_utils.h" | |
14 #include "sandbox/linux/tests/unit_tests.h" | |
15 #include "testing/gtest/include/gtest/gtest.h" | |
16 | |
17 namespace sandbox { | |
18 | |
19 namespace { | |
20 | |
21 // Not being able to fork breaks LSAN, so disable on | |
Mark Seaborn
2015/02/13 17:11:54
LSAN -> LeakSanitizer perhaps. (Mentioning LSAN a
jln (very slow on Chromium)
2015/02/13 18:00:06
Done.
| |
22 // all ASAN builds. | |
23 SANDBOX_TEST(ResourceLimits, DISABLE_ON_ASAN(NoFork)) { | |
24 // Make sure that fork will fail with EAGAIN. | |
25 SANDBOX_ASSERT(ResourceLimits::Lower(RLIMIT_NPROC, 0)); | |
26 errno = 0; | |
27 pid_t pid = fork(); | |
28 // Reap any child if fork succeeded. | |
29 TestUtils::HandlePostForkReturn(pid); | |
30 SANDBOX_ASSERT_EQ(-1, pid); | |
31 CHECK_EQ(EAGAIN, errno); | |
32 } | |
33 | |
34 } // namespace | |
35 | |
36 } // namespace sandbox | |
OLD | NEW |