update to glibc-2.28-225.el8
Signed-off-by: anolis-bot <sam.zyc@alibaba-inc.com>
This commit is contained in:
parent
644b7d9a41
commit
63c96efbaa
176 changed files with 35958 additions and 17585 deletions
98
glibc-rh2047981-1.patch
Normal file
98
glibc-rh2047981-1.patch
Normal file
|
@ -0,0 +1,98 @@
|
|||
commit eb77a1fccc7e60cea32245c11288c7f1d92545fa
|
||||
Author: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Wed Oct 16 18:19:51 2019 +0200
|
||||
|
||||
dlfcn: Remove remnants of caller sensitivity from dlinfo
|
||||
|
||||
dlinfo operates on a specific handle, which means that there is no
|
||||
caller sensivity involved.
|
||||
|
||||
diff --git a/dlfcn/dlinfo.c b/dlfcn/dlinfo.c
|
||||
index 964572cc670ceba4..23ef3f57ca41afdf 100644
|
||||
--- a/dlfcn/dlinfo.c
|
||||
+++ b/dlfcn/dlinfo.c
|
||||
@@ -26,7 +26,7 @@
|
||||
int
|
||||
dlinfo (void *handle, int request, void *arg)
|
||||
{
|
||||
- return __dlinfo (handle, request, arg, RETURN_ADDRESS (0));
|
||||
+ return __dlinfo (handle, request, arg);
|
||||
}
|
||||
|
||||
#else
|
||||
@@ -35,7 +35,6 @@ dlinfo (void *handle, int request, void *arg)
|
||||
|
||||
struct dlinfo_args
|
||||
{
|
||||
- ElfW(Addr) caller;
|
||||
void *handle;
|
||||
int request;
|
||||
void *arg;
|
||||
@@ -47,24 +46,6 @@ dlinfo_doit (void *argsblock)
|
||||
struct dlinfo_args *const args = argsblock;
|
||||
struct link_map *l = args->handle;
|
||||
|
||||
-# if 0
|
||||
- if (args->handle == RTLD_SELF)
|
||||
- {
|
||||
- Lmid_t nsid;
|
||||
-
|
||||
- /* Find the highest-addressed object that CALLER is not below. */
|
||||
- for (nsid = 0; nsid < DL_NNS; ++nsid)
|
||||
- for (l = GL(dl_ns)[nsid]._ns_loaded; l != NULL; l = l->l_next)
|
||||
- if (caller >= l->l_map_start && caller < l->l_map_end
|
||||
- && (l->l_contiguous || _dl_addr_inside_object (l, caller)))
|
||||
- break;
|
||||
-
|
||||
- if (l == NULL)
|
||||
- _dl_signal_error (0, NULL, NULL, N_("\
|
||||
-RTLD_SELF used in code not dynamically loaded"));
|
||||
- }
|
||||
-# endif
|
||||
-
|
||||
switch (args->request)
|
||||
{
|
||||
case RTLD_DI_CONFIGADDR:
|
||||
@@ -108,16 +89,14 @@ RTLD_SELF used in code not dynamically loaded"));
|
||||
}
|
||||
|
||||
int
|
||||
-__dlinfo (void *handle, int request, void *arg DL_CALLER_DECL)
|
||||
+__dlinfo (void *handle, int request, void *arg)
|
||||
{
|
||||
# ifdef SHARED
|
||||
if (!rtld_active ())
|
||||
- return _dlfcn_hook->dlinfo (handle, request, arg,
|
||||
- DL_CALLER);
|
||||
+ return _dlfcn_hook->dlinfo (handle, request, arg);
|
||||
# endif
|
||||
|
||||
- struct dlinfo_args args = { (ElfW(Addr)) DL_CALLER,
|
||||
- handle, request, arg };
|
||||
+ struct dlinfo_args args = { handle, request, arg };
|
||||
return _dlerror_run (&dlinfo_doit, &args) ? -1 : 0;
|
||||
}
|
||||
# ifdef SHARED
|
||||
diff --git a/include/dlfcn.h b/include/dlfcn.h
|
||||
index 0dc57dbe2217cfe7..93dd369ab12a5745 100644
|
||||
--- a/include/dlfcn.h
|
||||
+++ b/include/dlfcn.h
|
||||
@@ -117,7 +117,7 @@ struct dlfcn_hook
|
||||
int (*dladdr) (const void *address, Dl_info *info);
|
||||
int (*dladdr1) (const void *address, Dl_info *info,
|
||||
void **extra_info, int flags);
|
||||
- int (*dlinfo) (void *handle, int request, void *arg, void *dl_caller);
|
||||
+ int (*dlinfo) (void *handle, int request, void *arg);
|
||||
void *(*dlmopen) (Lmid_t nsid, const char *file, int mode, void *dl_caller);
|
||||
void *pad[4];
|
||||
};
|
||||
@@ -143,8 +143,7 @@ extern int __dladdr (const void *address, Dl_info *info)
|
||||
extern int __dladdr1 (const void *address, Dl_info *info,
|
||||
void **extra_info, int flags)
|
||||
attribute_hidden;
|
||||
-extern int __dlinfo (void *handle, int request, void *arg DL_CALLER_DECL)
|
||||
- attribute_hidden;
|
||||
+extern int __dlinfo (void *handle, int request, void *arg) attribute_hidden;
|
||||
|
||||
#ifndef SHARED
|
||||
struct link_map;
|
Loading…
Add table
Add a link
Reference in a new issue