10Sstevel@tonic-gate/* 20Sstevel@tonic-gate * CDDL HEADER START 30Sstevel@tonic-gate * 40Sstevel@tonic-gate * The contents of this file are subject to the terms of the 51618Srie * Common Development and Distribution License (the "License"). 61618Srie * You may not use this file except in compliance with the License. 70Sstevel@tonic-gate * 80Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 90Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing. 100Sstevel@tonic-gate * See the License for the specific language governing permissions 110Sstevel@tonic-gate * and limitations under the License. 120Sstevel@tonic-gate * 130Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each 140Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 150Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the 160Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying 170Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner] 180Sstevel@tonic-gate * 190Sstevel@tonic-gate * CDDL HEADER END 200Sstevel@tonic-gate */ 211618Srie 220Sstevel@tonic-gate/* 23*12877SRod.Evans@Sun.COM * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. 240Sstevel@tonic-gate */ 250Sstevel@tonic-gate/* LINTLIBRARY */ 260Sstevel@tonic-gate/* PROTOLIB1 */ 270Sstevel@tonic-gate 280Sstevel@tonic-gate#include <stdlib.h> 290Sstevel@tonic-gate#include <libelf.h> 306206Sab196087#include <_machelf.h> 311618Srie#include <sgs.h> 321618Srie#include <libld.h> 331618Srie#include <conv.h> 340Sstevel@tonic-gate 351618Srie/* 369273SAli.Bahrami@Sun.COM * Generic miscellaneous interfaces 371618Srie */ 382647Srieuchar_t conv_check_native(char **, char **); 399273SAli.Bahrami@Sun.COMconst char *conv_lddstub(int); 409273SAli.Bahrami@Sun.COMint conv_sys_eclass(void); 419406SAli.Bahrami@Sun.COMint conv_strproc_isspace(int); 429406SAli.Bahrami@Sun.COMchar *conv_strproc_trim(char *); 439406SAli.Bahrami@Sun.COMBoolean conv_strproc_extract_value(char *, size_t, int, const char **); 449406SAli.Bahrami@Sun.COM 459273SAli.Bahrami@Sun.COM 469273SAli.Bahrami@Sun.COM/* 479273SAli.Bahrami@Sun.COM * Generic core formatting and iteration functionality 489273SAli.Bahrami@Sun.COM */ 499273SAli.Bahrami@Sun.COMconv_iter_ret_t _conv_iter_ds(conv_iter_osabi_t, Half, const conv_ds_t **, 509273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *, const char *); 519273SAli.Bahrami@Sun.COMconv_iter_ret_t _conv_iter_ds_msg(const conv_ds_msg_t *, conv_iter_cb_t, 529273SAli.Bahrami@Sun.COM void *, const char *); 539273SAli.Bahrami@Sun.COMconv_iter_ret_t _conv_iter_msgarr(Conv_elfvalue_t, const Msg *, size_t, 549273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *, const char *); 559273SAli.Bahrami@Sun.COMconv_iter_ret_t _conv_iter_vd(const Val_desc *, conv_iter_cb_t, 569273SAli.Bahrami@Sun.COM void *, const char *); 579273SAli.Bahrami@Sun.COMconv_iter_ret_t _conv_iter_vd2(conv_iter_osabi_t, Half, const Val_desc2 *, 589273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *, const char *); 599273SAli.Bahrami@Sun.COMint conv_iter_strtol_init(const char *, conv_strtol_uvalue_t *); 609273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_strtol(const char *, Conv_elfvalue_t, void *); 619273SAli.Bahrami@Sun.COMconst char *_conv_map2str(Conv_inv_buf_t *, Conv_elfvalue_t, 629273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, size_t, const Msg *, const char *); 639273SAli.Bahrami@Sun.COMconst char *_conv_map_ds(uchar_t, Half, Conv_elfvalue_t, 649273SAli.Bahrami@Sun.COM const conv_ds_t **, Conv_fmt_flags_t, Conv_inv_buf_t *, 659273SAli.Bahrami@Sun.COM const char *); 669273SAli.Bahrami@Sun.COMconst char *_conv_map_vd2str(Conv_inv_buf_t *, Conv_elfvalue_t, 679273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, const Val_desc *, const char *); 689273SAli.Bahrami@Sun.COMconst char *_conv_map_vd22str(Conv_inv_buf_t *, uchar_t, Half, 699273SAli.Bahrami@Sun.COM Conv_elfvalue_t, Conv_fmt_flags_t, const Val_desc2 *, 709273SAli.Bahrami@Sun.COM const char *); 719273SAli.Bahrami@Sun.COM 729273SAli.Bahrami@Sun.COM/* 739273SAli.Bahrami@Sun.COM * Generic formatting interfaces. 749273SAli.Bahrami@Sun.COM */ 759273SAli.Bahrami@Sun.COMconst char *conv_bnd_obj(uint_t, Conv_bnd_obj_buf_t *); 769273SAli.Bahrami@Sun.COMconst char *conv_bnd_type(uint_t, Conv_bnd_type_buf_t *); 779273SAli.Bahrami@Sun.COMconst char *conv_config_feat(int, Conv_config_feat_buf_t *); 784734Sab196087const char *conv_config_obj(ushort_t, Conv_config_obj_buf_t *); 799273SAli.Bahrami@Sun.COMconst char *conv_config_upm(const char *, const char *, 809273SAli.Bahrami@Sun.COM const char *, size_t); 819273SAli.Bahrami@Sun.COMconst char *conv_cnote_auxv_af(Word, Conv_fmt_flags_t, 829273SAli.Bahrami@Sun.COM Conv_cnote_auxv_af_buf_t *); 839273SAli.Bahrami@Sun.COMconst char *conv_cnote_auxv_type(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 849273SAli.Bahrami@Sun.COMconst char *conv_cnote_cc_content(Lword, Conv_fmt_flags_t, 859273SAli.Bahrami@Sun.COM Conv_cnote_cc_content_buf_t *); 869273SAli.Bahrami@Sun.COMconst char *conv_cnote_errno(int, Conv_fmt_flags_t, Conv_inv_buf_t *); 879273SAli.Bahrami@Sun.COMconst char *conv_cnote_fault(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 889273SAli.Bahrami@Sun.COMconst char *conv_cnote_fltset(uint32_t *, int, Conv_fmt_flags_t, 899273SAli.Bahrami@Sun.COM Conv_cnote_fltset_buf_t *); 909273SAli.Bahrami@Sun.COMconst char *conv_cnote_old_pr_flags(int, Conv_fmt_flags_t, 919273SAli.Bahrami@Sun.COM Conv_cnote_old_pr_flags_buf_t *); 929273SAli.Bahrami@Sun.COMconst char *conv_cnote_pr_dmodel(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 939273SAli.Bahrami@Sun.COMconst char *conv_cnote_pr_flags(int, Conv_fmt_flags_t, 949273SAli.Bahrami@Sun.COM Conv_cnote_pr_flags_buf_t *); 959273SAli.Bahrami@Sun.COMconst char *conv_cnote_proc_flag(int, Conv_fmt_flags_t, 969273SAli.Bahrami@Sun.COM Conv_cnote_proc_flag_buf_t *); 979273SAli.Bahrami@Sun.COMconst char *conv_cnote_pr_regname(Half, int, Conv_fmt_flags_t, 989273SAli.Bahrami@Sun.COM Conv_inv_buf_t *inv_buf); 999273SAli.Bahrami@Sun.COMconst char *conv_cnote_pr_stype(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 1009273SAli.Bahrami@Sun.COMconst char *conv_cnote_pr_what(short, short, Conv_fmt_flags_t, 1019273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1029273SAli.Bahrami@Sun.COMconst char *conv_cnote_pr_why(short, Conv_fmt_flags_t, Conv_inv_buf_t *); 1039273SAli.Bahrami@Sun.COMconst char *conv_cnote_priv(int, Conv_fmt_flags_t, Conv_inv_buf_t *); 1049273SAli.Bahrami@Sun.COMconst char *conv_cnote_psetid(int, Conv_fmt_flags_t, Conv_inv_buf_t *); 1059273SAli.Bahrami@Sun.COMconst char *conv_cnote_sa_flags(int, Conv_fmt_flags_t, 1069273SAli.Bahrami@Sun.COM Conv_cnote_sa_flags_buf_t *); 1079273SAli.Bahrami@Sun.COMconst char *conv_cnote_signal(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 1089273SAli.Bahrami@Sun.COMconst char *conv_cnote_si_code(Half, int, int, Conv_fmt_flags_t, 1099273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1109273SAli.Bahrami@Sun.COMconst char *conv_cnote_sigset(uint32_t *, int, Conv_fmt_flags_t, 1119273SAli.Bahrami@Sun.COM Conv_cnote_sigset_buf_t *); 1129273SAli.Bahrami@Sun.COMconst char *conv_cnote_ss_flags(int, Conv_fmt_flags_t, 1139273SAli.Bahrami@Sun.COM Conv_cnote_ss_flags_buf_t *); 1149273SAli.Bahrami@Sun.COMconst char *conv_cnote_syscall(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 1159273SAli.Bahrami@Sun.COMconst char *conv_cnote_sysset(uint32_t *, int, Conv_fmt_flags_t, 1169273SAli.Bahrami@Sun.COM Conv_cnote_sysset_buf_t *); 1179273SAli.Bahrami@Sun.COMconst char *conv_cnote_type(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 1184734Sab196087const char *conv_def_tag(Symref, Conv_inv_buf_t *); 1191618Srieconst char *conv_demangle_name(const char *); 1209273SAli.Bahrami@Sun.COMconst char *conv_dl_flag(int, Conv_fmt_flags_t, Conv_dl_flag_buf_t *); 12112029SRod.Evans@Sun.COMconst char *conv_dl_info(int); 1224734Sab196087const char *conv_dl_mode(int, int, Conv_dl_mode_buf_t *); 1239273SAli.Bahrami@Sun.COMconst char *conv_dwarf_cfa(uchar_t, Conv_fmt_flags_t, Conv_inv_buf_t *); 1244734Sab196087const char *conv_dwarf_ehe(uint_t, Conv_dwarf_ehe_buf_t *); 1259273SAli.Bahrami@Sun.COMconst char *conv_dwarf_regname(Half, Word, Conv_fmt_flags_t, 1269273SAli.Bahrami@Sun.COM int *, Conv_inv_buf_t *); 1279273SAli.Bahrami@Sun.COMconst char *conv_ehdr_abivers(uchar_t, Word, Conv_fmt_flags_t, 1289273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1299273SAli.Bahrami@Sun.COMconst char *conv_ehdr_class(uchar_t, Conv_fmt_flags_t, Conv_inv_buf_t *); 1309273SAli.Bahrami@Sun.COMconst char *conv_ehdr_data(uchar_t, Conv_fmt_flags_t, Conv_inv_buf_t *); 1319273SAli.Bahrami@Sun.COMconst char *conv_ehdr_flags(Half, Word, Conv_fmt_flags_t, 1329273SAli.Bahrami@Sun.COM Conv_ehdr_flags_buf_t *); 1339273SAli.Bahrami@Sun.COMconst char *conv_ehdr_mach(Half, Conv_fmt_flags_t, Conv_inv_buf_t *); 1349273SAli.Bahrami@Sun.COMconst char *conv_ehdr_osabi(uchar_t, Conv_fmt_flags_t, Conv_inv_buf_t *); 1359273SAli.Bahrami@Sun.COMconst char *conv_ehdr_type(uchar_t, Half, Conv_fmt_flags_t, 1369273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1379273SAli.Bahrami@Sun.COMconst char *conv_ehdr_vers(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 1384734Sab196087const char *conv_elfdata_type(Elf_Type, Conv_inv_buf_t *); 13911734SAli.Bahrami@Sun.COMconst char *conv_ent_flags(ec_flags_t, Conv_ent_flags_buf_t *); 14011734SAli.Bahrami@Sun.COMconst char *conv_ent_filcmp(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 1414734Sab196087const char *conv_grphdl_flags(uint_t, Conv_grphdl_flags_buf_t *); 1424734Sab196087const char *conv_grpdesc_flags(uint_t, Conv_grpdesc_flags_buf_t *); 143*12877SRod.Evans@Sun.COMconst char *conv_la_activity(uint_t, Conv_fmt_flags_t, Conv_inv_buf_t *); 144*12877SRod.Evans@Sun.COMconst char *conv_la_bind(uint_t, Conv_la_bind_buf_t *); 145*12877SRod.Evans@Sun.COMconst char *conv_la_search(uint_t, Conv_la_search_buf_t *); 146*12877SRod.Evans@Sun.COMconst char *conv_la_symbind(uint_t, Conv_la_symbind_buf_t *); 1470Sstevel@tonic-gateIsa_desc *conv_isalist(void); 14811734SAli.Bahrami@Sun.COMconst char *conv_mapfile_version(Word, Conv_fmt_flags_t, 14911734SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1509273SAli.Bahrami@Sun.COMconst char *conv_phdr_flags(uchar_t, Word, Conv_fmt_flags_t, 1519273SAli.Bahrami@Sun.COM Conv_phdr_flags_buf_t *); 1529273SAli.Bahrami@Sun.COMconst char *conv_phdr_type(uchar_t, Half, Word, Conv_fmt_flags_t, 1539273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1549273SAli.Bahrami@Sun.COMconst char *conv_reject_desc(Rej_desc *, Conv_reject_desc_buf_t *, 1559273SAli.Bahrami@Sun.COM Half mach); 1569273SAli.Bahrami@Sun.COMconst char *conv_reloc_type(Half, Word, Conv_fmt_flags_t, 1579273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1589273SAli.Bahrami@Sun.COMconst char *conv_reloc_type_static(Half, Word, Conv_fmt_flags_t); 1599273SAli.Bahrami@Sun.COMconst char *conv_reloc_386_type(Word, Conv_fmt_flags_t, Conv_inv_buf_t *); 1609273SAli.Bahrami@Sun.COMconst char *conv_reloc_amd64_type(Word, Conv_fmt_flags_t, 1619273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1629273SAli.Bahrami@Sun.COMconst char *conv_reloc_SPARC_type(Word, Conv_fmt_flags_t, 1639273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1649273SAli.Bahrami@Sun.COMconst char *conv_sec_type(uchar_t, Half, Word, Conv_fmt_flags_t, 1659273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1664734Sab196087const char *conv_seg_flags(Half, Conv_seg_flags_buf_t *); 1679273SAli.Bahrami@Sun.COMvoid conv_str_to_c_literal(const char *buf, size_t n, 1689273SAli.Bahrami@Sun.COM Conv_str_to_c_literal_func_t *cb_func, void *uvalue); 1699273SAli.Bahrami@Sun.COMconst char *conv_sym_info_bind(uchar_t, Conv_fmt_flags_t, 1709273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1719273SAli.Bahrami@Sun.COMconst char *conv_sym_info_type(Half, uchar_t, Conv_fmt_flags_t, 1729273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1739273SAli.Bahrami@Sun.COMconst char *conv_sym_shndx(uchar_t, Half, Half, Conv_fmt_flags_t, 1749273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1759273SAli.Bahrami@Sun.COMconst char *conv_sym_other(uchar_t, Conv_inv_buf_t *); 1769273SAli.Bahrami@Sun.COMconst char *conv_sym_other_vis(uchar_t, Conv_fmt_flags_t, 1779273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 1789273SAli.Bahrami@Sun.COMconst char *conv_syminfo_boundto(Half, Conv_fmt_flags_t, Conv_inv_buf_t *); 1799273SAli.Bahrami@Sun.COMconst char *conv_syminfo_flags(Half, Conv_fmt_flags_t, 1809273SAli.Bahrami@Sun.COM Conv_syminfo_flags_buf_t *); 1819577SRod.Evans@Sun.COMconst char *conv_time(struct timeval *, struct timeval *, 1829577SRod.Evans@Sun.COM Conv_time_buf_t *); 1830Sstevel@tonic-gateUts_desc *conv_uts(void); 1847682SAli.Bahrami@Sun.COMconst char *conv_ver_flags(Half, Conv_fmt_flags_t, Conv_ver_flags_buf_t *); 1854734Sab196087const char *conv_ver_index(Versym, int, Conv_inv_buf_t *); 1864734Sab196087 1871618Srie 1881618Srie/* 1899273SAli.Bahrami@Sun.COM * Generic iteration interfaces. 1909273SAli.Bahrami@Sun.COM */ 1919273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_cap_tags(Conv_fmt_flags_t, conv_iter_cb_t, void *); 1929273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_cap_val_hw1(Half, Conv_fmt_flags_t, 1939273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 19411827SRod.Evans@Sun.COMconv_iter_ret_t conv_iter_cap_val_hw2(Half, Conv_fmt_flags_t, 19511827SRod.Evans@Sun.COM conv_iter_cb_t, void *); 1969273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_cap_val_sf1(Conv_fmt_flags_t, conv_iter_cb_t, void *); 1979273SAli.Bahrami@Sun.COM 1989273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_dyn_feature1(Conv_fmt_flags_t, 1999273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2009273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_dyn_flag(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2019273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_dyn_flag1(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2029273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_dyn_posflag1(Conv_fmt_flags_t, 2039273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2049273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_dyn_tag(conv_iter_osabi_t, Half, 2059273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, conv_iter_cb_t, void *); 2069273SAli.Bahrami@Sun.COM 2079273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_abivers(conv_iter_osabi_t, 2089273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, conv_iter_cb_t, void *); 2099273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_class(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2109273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_data(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2119273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_eident(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2129273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_flags(Half, Conv_fmt_flags_t, 2139273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2149273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_mach(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2159273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_osabi(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2169273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_type(conv_iter_osabi_t, Conv_fmt_flags_t, 2179273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2189273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_ehdr_vers(Conv_fmt_flags_t, conv_iter_cb_t, void *); 2199273SAli.Bahrami@Sun.COM 2209273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_phdr_flags(conv_iter_osabi_t, 2219273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, conv_iter_cb_t, void *); 2229273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_phdr_type(conv_iter_osabi_t, Conv_fmt_flags_t, 2239273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2249273SAli.Bahrami@Sun.COM 2259273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_sec_flags(conv_iter_osabi_t, Half, 2269273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, conv_iter_cb_t, void *); 2279273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_sec_symtab(conv_iter_osabi_t, 2289273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, conv_iter_cb_t, void *); 2299273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_sec_type(conv_iter_osabi_t, Half, 2309273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, conv_iter_cb_t, void *); 2319273SAli.Bahrami@Sun.COM 2329273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_sym_info_bind(Conv_fmt_flags_t, 2339273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2349273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_sym_other_vis(Conv_fmt_flags_t, 2359273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2369273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_sym_shndx(conv_iter_osabi_t, Half, 2379273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, conv_iter_cb_t, void *); 2389273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_sym_info_type(Half, Conv_fmt_flags_t, 2399273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2409273SAli.Bahrami@Sun.COM 2419273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_syminfo_boundto(Conv_fmt_flags_t, 2429273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2439273SAli.Bahrami@Sun.COMconv_iter_ret_t conv_iter_syminfo_flags(Conv_fmt_flags_t, 2449273SAli.Bahrami@Sun.COM conv_iter_cb_t, void *); 2459273SAli.Bahrami@Sun.COM 2469273SAli.Bahrami@Sun.COM 2479273SAli.Bahrami@Sun.COM/* 2489273SAli.Bahrami@Sun.COM * ELFCLASS-specific core formatting functionality 2499273SAli.Bahrami@Sun.COM */ 2509273SAli.Bahrami@Sun.COMint _conv_expn_field(CONV_EXPN_FIELD_ARG *, 2519273SAli.Bahrami@Sun.COM const Val_desc *, Conv_fmt_flags_t, const char *); 2529273SAli.Bahrami@Sun.COMint _conv_expn_field2(CONV_EXPN_FIELD_ARG *, uchar_t, 2539273SAli.Bahrami@Sun.COM Half, const Val_desc2 *, Conv_fmt_flags_t, const char *); 2549273SAli.Bahrami@Sun.COMconst char *conv_invalid_val(Conv_inv_buf_t *, Xword, Conv_fmt_flags_t); 2559273SAli.Bahrami@Sun.COM 2569273SAli.Bahrami@Sun.COM 2579273SAli.Bahrami@Sun.COM/* 2581618Srie * Define all class specific routines. 2591618Srie */ 2609273SAli.Bahrami@Sun.COMconst char *conv32_cap_tag(Elf32_Word, Conv_fmt_flags_t, 2619273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 2629273SAli.Bahrami@Sun.COMconst char *conv64_cap_tag(Elf64_Xword, Conv_fmt_flags_t, 2639273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 2644734Sab196087const char *conv32_cap_val(Elf32_Word, Elf32_Word, Half, 26511827SRod.Evans@Sun.COM Conv_fmt_flags_t, Conv_cap_val_buf_t *); 2664734Sab196087const char *conv64_cap_val(Elf64_Xword, Elf64_Xword, Half, 26711827SRod.Evans@Sun.COM Conv_fmt_flags_t, Conv_cap_val_buf_t *); 2685088Sab196087const char *conv32_cap_val_hw1(Elf32_Word, Half, Conv_fmt_flags_t, 2699273SAli.Bahrami@Sun.COM Conv_cap_val_hw1_buf_t *); 27011827SRod.Evans@Sun.COMconst char *conv32_cap_val_hw2(Elf32_Word, Half, Conv_fmt_flags_t, 27111827SRod.Evans@Sun.COM Conv_cap_val_hw2_buf_t *); 2725088Sab196087const char *conv64_cap_val_hw1(Elf64_Xword, Half, Conv_fmt_flags_t, 2739273SAli.Bahrami@Sun.COM Conv_cap_val_hw1_buf_t *); 27411827SRod.Evans@Sun.COMconst char *conv64_cap_val_hw2(Elf64_Xword, Half, Conv_fmt_flags_t, 27511827SRod.Evans@Sun.COM Conv_cap_val_hw2_buf_t *); 2765088Sab196087const char *conv32_cap_val_sf1(Elf32_Word, Half, Conv_fmt_flags_t, 2779273SAli.Bahrami@Sun.COM Conv_cap_val_sf1_buf_t *); 2785088Sab196087const char *conv64_cap_val_sf1(Elf64_Xword, Half, Conv_fmt_flags_t, 2799273SAli.Bahrami@Sun.COM Conv_cap_val_sf1_buf_t *); 2805088Sab196087const char *conv32_dyn_flag1(Elf32_Word, Conv_fmt_flags_t, 2819273SAli.Bahrami@Sun.COM Conv_dyn_flag1_buf_t *); 2825088Sab196087const char *conv64_dyn_flag1(Elf64_Xword, Conv_fmt_flags_t, 2839273SAli.Bahrami@Sun.COM Conv_dyn_flag1_buf_t *); 2849273SAli.Bahrami@Sun.COMconst char *conv32_dyn_flag(Elf32_Word, int, Conv_dyn_flag_buf_t *); 2859273SAli.Bahrami@Sun.COMconst char *conv64_dyn_flag(Elf64_Xword, int, Conv_dyn_flag_buf_t *); 2864734Sab196087const char *conv32_dyn_posflag1(Elf32_Word, int, 2879273SAli.Bahrami@Sun.COM Conv_dyn_posflag1_buf_t *); 2884734Sab196087const char *conv64_dyn_posflag1(Elf64_Xword, int, 2899273SAli.Bahrami@Sun.COM Conv_dyn_posflag1_buf_t *); 2909273SAli.Bahrami@Sun.COMconst char *conv32_dyn_tag(Elf32_Word, uchar_t, Elf32_Half, 2919273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, Conv_inv_buf_t *); 2929273SAli.Bahrami@Sun.COMconst char *conv64_dyn_tag(Elf64_Xword, uchar_t, Elf64_Half, 2939273SAli.Bahrami@Sun.COM Conv_fmt_flags_t, Conv_inv_buf_t *); 2944734Sab196087const char *conv32_dyn_feature1(Elf32_Word, int, 2959273SAli.Bahrami@Sun.COM Conv_dyn_feature1_buf_t *); 2964734Sab196087const char *conv64_dyn_feature1(Elf64_Xword, int, 2979273SAli.Bahrami@Sun.COM Conv_dyn_feature1_buf_t *); 2989273SAli.Bahrami@Sun.COMconst char *conv32_sec_flags(uchar_t, Half, Elf32_Word, Conv_fmt_flags_t, 2999273SAli.Bahrami@Sun.COM Conv_sec_flags_buf_t *); 3009273SAli.Bahrami@Sun.COMconst char *conv64_sec_flags(uchar_t, Half, Elf64_Xword, Conv_fmt_flags_t, 3019273SAli.Bahrami@Sun.COM Conv_sec_flags_buf_t *); 3024734Sab196087const char *conv32_sec_linkinfo(Elf32_Word, Elf32_Word, 3039273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 3044734Sab196087const char *conv64_sec_linkinfo(Elf64_Word, Elf64_Xword, 3059273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 3064734Sab196087const char *conv32_sym_value(Elf32_Half, uchar_t, Elf32_Addr, 3079273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 3084734Sab196087const char *conv64_sym_value(Elf64_Half, uchar_t, Elf64_Addr, 3099273SAli.Bahrami@Sun.COM Conv_inv_buf_t *); 3109273SAli.Bahrami@Sun.COMconst char *conv32_sym_SPARC_value(Elf32_Addr, int, Conv_inv_buf_t *); 3119273SAli.Bahrami@Sun.COMconst char *conv64_sym_SPARC_value(Elf64_Addr, int, Conv_inv_buf_t *); 312