| lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | libc { | 
 | 2 |   GLIBC_2.0 { | 
 | 3 | %ifdef EXPORT_UNWIND_FIND_FDE | 
 | 4 |     __deregister_frame_info; __register_frame_info; | 
 | 5 | %endif | 
 | 6 |   } | 
 | 7 |   GLIBC_2.1 { | 
 | 8 |     # functions used in other libraries | 
 | 9 |     _dl_mcount_wrapper; _dl_mcount_wrapper_check; | 
 | 10 |   } | 
 | 11 |   GLIBC_2.2.4 { | 
 | 12 |     dl_iterate_phdr; | 
 | 13 |   } | 
 | 14 | %ifdef EXPORT_UNWIND_FIND_FDE | 
 | 15 |   # Needed for SHLIB_COMPAT calls using this version. | 
 | 16 |   GLIBC_2.2.5 { | 
 | 17 |   } | 
 | 18 |   GCC_3.0 { | 
 | 19 |     __deregister_frame_info_bases; __register_frame_info_bases; | 
 | 20 |     __register_frame_info_table_bases; _Unwind_Find_FDE; | 
 | 21 |   } | 
 | 22 | %endif | 
 | 23 |   GLIBC_PRIVATE { | 
 | 24 |     # functions used in other libraries | 
 | 25 |     _dl_addr; | 
 | 26 |     _dl_open_hook; | 
 | 27 |     _dl_sym; _dl_vsym; | 
 | 28 |     __libc_dlclose; __libc_dlopen_mode; __libc_dlsym; | 
 | 29 |   } | 
 | 30 | } | 
 | 31 |  | 
 | 32 | ld { | 
 | 33 |   GLIBC_2.0 { | 
 | 34 |     # Function from libc.so which must be shared with libc. | 
 | 35 |     __libc_memalign; calloc; free; malloc; realloc; | 
 | 36 |  | 
 | 37 |     _r_debug; | 
 | 38 |   } | 
 | 39 |   GLIBC_2.1 { | 
 | 40 |     # functions used in other libraries | 
 | 41 |     _dl_mcount; | 
 | 42 |     # historically used by Garbage Collectors | 
 | 43 |     __libc_stack_end; | 
 | 44 |   } | 
 | 45 |   GLIBC_2.3 { | 
 | 46 |     # runtime interface to TLS | 
 | 47 |     __tls_get_addr; | 
 | 48 |   } | 
 | 49 |   GLIBC_2.4 { | 
 | 50 |     # stack canary | 
 | 51 |     __stack_chk_guard; | 
 | 52 |   } | 
 | 53 |   GLIBC_PRIVATE { | 
 | 54 |     # Those are in the dynamic linker, but used by libc.so. | 
 | 55 |     __libc_enable_secure; | 
 | 56 |     _dl_allocate_tls; _dl_allocate_tls_init; | 
 | 57 |     _dl_argv; _dl_find_dso_for_object; _dl_get_tls_static_info; | 
 | 58 |     _dl_deallocate_tls; _dl_make_stack_executable; _dl_out_of_memory; | 
 | 59 |     _dl_rtld_di_serinfo; _dl_starting_up; _dl_tls_setup; | 
 | 60 |     _rtld_global; _rtld_global_ro; | 
 | 61 |  | 
 | 62 |     # Only here for gdb while a better method is developed. | 
 | 63 |     _dl_debug_state; | 
 | 64 |  | 
 | 65 |     # Pointer protection. | 
 | 66 |     __pointer_chk_guard; | 
 | 67 |   } | 
 | 68 | } |