diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2009-07-16 12:55:22 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2009-07-16 12:55:22 +0200 |
commit | 191c51187ee54201954e5c73492a8bd5902044c7 (patch) | |
tree | 77aeee87379f79827341b9c701223f317378605c | |
parent | cc8ef1a1546548c5d77b06f0726bf16bba5ad77e (diff) | |
download | rsyslog-191c51187ee54201954e5c73492a8bd5902044c7.tar.gz rsyslog-191c51187ee54201954e5c73492a8bd5902044c7.tar.xz rsyslog-191c51187ee54201954e5c73492a8bd5902044c7.zip |
calls to prctl() need to be based on configure results (cross-platform issue)
-rw-r--r-- | configure.ac | 4 | ||||
-rw-r--r-- | runtime/wtp.c | 7 |
2 files changed, 7 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac index 6d22566b..2fa496c7 100644 --- a/configure.ac +++ b/configure.ac @@ -63,7 +63,7 @@ AC_SUBST(DL_LIBS) AC_HEADER_RESOLV AC_HEADER_STDC AC_HEADER_SYS_WAIT -AC_CHECK_HEADERS([arpa/inet.h libgen.h fcntl.h locale.h netdb.h netinet/in.h paths.h stddef.h stdlib.h string.h sys/file.h sys/ioctl.h sys/param.h sys/socket.h sys/time.h sys/stat.h syslog.h unistd.h utmp.h sys/epoll.h]) +AC_CHECK_HEADERS([arpa/inet.h libgen.h fcntl.h locale.h netdb.h netinet/in.h paths.h stddef.h stdlib.h string.h sys/file.h sys/ioctl.h sys/param.h sys/socket.h sys/time.h sys/stat.h syslog.h unistd.h utmp.h sys/epoll.h sys/prctl.h]) # Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -98,7 +98,7 @@ AC_TYPE_SIGNAL AC_FUNC_STAT AC_FUNC_STRERROR_R AC_FUNC_VPRINTF -AC_CHECK_FUNCS([flock basename alarm clock_gettime gethostbyname gethostname gettimeofday localtime_r memset mkdir regcomp select setid socket strcasecmp strchr strdup strerror strndup strnlen strrchr strstr strtol strtoul uname ttyname_r epoll_wait getline malloc_trim]) +AC_CHECK_FUNCS([flock basename alarm clock_gettime gethostbyname gethostname gettimeofday localtime_r memset mkdir regcomp select setid socket strcasecmp strchr strdup strerror strndup strnlen strrchr strstr strtol strtoul uname ttyname_r epoll_wait getline malloc_trim prctl]) # Check for MAXHOSTNAMELEN AC_MSG_CHECKING(for MAXHOSTNAMELEN) diff --git a/runtime/wtp.c b/runtime/wtp.c index 02662cde..87c3b324 100644 --- a/runtime/wtp.c +++ b/runtime/wtp.c @@ -40,11 +40,12 @@ #include <unistd.h> #include <errno.h> #include <atomic.h> -#include <sys/prctl.h> +#if HAVE_SYS_PRCTL_H +# include <sys/prctl.h> +#endif #ifdef OS_SOLARIS # include <sched.h> -# define pthread_yield() sched_yield() #endif #include "rsyslog.h" @@ -434,10 +435,12 @@ wtpWorker(void *arg) /* the arg is actually a wti object, even though we are in sigfillset(&sigSet); pthread_sigmask(SIG_BLOCK, &sigSet, NULL); +# if HAVE_PRCTL && defined PR_SET_NAME /* set thread name - we ignore if the call fails, has no harsh consequences... */ if(prctl(PR_SET_NAME, wtpGetDbgHdr(pThis), 0, 0, 0) != 0) { DBGPRINTF("prctl failed, not setting thread name for '%s'\n", wtpGetDbgHdr(pThis)); } +# endif BEGIN_MTX_PROTECTED_OPERATIONS(&pThis->mut, LOCK_MUTEX); |