git.samba.org
/
kai
/
samba-autobuild
/
.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
src: Add support for running with address sanitizer.
[kai/samba-autobuild/.git]
/
lib
/
socket_wrapper
/
socket_wrapper.c
diff --git
a/lib/socket_wrapper/socket_wrapper.c
b/lib/socket_wrapper/socket_wrapper.c
index b30303f3192a7527699de02c3d83271e3e97e799..82e57376c35166c0234fed0785e05b24bd45179c 100644
(file)
--- a/
lib/socket_wrapper/socket_wrapper.c
+++ b/
lib/socket_wrapper/socket_wrapper.c
@@
-100,6
+100,12
@@
enum swrap_dbglvl_e {
#define DESTRUCTOR_ATTRIBUTE
#endif
#define DESTRUCTOR_ATTRIBUTE
#endif
+#ifdef HAVE_ADDRESS_SANITIZER_ATTRIBUTE
+#define DO_NOT_SANITIZE_ADDRESS_ATTRIBUTE __attribute__((no_sanitize_address))
+#else
+#define DO_NOT_SANITIZE_ADDRESS_ATTRIBUTE
+#endif
+
#ifdef HAVE_GCC_THREAD_LOCAL_STORAGE
# define SWRAP_THREAD __thread
#else
#ifdef HAVE_GCC_THREAD_LOCAL_STORAGE
# define SWRAP_THREAD __thread
#else
@@
-598,6
+604,7
@@
static int libc_eventfd(int count, int flags)
}
#endif
}
#endif
+DO_NOT_SANITIZE_ADDRESS_ATTRIBUTE
static int libc_vfcntl(int fd, int cmd, va_list ap)
{
long int args[4];
static int libc_vfcntl(int fd, int cmd, va_list ap)
{
long int args[4];
@@
-649,6
+656,7
@@
static int libc_getsockopt(int sockfd,
return swrap.fns.libc_getsockopt(sockfd, level, optname, optval, optlen);
}
return swrap.fns.libc_getsockopt(sockfd, level, optname, optval, optlen);
}
+DO_NOT_SANITIZE_ADDRESS_ATTRIBUTE
static int libc_vioctl(int d, unsigned long int request, va_list ap)
{
long int args[4];
static int libc_vioctl(int d, unsigned long int request, va_list ap)
{
long int args[4];