mirror of git://sourceware.org/git/glibc.git
* sysdeps/generic/ldsodefs.h: Add declaration for _dl_all_dirs and _dl_all_init_dirs. * include/link.h (struct r_search_path_struct): New. (struct link_map): Use it for l_rpath_dirs and l_runpath_dirs. * elf/Versions [ld] (GLIBC_2.2): Add _dl_all_dirs and _dl_all_init_dirs. * elf/dl-close.c (_dl_close): Free l_rpath_dirs and l_runpath_dirs. * elf/dl-libc.c (free_mem): Free _dl_all_dirs list except elements added at startup time. * elf/dl-load.c: Fix memory handling. r_search_path_struct contains element to remember fact that we can free memory. (all_dirs): Renamed to _dl_all_dirs. Made global. (_dl_init_all_dirs): New variable. (fillin_rpath): Save one malloc call. (decompose_rpath): Change interface. New first parameter points to r_search_path_struct. (_dl_init_paths): Adjust for changes. Mark all memory as not deletable. Set _dl_init_all_paths value. (open_path): Remove may_free_dirs parameter. r_search_path_elem *** parameter replaced with r_search_path_struct *. Information about freeing now contained in r_search_path_struct. (_dl_map_object): Adjust for above changes. * elf/dl-open.c (dl_open_worker): Change format of debug info a bit. |
||
|---|---|---|
| .. | ||
| .cvsignore | ||
| Makefile | ||
| Versions | ||
| cache.c | ||
| constload1.c | ||
| constload2.c | ||
| constload3.c | ||
| dep1.c | ||
| dep2.c | ||
| dep3.c | ||
| dep4.c | ||
| dl-addr.c | ||
| dl-close.c | ||
| dl-debug.c | ||
| dl-deps.c | ||
| dl-dst.h | ||
| dl-error.c | ||
| dl-fini.c | ||
| dl-init.c | ||
| dl-libc.c | ||
| dl-load.c | ||
| dl-lookup.c | ||
| dl-minimal.c | ||
| dl-misc.c | ||
| dl-object.c | ||
| dl-open.c | ||
| dl-profile.c | ||
| dl-profstub.c | ||
| dl-reloc.c | ||
| dl-runtime.c | ||
| dl-support.c | ||
| dl-sym.c | ||
| dl-symbol.c | ||
| dl-version.c | ||
| do-lookup.h | ||
| do-rel.h | ||
| dynamic-link.h | ||
| elf.h | ||
| failobj.c | ||
| filter.c | ||
| filtmod1.c | ||
| filtmod2.c | ||
| gen-trusted-dirs.awk | ||
| genrtldtbl.awk | ||
| interp.c | ||
| ldconfig.c | ||
| ldconfig.h | ||
| ldd.bash.in | ||
| link.h | ||
| loadfail.c | ||
| loadtest.c | ||
| multiload.c | ||
| nodelete.c | ||
| nodelmod1.c | ||
| nodelmod2.c | ||
| nodelmod3.c | ||
| nodelmod4.c | ||
| nodlopen.c | ||
| nodlopenmod.c | ||
| noload.c | ||
| order.c | ||
| origtest.c | ||
| preloadtest.c | ||
| readlib.c | ||
| reldep.c | ||
| reldep2.c | ||
| reldep3.c | ||
| reldepmod1.c | ||
| reldepmod2.c | ||
| reldepmod3.c | ||
| reldepmod4.c | ||
| resolvfail.c | ||
| restest1.c | ||
| rtld.c | ||
| sln.c | ||
| sofini.c | ||
| soinit.c | ||
| sprof.c | ||
| testobj1.c | ||
| testobj1_1.c | ||
| testobj2.c | ||
| testobj3.c | ||
| testobj4.c | ||
| testobj5.c | ||
| testobj6.c | ||
| unload.c | ||
| unloadmod.c | ||
| vismain.c | ||
| vismod1.c | ||
| vismod2.c | ||
| vismod3.c | ||