The branch, master has been updated
       via  184e610 Bump version to 1.3.1
       via  4127ba0 src: use LIBC_SO from GNU libc, if available
       via  16c0212 src/uid_wrapper.c: Fix typo of 'Initialize.'
      from  3916f98 uwrap: Fix syscall() with jemalloc to prevent a deadlock

https://git.samba.org/?p=uid_wrapper.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 184e61007f60c644e8841c8fbca1acd6bff7fad8
Author: Andreas Schneider <a...@samba.org>
Date:   Wed Jun 12 15:51:35 2024 +0200

    Bump version to 1.3.1
    
    Signed-off-by: Andreas Schneider <a...@samba.org>
    Reviewed-by: Stefan Metzmacher <me...@samba.org>

commit 4127ba0298b1ebd220c8555b2a785d6cc8084fca
Author: Pino Toscano <toscano.p...@tiscali.it>
Date:   Fri May 30 19:06:10 2014 +0200

    src: use LIBC_SO from GNU libc, if available
    
    Look for gnu/lib-names.h and use the LIBC_SO define to dlopen libc, so
    the right library is loaded without manually searching for libc.so.N.
    
    Reviewed-by: Andreas Schneider <a...@samba.org>
    Reviewed-by: Stefan Metzmacher <me...@samba.org>

commit 16c0212f128ab1aba706422f437c585d714c6a48
Author: Simon Josefsson <si...@josefsson.org>
Date:   Fri Aug 4 10:48:45 2023 +0200

    src/uid_wrapper.c: Fix typo of 'Initialize.'
    
    Signed-off-by: Simon Josefsson <si...@josefsson.org>
    Reviewed-by: Andreas Schneider <a...@samba.org>
    Reviewed-by: Stefan Metzmacher <me...@samba.org>

-----------------------------------------------------------------------

Summary of changes:
 CHANGELOG             |  6 ++++++
 CMakeLists.txt        |  4 ++--
 ConfigureChecks.cmake |  1 +
 config.h.cmake        |  1 +
 src/uid_wrapper.c     | 13 ++++++++++++-
 5 files changed, 22 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/CHANGELOG b/CHANGELOG
index 92542f5..40a33c6 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,12 @@
 CHANGELOG
 =========
 
+version 1.3.1 (released 2024-06-12)
+  * Added support to find libc via LIBC_SO define
+  * Fixed uid_wrapper running with jemalloc compiled binaries
+  * Fixed socket_wrapper interaction test
+  * Fixed thread sanitizer on modern Linux Kernels
+
 version 1.3.0 (released 2023-01-17)
   * Added support to interact with socket_wrapper syscall()
   * Fixed deadlocks with threads
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1523bd7..14215c5 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,7 @@ list(APPEND CMAKE_MODULE_PATH 
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules")
 include(DefineCMakeDefaults)
 include(DefineCompilerFlags)
 
-project(uid_wrapper VERSION 1.3.0 LANGUAGES C)
+project(uid_wrapper VERSION 1.3.1 LANGUAGES C)
 
 # global needed variables
 set(APPLICATION_NAME ${PROJECT_NAME})
@@ -23,7 +23,7 @@ set(APPLICATION_NAME ${PROJECT_NAME})
 #     Increment AGE. Set REVISION to 0
 #   If the source code was changed, but there were no interface changes:
 #     Increment REVISION.
-set(LIBRARY_VERSION "0.2.0")
+set(LIBRARY_VERSION "0.2.1")
 set(LIBRARY_SOVERSION "0")
 
 # add definitions
diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake
index 3201131..6294b23 100644
--- a/ConfigureChecks.cmake
+++ b/ConfigureChecks.cmake
@@ -48,6 +48,7 @@ check_include_file(sys/syscall.h HAVE_SYS_SYSCALL_H)
 check_include_file(syscall.h HAVE_SYSCALL_H)
 check_include_file(grp.h HAVE_GRP_H)
 check_include_file(unistd.h HAVE_UNISTD_H)
+check_include_file(gnu/lib-names.h HAVE_GNU_LIB_NAMES_H)
 
 # FUNCTIONS
 check_function_exists(strncpy HAVE_STRNCPY)
diff --git a/config.h.cmake b/config.h.cmake
index dde70ec..97521f8 100644
--- a/config.h.cmake
+++ b/config.h.cmake
@@ -14,6 +14,7 @@
 #cmakedefine HAVE_SYSCALL_H 1
 #cmakedefine HAVE_UNISTD_H 1
 #cmakedefine HAVE_GRP_H 1
+#cmakedefine HAVE_GNU_LIB_NAMES_H 1
 
 /*************************** FUNCTIONS ***************************/
 
diff --git a/src/uid_wrapper.c b/src/uid_wrapper.c
index 4a174e1..ca578e6 100644
--- a/src/uid_wrapper.c
+++ b/src/uid_wrapper.c
@@ -38,6 +38,10 @@
 
 #include <pthread.h>
 
+#ifdef HAVE_GNU_LIB_NAMES_H
+#include <gnu/lib-names.h>
+#endif
+
 #ifdef HAVE_GCC_THREAD_LOCAL_STORAGE
 # define UWRAP_THREAD __thread
 #else
@@ -558,6 +562,13 @@ static void *uwrap_load_lib_handle(enum uwrap_lib lib)
        switch (lib) {
        case UWRAP_LIBC:
                handle = uwrap.libc.handle;
+#ifdef LIBC_SO
+               if (handle == NULL) {
+                       handle = dlopen(LIBC_SO, flags);
+
+                       uwrap.libc.handle = handle;
+               }
+#endif
                if (handle == NULL) {
                        for (i = 10; i >= 0; i--) {
                                char soname[256] = {0};
@@ -1400,7 +1411,7 @@ static void uwrap_init_env(struct uwrap_thread *id)
                        exit(-1);
                }
 
-               UWRAP_LOG(UWRAP_LOG_DEBUG, "Initalize groups with %s", env);
+               UWRAP_LOG(UWRAP_LOG_DEBUG, "Initialize groups with %s", env);
                id->ngroups = ngroups;
        }
 }


-- 
UID Wrapper Repository

Reply via email to