Lines Matching refs:abigail
110 using abigail::workers::task;
111 using abigail::workers::task_sptr;
112 using abigail::workers::queue;
113 using abigail::tools_utils::maybe_get_symlink_target_file_path;
114 using abigail::tools_utils::file_exists;
115 using abigail::tools_utils::is_dir;
116 using abigail::tools_utils::emit_prefix;
117 using abigail::tools_utils::check_file;
118 using abigail::tools_utils::ensure_dir_path_created;
119 using abigail::tools_utils::guess_file_type;
120 using abigail::tools_utils::string_ends_with;
121 using abigail::tools_utils::dir_name;
122 using abigail::tools_utils::real_path;
123 using abigail::tools_utils::string_suffix;
124 using abigail::tools_utils::sorted_strings_common_prefix;
125 using abigail::tools_utils::file_type;
126 using abigail::tools_utils::make_path_absolute;
127 using abigail::tools_utils::base_name;
128 using abigail::tools_utils::get_rpm_arch;
129 using abigail::tools_utils::file_is_kernel_package;
130 using abigail::tools_utils::gen_suppr_spec_from_headers;
131 using abigail::tools_utils::get_default_system_suppression_file_path;
132 using abigail::tools_utils::get_default_user_suppression_file_path;
133 using abigail::tools_utils::get_vmlinux_path_from_kernel_dist;
134 using abigail::tools_utils::get_dsos_provided_by_rpm;
135 using abigail::tools_utils::build_corpus_group_from_kernel_dist_under;
136 using abigail::tools_utils::load_default_system_suppressions;
137 using abigail::tools_utils::load_default_user_suppressions;
138 using abigail::tools_utils::abidiff_status;
139 using abigail::tools_utils::create_best_elf_based_reader;
140 using abigail::ir::corpus_sptr;
141 using abigail::ir::corpus_group_sptr;
142 using abigail::comparison::diff_context;
143 using abigail::comparison::diff_context_sptr;
144 using abigail::comparison::compute_diff;
145 using abigail::comparison::corpus_diff_sptr;
146 using abigail::comparison::get_default_harmless_categories_bitmap;
147 using abigail::comparison::get_default_harmful_categories_bitmap;
148 using abigail::suppr::suppression_sptr;
149 using abigail::suppr::suppressions_type;
150 using abigail::suppr::read_suppressions;
151 using abigail::elf::get_soname_of_elf_file;
152 using abigail::elf::get_type_of_elf_file;
153 using abigail::xml_writer::create_write_context;
154 using abigail::xml_writer::write_context_sptr;
155 using abigail::xml_writer::write_corpus;
157 using namespace abigail;
264 num_workers = abigail::workers::get_number_of_threads();
286 abigail::elf::elf_type type;
294 abigail::tools_utils::base_name(path, name);
355 abigail::tools_utils::file_type type_;
380 if (type_ == abigail::tools_utils::FILE_TYPE_DIR)
407 abigail::tools_utils::base_name(path(), name);
464 abigail::tools_utils::file_type
471 void type(abigail::tools_utils::file_type t)
690 if (!abigail::tools_utils::ensure_parent_dir_created(abi_path))
703 if (type() == abigail::tools_utils::FILE_TYPE_DIR)
1107 case abigail::tools_utils::FILE_TYPE_RPM:
1123 case abigail::tools_utils::FILE_TYPE_DEB:
1140 case abigail::tools_utils::FILE_TYPE_DIR:
1145 case abigail::tools_utils::FILE_TYPE_TAR:
1242 set_generic_options(abigail::elf_based_reader& rdr, const options& opts)
1277 /// pointed-to parameter to the abigail::fe_iface::status value
1289 abigail::ir::environment& env,
1292 abigail::fe_iface::status* detailed_error_status = 0)
1309 abigail::fe_iface::status c1_status = abigail::fe_iface::STATUS_OK,
1310 c2_status = abigail::fe_iface::STATUS_OK;
1326 return abigail::tools_utils::ABIDIFF_OK;
1349 abigail::elf_based_reader_sptr reader;
1357 abigail::elf_based_reader_sptr reader =
1370 if (!(c1_status & abigail::fe_iface::STATUS_OK))
1387 if (c1_status & abigail::fe_iface::STATUS_DEBUG_INFO_NOT_FOUND)
1404 if (c1_status & abigail::fe_iface::STATUS_ALT_DEBUG_INFO_NOT_FOUND)
1434 return abigail::tools_utils::ABIDIFF_ERROR;
1456 abigail::elf_based_reader_sptr reader =
1469 if (!(c2_status & abigail::fe_iface::STATUS_OK))
1486 if (c2_status & abigail::fe_iface::STATUS_DEBUG_INFO_NOT_FOUND)
1503 if (c2_status & abigail::fe_iface::STATUS_ALT_DEBUG_INFO_NOT_FOUND)
1533 return abigail::tools_utils::ABIDIFF_ERROR;
1556 abidiff_status s = abigail::tools_utils::ABIDIFF_OK;
1558 s |= abigail::tools_utils::ABIDIFF_ABI_CHANGE;
1560 s |= abigail::tools_utils::ABIDIFF_ABI_INCOMPATIBLE_CHANGE;
1589 abigail::ir::environment& env,
1592 abigail::fe_iface::status* detailed_error_status = 0)
1599 abigail::fe_iface::status c_status = abigail::fe_iface::STATUS_OK;
1614 abigail::elf_based_reader_sptr reader;
1621 abigail::elf_based_reader_sptr reader =
1630 if (!(c_status & abigail::fe_iface::STATUS_OK))
1641 return abigail::tools_utils::ABIDIFF_ERROR;
1665 return abigail::tools_utils::ABIDIFF_ERROR;
1670 const abigail::xml_writer::write_context_sptr c =
1671 abigail::xml_writer::create_write_context(env, of);
1686 return abigail::tools_utils::ABIDIFF_ERROR;
1700 abigail::fe_iface_sptr rdr = abixml::create_reader(abi_file_path, env);
1708 return abigail::tools_utils::ABIDIFF_ERROR;
1717 abigail::fe_iface::status sts;
1726 return abigail::tools_utils::ABIDIFF_ERROR;
1751 abidiff_status s = abigail::tools_utils::ABIDIFF_OK;
1753 s |= abigail::tools_utils::ABIDIFF_ABI_CHANGE;
1755 s |= abigail::tools_utils::ABIDIFF_ABI_INCOMPATIBLE_CHANGE;
1760 << (s == abigail::tools_utils::ABIDIFF_OK ? "SUCCEEDED" : "FAILED")
1796 if (devel_pkg->type() == abigail::tools_utils::FILE_TYPE_RPM
1797 ||devel_pkg->type() == abigail::tools_utils::FILE_TYPE_DEB)
1836 if (pkg.type() == abigail::tools_utils::FILE_TYPE_RPM)
1851 if (pkg.type() == abigail::tools_utils::FILE_TYPE_RPM
1943 if (pkg.type() != abigail::tools_utils::FILE_TYPE_RPM)
2028 class pkg_prepare_task : public abigail::workers::task
2053 class compare_task : public abigail::workers::task
2063 : status(abigail::tools_utils::ABIDIFF_OK)
2068 status(abigail::tools_utils::ABIDIFF_OK)
2078 abigail::ir::environment env;
2082 abigail::fe_iface::status detailed_status =
2083 abigail::fe_iface::STATUS_UNKNOWN;
2094 if ((status & abigail::tools_utils::ABIDIFF_ABI_CHANGE)
2114 if (status & abigail::tools_utils::ABIDIFF_ERROR)
2117 abigail::status_to_diagnostic_string(detailed_status);
2151 abigail::ir::environment env;
2159 abigail::fe_iface::status detailed_status =
2160 abigail::fe_iface::STATUS_UNKNOWN;
2167 if (status == abigail::tools_utils::ABIDIFF_OK)
2169 else if ((status & abigail::tools_utils::ABIDIFF_ABI_CHANGE)
2184 if (status & abigail::tools_utils::ABIDIFF_ERROR)
2187 abigail::status_to_diagnostic_string(detailed_status);
2246 abigail::tools_utils::base_name(path, name);
2252 if (guess_file_type(path) == abigail::tools_utils::FILE_TYPE_ELF)
2374 if (e->type != abigail::elf::ELF_TYPE_DSO)
2384 if (e->type != abigail::elf::ELF_TYPE_DSO
2385 && e->type != abigail::elf::ELF_TYPE_EXEC
2386 && e->type != abigail::elf::ELF_TYPE_PI_EXEC)
2390 if (e->type == abigail::elf::ELF_TYPE_RELOCATABLE)
2409 if (e->type == abigail::elf::ELF_TYPE_DSO
2529 abigail::workers::queue extraction_queue(num_workers);
2583 abigail::workers::queue preparation_queue(num_workers);
2647 class comparison_done_notify : public abigail::workers::queue::task_done_notify
2657 status(abigail::tools_utils::ABIDIFF_OK)
2675 if (status != abigail::tools_utils::ABIDIFF_OK)
2679 if (status & abigail::tools_utils::ABIDIFF_ABI_CHANGE)
2729 abidiff_status status = abigail::tools_utils::ABIDIFF_OK;
2730 abigail::workers::queue::tasks_type compare_tasks;
2755 && (iter->second->type == abigail::elf::ELF_TYPE_DSO
2756 || iter->second->type == abigail::elf::ELF_TYPE_EXEC
2757 || iter->second->type == abigail::elf::ELF_TYPE_PI_EXEC
2758 || iter->second->type == abigail::elf::ELF_TYPE_RELOCATABLE))
2760 if (iter->second->type != abigail::elf::ELF_TYPE_RELOCATABLE)
2787 status |= abigail::tools_utils::ABIDIFF_ABI_INCOMPATIBLE_CHANGE;
2788 status |= abigail::tools_utils::ABIDIFF_ABI_CHANGE;
2807 abigail::workers::queue comparison_queue(num_workers, notifier);
2900 abidiff_status status = abigail::tools_utils::ABIDIFF_OK;
2901 abigail::workers::queue::tasks_type self_compare_tasks;
2918 && (it->second->type == abigail::elf::ELF_TYPE_DSO
2919 || it->second->type == abigail::elf::ELF_TYPE_EXEC
2920 || it->second->type == abigail::elf::ELF_TYPE_PI_EXEC
2921 || it->second->type == abigail::elf::ELF_TYPE_RELOCATABLE))
2923 if (it->second->type != abigail::elf::ELF_TYPE_RELOCATABLE)
2942 return abigail::tools_utils::ABIDIFF_OK;
2960 abigail::workers::queue comparison_queue(num_workers, notifier);
3013 abidiff_status status = abigail::tools_utils::ABIDIFF_OK;
3032 return abigail::tools_utils::ABIDIFF_ERROR;
3035 return abigail::tools_utils::ABIDIFF_ERROR;
3040 abigail::ir::environment env;
3057 return abigail::tools_utils::ABIDIFF_ERROR;
3069 return abigail::tools_utils::ABIDIFF_ERROR;
3077 status |= abigail::tools_utils::ABIDIFF_ABI_CHANGE;
3079 status |= abigail::tools_utils::ABIDIFF_ABI_INCOMPATIBLE_CHANGE;
3081 if (status & abigail::tools_utils::ABIDIFF_ABI_CHANGE)
3118 abidiff_status status = abigail::tools_utils::ABIDIFF_OK;
3120 if (abigail::tools_utils::file_is_kernel_package(first_package.base_name(),
3152 abidiff_status status = abigail::tools_utils::ABIDIFF_OK;
3185 return abigail::tools_utils::ABIDIFF_ERROR;
3203 return abigail::tools_utils::ABIDIFF_ERROR;
3280 (abigail::tools_utils::make_path_absolute(argv[j]).get());
3294 (abigail::tools_utils::make_path_absolute(argv[j]).get());
3308 abigail::tools_utils::make_path_absolute(argv[j]).get();
3322 abigail::tools_utils::make_path_absolute(argv[j]).get();
3410 if (guess_file_type(argv[j]) == abigail::tools_utils::FILE_TYPE_RPM)
3476 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3477 | abigail::tools_utils::ABIDIFF_ERROR);
3485 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3486 | abigail::tools_utils::ABIDIFF_ERROR);
3496 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3497 | abigail::tools_utils::ABIDIFF_ERROR);
3504 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3505 | abigail::tools_utils::ABIDIFF_ERROR);
3511 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3512 | abigail::tools_utils::ABIDIFF_ERROR);
3518 << abigail::tools_utils::get_library_version_string()
3538 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3539 | abigail::tools_utils::ABIDIFF_ERROR);
3558 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3559 | abigail::tools_utils::ABIDIFF_ERROR);
3566 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3567 | abigail::tools_utils::ABIDIFF_ERROR);
3623 case abigail::tools_utils::FILE_TYPE_RPM:
3625 && second_package->type() != abigail::tools_utils::FILE_TYPE_RPM)
3630 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3631 | abigail::tools_utils::ABIDIFF_ERROR);
3635 abigail::tools_utils::FILE_TYPE_RPM)
3637 abigail::tools_utils::FILE_TYPE_RPM))
3640 abigail::tools_utils::FILE_TYPE_RPM)
3642 abigail::tools_utils::FILE_TYPE_RPM))
3647 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3648 | abigail::tools_utils::ABIDIFF_ERROR);
3658 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3659 | abigail::tools_utils::ABIDIFF_ERROR);
3675 case abigail::tools_utils::FILE_TYPE_DEB:
3677 && second_package->type() != abigail::tools_utils::FILE_TYPE_DEB)
3682 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3683 | abigail::tools_utils::ABIDIFF_ERROR);
3687 case abigail::tools_utils::FILE_TYPE_DIR:
3689 && second_package->type() != abigail::tools_utils::FILE_TYPE_DIR)
3694 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3695 | abigail::tools_utils::ABIDIFF_ERROR);
3699 case abigail::tools_utils::FILE_TYPE_TAR:
3701 && second_package->type() != abigail::tools_utils::FILE_TYPE_TAR)
3706 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3707 | abigail::tools_utils::ABIDIFF_ERROR);
3715 return (abigail::tools_utils::ABIDIFF_USAGE_ERROR
3716 | abigail::tools_utils::ABIDIFF_ERROR);