From 6d170a7615bb65cd21d55e055e8ea63b27e817bb Mon Sep 17 00:00:00 2001 From: William Roberts Date: Sun, 12 Apr 2020 12:00:03 -0500 Subject: [PATCH] libsemanage: fix linker script symbol versions In previous work to cleanup the exports and linker scripts, I introduced a regression causing symbols to be named in both the 1.0 and 1.1 sections. This went un-noticed and was reported by nicolas.iooss@m4x.org. Previous patches checked for correctness by: This was checked by generating an old export map (from master): nm --defined-only -g ./src/libsemanage.so | cut -d' ' -f 3-3 | grep -v '^_' > old.map Then creating a new one for this library after this patch is applied: nm --defined-only -g ./src/libsemanage.so | cut -d' ' -f 3-3 | grep -v '^_' > new.map And diffing them: diff old.map new.map However, this discards the version information. Nicolas points out a better way, by using objdump so we can see the version information. A better sequence of commands for checking is as follows: git checkout 1967477913f6e objdump -T ./src/libsemanage.so | grep LIBSEMANAGE | cut -d' ' -f 8- | sed 's/^ //' > map.old git checkout origin/master objdump -T ./src/libsemanage.so | grep LIBSEMANAGE | cut -d' ' -f 8- | sed 's/^ //' > map.new diff map.old map.new Acked-by: Nicolas Iooss Signed-off-by: William Roberts --- libsemanage/src/libsemanage.map | 28 ---------------------------- 1 file changed, 28 deletions(-) diff --git a/libsemanage/src/libsemanage.map b/libsemanage/src/libsemanage.map index ff5977b9..8ba2746d 100644 --- a/libsemanage/src/libsemanage.map +++ b/libsemanage/src/libsemanage.map @@ -76,10 +76,7 @@ LIBSEMANAGE_1.0 { semanage_fcontext_set_con; semanage_fcontext_set_expr; semanage_fcontext_set_type; - semanage_get_default_priority; semanage_get_disable_dontaudit; - semanage_get_hll_compiler_path; - semanage_get_ignore_module_cache; semanage_get_preserve_tunables; semanage_handle_create; semanage_handle_destroy; @@ -170,39 +167,17 @@ LIBSEMANAGE_1.0 { semanage_mls_enabled; semanage_module_disable; semanage_module_enable; - semanage_module_extract; semanage_module_get_enabled; - semanage_module_get_module_info; semanage_module_get_name; semanage_module_get_version; - semanage_module_info_create; semanage_module_info_datum_destroy; - semanage_module_info_destroy; - semanage_module_info_get_enabled; - semanage_module_info_get_lang_ext; - semanage_module_info_get_name; - semanage_module_info_get_priority; - semanage_module_info_set_enabled; - semanage_module_info_set_lang_ext; - semanage_module_info_set_name; - semanage_module_info_set_priority; semanage_module_install; semanage_module_install_base; semanage_module_install_base_file; semanage_module_install_file; - semanage_module_install_info; - semanage_module_key_create; - semanage_module_key_destroy; - semanage_module_key_get_name; - semanage_module_key_get_priority; - semanage_module_key_set_name; - semanage_module_key_set_priority; semanage_module_list; - semanage_module_list_all; semanage_module_list_nth; semanage_module_remove; - semanage_module_remove_key; - semanage_module_set_enabled; semanage_module_upgrade; semanage_module_upgrade_file; semanage_msg_get_channel; @@ -276,14 +251,11 @@ LIBSEMANAGE_1.0 { semanage_select_store; semanage_set_check_contexts; semanage_set_create_store; - semanage_set_default_priority; semanage_set_disable_dontaudit; - semanage_set_ignore_module_cache; semanage_set_preserve_tunables; semanage_set_rebuild; semanage_set_reload; semanage_set_root; - semanage_set_store_root; semanage_seuser_clone; semanage_seuser_compare; semanage_seuser_compare2;