summary refs log tree commit diff
path: root/elf
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2020-10-08 10:57:09 +0200
committerFlorian Weimer <fweimer@redhat.com>2020-10-08 11:00:42 +0200
commit72d36ffd7db55ae599f4c77feb0eae25a0f3714e (patch)
tree3a769d277965e956b728888d4d8c90b1c3eeeed9 /elf
parentc0e9ddf59e73e21afe15fca4e94cf7b4b7359bf2 (diff)
downloadglibc-72d36ffd7db55ae599f4c77feb0eae25a0f3714e.tar.gz
glibc-72d36ffd7db55ae599f4c77feb0eae25a0f3714e.tar.xz
glibc-72d36ffd7db55ae599f4c77feb0eae25a0f3714e.zip
elf: Implement __rtld_malloc_is_complete
In some cases, it is difficult to determine the kind of malloc
based on the execution context, so a function to determine that
is helpful.

Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
Diffstat (limited to 'elf')
-rw-r--r--elf/dl-minimal.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/elf/dl-minimal.c b/elf/dl-minimal.c
index 7c64e24c87..b37abfaff9 100644
--- a/elf/dl-minimal.c
+++ b/elf/dl-minimal.c
@@ -59,6 +59,14 @@ __rtld_malloc_init_stubs (void)
   __rtld_realloc = &rtld_realloc;
 }
 
+bool
+__rtld_malloc_is_complete (void)
+{
+  /* The caller assumes that there is an active malloc.  */
+  assert (__rtld_malloc != NULL);
+  return __rtld_malloc != &rtld_malloc;
+}
+
 /* Lookup NAME at VERSION in the scope of MATCH.  */
 static void *
 lookup_malloc_symbol (struct link_map *main_map, const char *name,