1 //===-- sanitizer_platform_limits_posix.h ---------------------------------===//
3 // This file is distributed under the University of Illinois Open Source
4 // License. See LICENSE.TXT for details.
6 //===----------------------------------------------------------------------===//
8 // This file is a part of Sanitizer common code.
10 // Sizes and layouts of platform-specific POSIX data structures.
11 //===----------------------------------------------------------------------===//
13 #ifndef SANITIZER_PLATFORM_LIMITS_POSIX_H
14 #define SANITIZER_PLATFORM_LIMITS_POSIX_H
16 namespace __sanitizer
{
17 extern unsigned struct_utsname_sz
;
18 extern unsigned struct_stat_sz
;
19 extern unsigned struct_stat64_sz
;
20 extern unsigned struct_rusage_sz
;
21 extern unsigned struct_tm_sz
;
23 #if defined(__linux__)
24 extern unsigned struct_rlimit_sz
;
25 extern unsigned struct_dirent_sz
;
26 extern unsigned struct_statfs_sz
;
27 extern unsigned struct_epoll_event_sz
;
30 #if defined(__linux__) && !defined(__ANDROID__)
31 extern unsigned struct_rlimit64_sz
;
32 extern unsigned struct_statfs64_sz
;
33 #endif // __linux__ && !__ANDROID__
35 void* __sanitizer_get_msghdr_iov_iov_base(void* msg
, int idx
);
36 uptr
__sanitizer_get_msghdr_iov_iov_len(void* msg
, int idx
);
37 uptr
__sanitizer_get_msghdr_iovlen(void* msg
);
38 uptr
__sanitizer_get_socklen_t(void* socklen_ptr
);
39 } // namespace __sanitizer