OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_TEST_RUNNER_H_ | 5 #ifndef SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_TEST_RUNNER_H_ |
6 #define SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_TEST_RUNNER_H_ | 6 #define SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_TEST_RUNNER_H_ |
7 | 7 |
8 #include "base/macros.h" | 8 #include "base/macros.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "sandbox/linux/tests/sandbox_test_runner.h" | 10 #include "sandbox/linux/tests/sandbox_test_runner.h" |
(...skipping 27 matching lines...) Expand all Loading... |
38 // initialize a seccomp-bpf sandbox (specified by |bpf_tester_delegate|) and | 38 // initialize a seccomp-bpf sandbox (specified by |bpf_tester_delegate|) and |
39 // run a test function (via |bpf_tester_delegate|) if the current kernel | 39 // run a test function (via |bpf_tester_delegate|) if the current kernel |
40 // configuration allows it. If it can not run the test under seccomp-bpf, | 40 // configuration allows it. If it can not run the test under seccomp-bpf, |
41 // Run() will still compile the policy which should allow to get some coverage | 41 // Run() will still compile the policy which should allow to get some coverage |
42 // under tools such as Valgrind. | 42 // under tools such as Valgrind. |
43 class SandboxBPFTestRunner : public SandboxTestRunner { | 43 class SandboxBPFTestRunner : public SandboxTestRunner { |
44 public: | 44 public: |
45 // This constructor takes ownership of the |bpf_tester_delegate| object. | 45 // This constructor takes ownership of the |bpf_tester_delegate| object. |
46 // (It doesn't take a scoped_ptr since they make polymorphism verbose). | 46 // (It doesn't take a scoped_ptr since they make polymorphism verbose). |
47 explicit SandboxBPFTestRunner(BPFTesterDelegate* bpf_tester_delegate); | 47 explicit SandboxBPFTestRunner(BPFTesterDelegate* bpf_tester_delegate); |
48 virtual ~SandboxBPFTestRunner(); | 48 ~SandboxBPFTestRunner() override; |
49 | 49 |
50 virtual void Run() override; | 50 void Run() override; |
51 | 51 |
52 virtual bool ShouldCheckForLeaks() const override; | 52 bool ShouldCheckForLeaks() const override; |
53 | 53 |
54 private: | 54 private: |
55 scoped_ptr<BPFTesterDelegate> bpf_tester_delegate_; | 55 scoped_ptr<BPFTesterDelegate> bpf_tester_delegate_; |
56 DISALLOW_COPY_AND_ASSIGN(SandboxBPFTestRunner); | 56 DISALLOW_COPY_AND_ASSIGN(SandboxBPFTestRunner); |
57 }; | 57 }; |
58 | 58 |
59 } // namespace sandbox | 59 } // namespace sandbox |
60 | 60 |
61 #endif // SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_TEST_RUNNER_H_ | 61 #endif // SANDBOX_LINUX_SECCOMP_BPF_SANDBOX_BPF_TEST_RUNNER_H_ |
OLD | NEW |