OLD | NEW |
1 // Copyright 2012 Google Inc. All Rights Reserved. | 1 // Copyright 2012 Google Inc. All Rights Reserved. |
2 // | 2 // |
3 // Licensed under the Apache License, Version 2.0 (the "License"); | 3 // Licensed under the Apache License, Version 2.0 (the "License"); |
4 // you may not use this file except in compliance with the License. | 4 // you may not use this file except in compliance with the License. |
5 // You may obtain a copy of the License at | 5 // You may obtain a copy of the License at |
6 // | 6 // |
7 // http://www.apache.org/licenses/LICENSE-2.0 | 7 // http://www.apache.org/licenses/LICENSE-2.0 |
8 // | 8 // |
9 // Unless required by applicable law or agreed to in writing, software | 9 // Unless required by applicable law or agreed to in writing, software |
10 // distributed under the License is distributed on an "AS IS" BASIS, | 10 // distributed under the License is distributed on an "AS IS" BASIS, |
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 // provided error_info. | 212 // provided error_info. |
213 void WriteCorruptHeapInfo( | 213 void WriteCorruptHeapInfo( |
214 const HeapChecker::CorruptRangesVector& corrupt_ranges, | 214 const HeapChecker::CorruptRangesVector& corrupt_ranges, |
215 size_t buffer_size, | 215 size_t buffer_size, |
216 void* buffer, | 216 void* buffer, |
217 AsanErrorInfo* error_info); | 217 AsanErrorInfo* error_info); |
218 | 218 |
219 // Logs information about an Asan error. | 219 // Logs information about an Asan error. |
220 void LogAsanErrorInfo(AsanErrorInfo* error_info); | 220 void LogAsanErrorInfo(AsanErrorInfo* error_info); |
221 | 221 |
222 // @returns a value describing the state of the features that can be randomly | |
223 // enabled or disabled. | |
224 AsanFeatureSet GenerateRandomFeatureSet(); | |
225 | |
226 // Randomly enable some features. | 222 // Randomly enable some features. |
227 // @param feature_set The feature set indicating the features to update. | 223 // @param feature_set The feature set indicating the features to update. |
228 void PropagateFeatureSet(AsanFeatureSet feature_set); | 224 void PropagateFeatureSet(AsanFeatureSet feature_set); |
229 | 225 |
230 // The heap manager. | 226 // The heap manager. |
231 std::unique_ptr<heap_managers::BlockHeapManager> | 227 std::unique_ptr<heap_managers::BlockHeapManager> |
232 heap_manager_; // Under lock_. | 228 heap_manager_; // Under lock_. |
233 | 229 |
234 private: | 230 private: |
235 // Sets up the shadow memory. | 231 // Sets up the shadow memory. |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
327 // is available. | 323 // is available. |
328 std::unique_ptr<ReporterInterface> crash_reporter_; | 324 std::unique_ptr<ReporterInterface> crash_reporter_; |
329 | 325 |
330 DISALLOW_COPY_AND_ASSIGN(AsanRuntime); | 326 DISALLOW_COPY_AND_ASSIGN(AsanRuntime); |
331 }; | 327 }; |
332 | 328 |
333 } // namespace asan | 329 } // namespace asan |
334 } // namespace agent | 330 } // namespace agent |
335 | 331 |
336 #endif // SYZYGY_AGENT_ASAN_RUNTIME_H_ | 332 #endif // SYZYGY_AGENT_ASAN_RUNTIME_H_ |
OLD | NEW |