1 //===-- scudo_errors.h ------------------------------------------*- C++ -*-===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 ///
10 /// Header for scudo_errors.cpp.
11 ///
12 //===----------------------------------------------------------------------===//
13 
14 #ifndef SCUDO_ERRORS_H_
15 #define SCUDO_ERRORS_H_
16 
17 #include "sanitizer_common/sanitizer_internal_defs.h"
18 
19 namespace __scudo {
20 
21 void NORETURN reportCallocOverflow(uptr Count, uptr Size);
22 void NORETURN reportPvallocOverflow(uptr Size);
23 void NORETURN reportAllocationAlignmentTooBig(uptr Alignment,
24                                               uptr MaxAlignment);
25 void NORETURN reportAllocationAlignmentNotPowerOfTwo(uptr Alignment);
26 void NORETURN reportInvalidPosixMemalignAlignment(uptr Alignment);
27 void NORETURN reportInvalidAlignedAllocAlignment(uptr Size, uptr Alignment);
28 void NORETURN reportAllocationSizeTooBig(uptr UserSize, uptr TotalSize,
29                                          uptr MaxSize);
30 void NORETURN reportRssLimitExceeded();
31 void NORETURN reportOutOfMemory(uptr RequestedSize);
32 
33 }  // namespace __scudo
34 
35 #endif  // SCUDO_ERRORS_H_
36