From 2c110ed3d589cf26b35986b0262c550bea6e4c0a Mon Sep 17 00:00:00 2001 From: John Johansen Date: Thu, 21 Jul 2011 11:06:57 -0700 Subject: [PATCH] Abstract the libraries getting of the tid Signed-off-by: John Johansen Acked-by: Kees Cook --- libraries/libapparmor/src/kernel_interface.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/libraries/libapparmor/src/kernel_interface.c b/libraries/libapparmor/src/kernel_interface.c index 06f96ed9a..4a48799fd 100644 --- a/libraries/libapparmor/src/kernel_interface.c +++ b/libraries/libapparmor/src/kernel_interface.c @@ -37,16 +37,21 @@ #define default_symbol_version(real, name, version) \ __asm__ (".symver " #real "," #name "@@" #version) +static inline pid_t aa_gettid(void) +{ +#ifdef SYS_gettid + return syscall(SYS_gettid); +#else + return getpid(); +#endif +} + static int setprocattr(const char *path, const char *buf, int len) { int rc = -1; int fd, ret, ctlerr = 0; char *ctl = NULL; -#ifdef SYS_gettid - pid_t tid = syscall(SYS_gettid); -#else - pid_t tid = getpid(); -#endif + pid_t tid = aa_gettid(); if (!buf) { errno = EINVAL;