7179 Insufficient checking in elfdump when processing hash info
[unleashed.git] / usr / src / cmd / sgs / elfdump / common / elfdump.msg
blobe17d8b43e1350092fc1fac12a722b374df16bfa4
2 # CDDL HEADER START
4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
19 # CDDL HEADER END
23 # Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
24 # Copyright 2012 DEY Storage Systems, Inc.  All rights reserved.
27 @ _START_
29 # Message file for cmd/sgs/elfdump.
31 @ MSG_ID_ELFDUMP
33 # Usage Messages
35 @ MSG_USAGE_BRIEF       "usage: %s [-cCdegGhHiklmnrSsuvy] [-I index] \
36                          [-N name] [-O osabi] [-T type] [-p | -w outfile] \
37                          file...\n"
38 @ MSG_USAGE_DETAIL1     "\t[-c]\t\tdump section header information\n"
39 @ MSG_USAGE_DETAIL2     "\t[-C]\t\tdemangle C++ symbol names\n"
40 @ MSG_USAGE_DETAIL3     "\t[-d]\t\tdump the contents of the .dynamic section\n"
41 @ MSG_USAGE_DETAIL4     "\t[-e]\t\tdump the elf header\n"
42 @ MSG_USAGE_DETAIL5     "\t[-g]\t\tdump the contents of the .group sections\n"
43 @ MSG_USAGE_DETAIL6     "\t[-G]\t\tdump the contents of the .got section\n"
44 @ MSG_USAGE_DETAIL7     "\t[-h]\t\tdump the contents of the .hash section\n"
45 @ MSG_USAGE_DETAIL8     "\t[-H]\t\tdump the contents of the .SUNW_cap section\n"
46 @ MSG_USAGE_DETAIL9     "\t[-i]\t\tdump the contents of the .interp section\n"
47 @ MSG_USAGE_DETAIL10    "\t[-I index]\tqualify an option with an index\n"
48 @ MSG_USAGE_DETAIL11    "\t[-l]\t\tdump with no truncated section names\n"
49 @ MSG_USAGE_DETAIL12    "\t[-k]\t\tcalculate elf checksum\n"
50 @ MSG_USAGE_DETAIL13    "\t[-m]\t\tdump the contents of the .SUNW_move \
51                          section\n"
52 @ MSG_USAGE_DETAIL14    "\t[-n]\t\tdump the contents of the .note section\n"
53 @ MSG_USAGE_DETAIL15    "\t[-N name]\tqualify an option with a `name'\n"
54 @ MSG_USAGE_DETAIL16    "\t[-O osabi]\tuse given osabi to interpret object\n"
55 @ MSG_USAGE_DETAIL17    "\t[-P]\t\tuse program headers to generate \
56                          section headers\n"
57 @ MSG_USAGE_DETAIL18    "\t[-p]\t\tdump the program headers\n"
58 @ MSG_USAGE_DETAIL19    "\t[-r]\t\tdump the contents of the relocation \
59                          sections\n"
60 @ MSG_USAGE_DETAIL20    "\t[-S]\t\tdump the contents of the sort index \
61                          sections\n"
62 @ MSG_USAGE_DETAIL21    "\t[-s]\t\tdump the contents of the symbol table \
63                          sections\n"
64 @ MSG_USAGE_DETAIL22    "\t[-T type]\tqualify an option with a section or \
65                          program header type\n"
66 @ MSG_USAGE_DETAIL23    "\t[-u]\t\tdump the contents of a frame unwind \
67                          section\n"
68 @ MSG_USAGE_DETAIL24    "\t[-v]\t\tdump the contents of the version sections\n"
69 @ MSG_USAGE_DETAIL25    "\t[-w file]\twrite the contents of specified section \
70                          to `file'\n"
71 @ MSG_USAGE_DETAIL26    "\t[-y]\t\tdump the contents of the .SUNW_syminfo \
72                          section\n"
74 # Errors
76 @ MSG_ERR_BADFILE       "%s: invalid file type\n"
77 @ MSG_ERR_BADREL1       "%s: bad relocation entry: %s: relocation requires \
78                          symbol\n"
79 @ MSG_ERR_NOSHDR        "%s: section headers are not present: synthesizing \
80                          from program headers (-P option)\n"
81 @ MSG_ERR_PNEEDSPH      "%s: file without program headers is incompatible \
82                          with -P option\n"
83 @ MSG_ERR_NOSHSTRSEC    "%s: no header string table section (shstrtab). \
84                          header names are not available\n"
85 @ MSG_ERR_SHSTRNULL     "%s: zero size section header string table \
86                          (shstrtab). header names are not available\n"
87 @ MSG_ERR_FAILURE       "%s: %s failed: %s\n"
88 @ MSG_ERR_BADSHDRALIGN  "%s: bad section header array alignment\n"
89 @ MSG_ERR_BADPHDRALIGN  "%s: bad program header array alignment\n"
90 @ MSG_ERR_BADSHNAME     "%s: section[%d]: invalid sh_name: %lld\n"
91 @ MSG_ERR_BADSHLINK     "%s: %s: invalid sh_link: %d\n"
92 @ MSG_ERR_BADSHINFO     "%s: %s: invalid sh_info: %d\n"
93 @ MSG_ERR_BADSHTYPE     "%s: %s: invalid sh_type: %d\n"
94 @ MSG_ERR_BADALIGN      "%s: %s: bad sh_offset alignment\n"
95 @ MSG_ERR_BADSYM2       "%s: %s: index[%d]: bad symbol entry: %s: must be \
96                          SHN_COMMON or defined in SHT_NOBITS section\n"
97 @ MSG_ERR_BADSYM3       "%s: %s: index[%d]: bad symbol entry: %s: must be \
98                          defined in a SHF_TLS section\n"
99 @ MSG_ERR_BADSYM4       "%s: %s: index[%d]: bad symbol entry: %s: must be \
100                          defined in a non-SHF_TLS section\n"
101 @ MSG_ERR_BADSYM5       "%s: %s: index[%d]: bad symbol entry: %s: \
102                          invalid shndx: %d\n"
103 @ MSG_ERR_BADSYM6       "%s: %s: index[%d]: bad symbol entry: %s: section[%d] \
104                          size: %#llx: symbol (address %#llx, size %#llx) \
105                          lies outside of containing section\n"
106 @ MSG_ERR_BADSYM7       "%s: %s: index[%d]: suspicious global symbol entry: \
107                          %s: lies within local symbol range (index < %lld)\n"
108 @ MSG_ERR_BADSYM8       "%s: %s: index[%d]: suspicious local symbol entry: \
109                          %s: lies within global symbol range (index >= %lld)\n"
111 @ MSG_ERR_RELBADSYMNDX  "%s: bad symbol reference %d: from relocation \
112                          entry: %d\n"
113 @ MSG_ERR_HSBADSYMNDX   "%s: bad symbol reference %d: from hash entry: %d\n"
114 @ MSG_ERR_BADSYMXINDEX1 "%s: %s: index[%d]: invalid SHN_XINDEX reference: \
115                          SHT_SYMTAB_SHNDX section truncated: no entry for this \
116                          symbol\n"
117 @ MSG_ERR_BADSYMXINDEX2 "%s: %s: index[%d]: invalid SHN_XINDEX reference: \
118                          bad SHT_SYMTAB_SHNDX entry: invalid shndx: 0x%x\n"
119 @ MSG_ERR_BADSYMXINDEX3 "%s: %s: index[%d]: invalid SHN_XINDEX reference: \
120                          SHT_SYMTAB_SHNDX section not found\n"
122 @ MSG_ERR_BADSTOFF      "%s: %s: index[%d]: bad %s offset: 0x%x: max 0x%x\n"
123 @ MSG_ERR_BADSZ         "%s: %s: zero size or zero entry size information\n"
124 @ MSG_ERR_BADMINFO      "%s: %s: invalid m_info: 0x%llx\n"
125 @ MSG_ERR_BADHASH       "%s: %s: bad hash entry: symbol %s: exists in bucket \
126                          %d, should be bucket %ld\n"
127 @ MSG_ERR_NODYNSYM      "%s: %s: associated SHT_DYNSYM section not found\n"
128 @ MSG_ERR_BADNDXSEC     "%s: %s: unexpected section type associated with \
129                          index section: %s\n"
130 @ MSG_ERR_BADSYMNDX     "%s: %s: bad symbol index: %d\n"
131 @ MSG_ERR_BADVER        "%s: %s: index[%d]: version %d is out of range: \
132                          version definitions available: 0-%d\n"
133 @ MSG_ERR_NOTSTRTAB     "%s: section[%d] is not a string table as expected \
134                          by section[%d]\n";
135 @ MSG_ERR_BADCHAINIDX   "%s: %s: invalid chain index %d for bucket %d (max %d)\n"
137 @ MSG_ERR_LDYNNOTADJ    "%s: bad dynamic symbol table layout: %s and %s \
138                          sections are not adjacent\n"
139 @ MSG_ERR_SECMEMOVER    "%s: memory overlap between section[%d]: %s: %llx:%llx \
140                          and section[%d]: %s: %llx:%llx\n"
141 @ MSG_ERR_SHDRMEMOVER   "%s: memory overlap between section header table: \
142                          %llx:%llx and section[%d]: %s: %llx:%llx\n"
143 @ MSG_ERR_MULTDYN       "%s: %d dynamic sections seen (1 expected)\n"
144 @ MSG_ERR_DYNNOBCKSEC   "%s: object lacks %s section required by %s dynamic \
145                          entry\n"
146 @ MSG_ERR_DYNBADADDR    "%s: %s (%#llx) does not match \
147                          shdr[%d: %s].sh_addr (%#llx)\n"
148 @ MSG_ERR_DYNBADSIZE    "%s: %s (%#llx) does not match \
149                          shdr[%d: %s].sh_size (%#llx)\n"
150 @ MSG_ERR_DYNBADENTSIZE "%s: %s (%#llx) does not match \
151                          shdr[%d: %s].sh_entsize (%#llx)\n"
152 @ MSG_ERR_DYNSYMVAL     "%s: %s: symbol value does not match \
153                          %s entry: %s: value: %#llx\n"
154 @ MSG_ERR_MALSTR        "%s: %s: malformed string table, initial or final \
155                          byte\n"
156 @ MSG_ERR_MULTEHFRMHDR  "%s: [%d: %s] multiple .eh_frame_hdr sections seen \
157                          (1 expected)\n"
158 @ MSG_ERR_BADEHFRMPTR   "%s: section[%d: %s] FramePtr (%#llx) does not match \
159                          shdr[%d: %s].sh_addr (%#llx)\n"
160 @ MSG_ERR_BADSORT       "%s: %s: index[%d]: invalid sort order\n"
161 @ MSG_ERR_BADSIDYNNDX   "%s: [%d: %s][%d]: dynamic section index out of \
162                          range (0 - %d): %d\n";
163 @ MSG_ERR_BADSIDYNTAG   "%s: [%d: %s][%d]: dynamic element \
164                          [%d: %s][%d] should have type %s: %s\n";
165 @ MSG_ERR_BADCIEFDELEN  "%s: %s: invalid CIE/FDE length: %#llx at %#llx\n"
168 @ MSG_WARN_INVINTERP1   "%s: PT_INTERP header has no associated section\n"
169 @ MSG_WARN_INVINTERP2   "%s: interp section: %s: and PT_INTERP program \
170                          header have conflicting size or offsets\n"
171 @ MSG_WARN_INVCAP1      "%s: PT_SUNWCAP header has no associated section\n"
172 @ MSG_WARN_INVCAP2      "%s: capabilities section[%d]: %s: requires PT_CAP \
173                          program header\n"
174 @ MSG_WARN_INVCAP3      "%s: capabilities section[%d]: %s: and PT_CAP program \
175                          header have conflicting size or offsets\n"
176 @ MSG_WARN_INVCAP4      "%s: capabilities section[%d]: %s: requires string \
177                          table: invalid sh_info: %d\n";
178 @ MSG_WARN_INADDR32SF1  "%s: capabilities section %s: software capability \
179                          ADDR32: is ineffective within a 32-bit object\n"
180 @ MSG_WARN_MULTEHFRM    "%s: section[%d: %s]: %s object has multiple \
181                         .eh_frame sections\n"
183 @ MSG_INFO_LINUXOSABI   "%s: %s object has Linux .note.ABI-tag section. \
184                         Assuming %s\n"
186 @ MSG_ERR_DWOVRFLW      "%s: %s: encoded DWARF data exceeds section size\n"
187 @ MSG_ERR_DWBADENC      "%s: %s: bad DWARF encoding: %#x\n"
188 @ MSG_ERR_DWNOCIE       "%s: %s: no CIE prior to FDE\n"
190 # exception_range_entry table entries.
191 # TRANSLATION_NOTE - the following entries provide for a series of one or more
192 # standard 32-bit and 64-bit .exception_ranges table entries that align with
193 # the initial title.
195 @ MSG_EXR_TITLE_32      "     index    offset     ret_addr   \
196                          length     handler    type_blk"
197 @ MSG_EXR_ENTRY_32      "%10.10s  0x%8.8llx 0x%8.8llx 0x%8.8llx 0x%8.8llx \
198                          0x%8.8llx"
199 @ MSG_EXR_TITLE_64      "     index    offset             ret_addr           \
200                          length             handler            type_blk"
201 @ MSG_EXR_ENTRY_64      "%10.10s  0x%16.16llx 0x%16.16llx 0x%16.16llx \
202                          0x%16.16llx 0x%16.16llx"
204 # Elf Output Messages
206 @ MSG_ELF_SHDR          "Section Header[%d]:  sh_name: %s"
207 @ MSG_ELF_PHDR          "Program Header[%d]:"
209 @ MSG_ELF_SCN_CAP       "Capabilities Section:  %s"
210 @ MSG_ELF_SCN_CAPCHAIN  "Capabilities Chain Section:  %s"
211 @ MSG_ELF_SCN_INTERP    "Interpreter Section:  %s"
212 @ MSG_ELF_SCN_VERDEF    "Version Definition Section:  %s"
213 @ MSG_ELF_SCN_VERNEED   "Version Needed Section:  %s"
214 @ MSG_ELF_SCN_SYMTAB    "Symbol Table Section:  %s"
215 @ MSG_ELF_SCN_RELOC     "Relocation Section:  %s"
216 @ MSG_ELF_SCN_UNWIND    "Unwind Section: %s"
217 @ MSG_ELF_SCN_DYNAMIC   "Dynamic Section:  %s"
218 @ MSG_ELF_SCN_NOTE      "Note Section:  %s"
219 @ MSG_ELF_SCN_HASH      "Hash Section:  %s"
220 @ MSG_ELF_SCN_SYMINFO   "Syminfo Section:  %s"
221 @ MSG_ELF_SCN_GOT       "Global Offset Table Section:  %s"
222 @ MSG_ELF_SCN_GRP       "Group Section:  %s"
223 @ MSG_ELF_SCN_MOVE      "Move Section:  %s"
224 @ MSG_ELF_SCN_SYMSORT1  "Symbol Sort Section:  %s (%s)"
225 @ MSG_ELF_SCN_SYMSORT2  "Symbol Sort Section:  %s (%s / %s)"
227 @ MSG_OBJ_CAP_TITLE     " Object Capabilities:"
228 @ MSG_SYM_CAP_TITLE     " Symbol Capabilities:"
229 @ MSG_CAPINFO_ENTRIES   "  Symbols:"
230 @ MSG_CAPCHAIN_TITLE    " Capabilities family: %s"
231 @ MSG_CAPCHAIN_ENTRY    "  chainndx  symndx      name"
232 @ MSG_ERR_INVCAP        "%s: capabilities section: %s: contains symbol \
233                          capabilities groups, but no capabilities information \
234                          section is defined: invalid sh_link: %d\n"
235 @ MSG_ERR_INVCAPINFO1   "%s: capabilities information section: %s: no symbol \
236                          table is defined: invalid sh_link: %d\n"
237 @ MSG_ERR_INVCAPINFO2   "%s: capabilities information section: %s: no \
238                          capabilities chain is defined: invalid sh_info: %d\n"
239 @ MSG_ERR_INVCAPINFO3   "%s: capabilities information section: %s: index %d: \
240                          bad capabilities chain index defined: %d\n"
241 @ MSG_ERR_CHBADSYMNDX   "%s: bad symbol reference %d: from capability chain: \
242                          %s entry: %d\n"
244 @ MSG_ELF_HASH_BKTS1    "%10.10s  buckets contain %8d symbols"
245 @ MSG_ELF_HASH_BKTS2    "%10.10s  buckets         %8d symbols (globals)"
246 @ MSG_ELF_HASH_INFO     "    bucket  symndx      name"
247 @ MSG_HASH_OVERFLW      "%s: warning: section %s: too many symbols to count, \
248                          bucket=%d count=%d"
249 @ MSG_ELF_ERR_SHDR      "\tunable to obtain section header: shstrtab[%lld]\n"
250 @ MSG_ELF_ERR_DATA      "\tunable to obtain section data: shstrtab[%lld]\n"
251 @ MSG_ELF_ERR_SCN       "\tunable to obtain section header: section[%d]\n"
252 @ MSG_ELF_ERR_SCNDATA   "\tunable to obtain section data: section[%d]\n"
253 @ MSG_ARCHIVE_SYMTAB_32 "\nSymbol Table: (archive, 32-bit offsets)"
254 @ MSG_ARCHIVE_SYMTAB_64 "\nSymbol Table: (archive, 64-bit offsets)"
255 @ MSG_ARCHIVE_FIELDS_32 "     index    offset    member name and symbol"
256 @ MSG_ARCHIVE_FIELDS_64 "     index    offset            member name and symbol"
258 @ MSG_GOT_MULTIPLE      "%s: multiple relocations against \
259                          the same GOT entry ndx: %d addr: 0x%llx\n"
260 @ MSG_GOT_UNEXPECTED    "%s: warning: section %s: section unexpected within \
261                          relocatable object\n"
263 # Miscellaneous clutter
265 @ MSG_STR_NULL          "(null)"
266 @ MSG_STR_DEPRECATED    "(deprecated value)"
267 @ MSG_STR_UNKNOWN       "<unknown>"
268 @ MSG_STR_SECTION       "%s (section)"
269 @ MSG_STR_CHECKSUM      "elf checksum: 0x%lx"
271 @ MSG_FMT_SCNNDX        "section[%d]"
272 @ MSG_FMT_NOTEENTNDX    "  entry [%d]";
275 @ MSG_ERR_MALLOC        "%s: malloc: %s\n"
276 @ MSG_ERR_OPEN          "%s: open: %s\n"
277 @ MSG_ERR_READ          "%s: read: %s\n"
278 @ MSG_ERR_WRITE         "%s: write: %s\n"
279 @ MSG_ERR_BAD_T_SHT     "%s: unrecognized section header type: %s\n"
280 @ MSG_ERR_BAD_T_PT      "%s: unrecognized program header type: %s\n"
281 @ MSG_ERR_BAD_T_OSABI   "%s: unrecognized operating system ABI: %s\n"
282 @ MSG_ERR_AMBIG_MATCH   "%s: ambiguous use of -I, -N, or -T. Remove \
283                          -p option or section selection option(s)\n"
286 # SHT_MOVE messages
288 @ MSG_MOVE_TITLE        "    symndx     offset   size repeat stride            \
289                          value  with respect to"
290 @ MSG_MOVE_ENTRY        "%10.10s %#10llx %6d %6d %6d %#16llx  %s"
293 # SHT_GROUP messages
295 @ MSG_GRP_TITLE         "     index    flags / section         signature symbol"
296 @ MSG_GRP_SIGNATURE     "       [0]   %-24s %s"
297 @ MSG_GRP_INVALSCN      "<invalid section>"
300 # SHT_NOTE messages
302 @ MSG_NOTE_BADDATASZ    "%s: %s: note header exceeds section size. \
303                          offset: 0x%x\n"
304 @ MSG_NOTE_BADNMSZ      "%s: %s: note name value exceeds section size. \
305                          offset: 0x%x namesize: 0x%x\n"
306 @ MSG_NOTE_BADDESZ      "%s: %s: note data size exceeds section size. \
307                          offset: 0x%x datasize: 0x%x\n"
308 @ MSG_NOTE_BADCOREARCH  "%s: elfdump core file note support not available for \
309                          architecture: %s\n"
310 @ MSG_NOTE_BADCOREDATA  "%s: elfdump core file note data truncated or \
311                          otherwise malformed\n"
312 @ MSG_NOTE_BADCORETYPE  "%s: unknown note type %#x\n"
314 @ _END_
316 # The following strings represent reserved words, files, pathnames and symbols.
317 # Reference to this strings is via the MSG_ORIG() macro, and thus no message
318 # translation is required.
320 @ MSG_STR_OSQBRKT       "["
321 @ MSG_STR_CSQBRKT       "]"
323 @ MSG_GRP_COMDAT        " COMDAT "
324 @ MSG_GRP_ENTRY         "%10.10s   %s [%lld]\n"
325 @ MSG_GRP_UNKNOWN       " 0x%x "
327 @ MSG_ELF_GOT           ".got"
328 @ MSG_ELF_INIT          ".init"
329 @ MSG_ELF_FINI          ".fini"
330 @ MSG_ELF_INTERP        ".interp"
332 @ MSG_ELF_GETEHDR       "elf_getehdr"
333 @ MSG_ELF_GETPHDR       "elf_getphdr"
334 @ MSG_ELF_GETSHDR       "elf_getshdr"
335 @ MSG_ELF_GETSCN        "elf_getscn"
336 @ MSG_ELF_GETDATA       "elf_getdata"
337 @ MSG_ELF_GETARHDR      "elf_getarhdr"
338 @ MSG_ELF_GETARSYM      "elf_getarsym"
339 @ MSG_ELF_RAND          "elf_rand"
340 @ MSG_ELF_BEGIN         "elf_begin"
341 @ MSG_ELF_GETPHDRNUM    "elf_getphdrnum"
342 @ MSG_ELF_GETSHDRNUM    "elf_getshdrnum"
343 @ MSG_ELF_GETSHDRSTRNDX "elf_getshdrstrndx"
344 @ MSG_ELF_XLATETOM      "elf_xlatetom"
345 @ MSG_ELF_ARSYM         "ARSYM"
347 @ MSG_SYM_INIT          "_init"
348 @ MSG_SYM_FINI          "_fini"
349 @ MSG_SYM_GOT           "_GLOBAL_OFFSET_TABLE_"
351 @ MSG_STR_OPTIONS       "CcdeGgHhiI:klmN:nO:PprSsT:uvw:y"
353 @ MSG_STR_8SP           "        "
354 @ MSG_STR_EMPTY         ""
355 @ MSG_STR_CORE          "CORE"
356 @ MSG_STR_NOTEABITAG    ".note.ABI-tag"
357 @ MSG_STR_GNU           "GNU"
358 @ MSG_STR_LOC           "loc"
359 @ MSG_STR_INITLOC       "initloc"
361 @ MSG_FMT_INDENT        "       %s"
362 @ MSG_FMT_INDEX         " [%lld]"
363 @ MSG_FMT_INDEX2        "[%d]"
364 @ MSG_FMT_ASRINDEX      "[ asr%d ]"
365 @ MSG_FMT_INDEXRNG      "[%d-%d]"
366 @ MSG_FMT_INTEGER       " %d"
367 @ MSG_FMT_HASH_INFO     "%10.10s  %-10s  %s"
368 @ MSG_FMT_CHAIN_INFO    "%10.10s  %-10s  %s"
369 @ MSG_FMT_ARSYM1_32     "%10.10s  0x%8.8llx  (%s):%s"
370 @ MSG_FMT_ARSYM2_32     "%10.10s  0x%8.8llx"
371 @ MSG_FMT_ARSYM1_64     "%10.10s  0x%16.16llx  (%s):%s"
372 @ MSG_FMT_ARSYM2_64     "%10.10s  0x%16.16llx"
373 @ MSG_FMT_ARNAME        "%s(%s)"
374 @ MSG_FMT_NLSTR         "\n%s:"
375 @ MSG_FMT_NLSTRNL       "\n%s:\n"
376 @ MSG_FMT_SECSYM        "%.*s%s"
378 @ MSG_HEXDUMP_ROW       "%*s%-*s%s"
379 @ MSG_HEXDUMP_TOK       "%2.2x"
381 @ MSG_SUNW_OST_SGS      "SUNW_OST_SGS"
383 # Unwind info
385 @ MSG_SCN_FRM           ".eh_frame"
386 @ MSG_SCN_FRMHDR        ".eh_frame_hdr"
387 @ MSG_SCN_EXRANGE       ".exception_ranges"
389 @ MSG_UNW_FRMHDR        "Frame Header:"
390 @ MSG_UNW_FRMVERS       "  Version: %d"
391 @ MSG_UNW_FRPTRENC      "  FramePtrEnc: %-20s  FramePtr: %#llx"
392 @ MSG_UNW_FDCNENC       "  FdeCntEnc:   %-20s  FdeCnt: %lld"
393 @ MSG_UNW_TABENC        "  TableEnc:    %-20s"
394 @ MSG_UNW_BINSRTAB1     "  Binary Search Table:"
395 @ MSG_UNW_BINSRTAB2_32  "      InitialLoc    FdeLoc"
396 @ MSG_UNW_BINSRTAB2_64  "      InitialLoc          FdeLoc"
397 @ MSG_UNW_BINSRTABENT_32 "    0x%08llx    0x%08llx"
398 @ MSG_UNW_BINSRTABENT_64 "    0x%016llx  0x%016llx"
399 @ MSG_UNW_ZEROTERM      "ZERO terminator: [0x00000000]"
400 @ MSG_UNW_CIE           "CIE: [%#llx]"
401 @ MSG_UNW_CIELNGTH      " length: 0x%02x cieid: %d"
402 @ MSG_UNW_CIEVERS       " version: %d  augmentation: `%s'"
403 @ MSG_UNW_CIECALGN      " codealign: %#llx  dataalign: %lld  \
404                           retaddr: %d"
405 @ MSG_UNW_CIEAXVAL      " Augmentation Data:"
406 @ MSG_UNW_CIEAXSIZ      "   size: %lld"
407 @ MSG_UNW_CIEAXPERS     "   personality:"
408 @ MSG_UNW_CIEAXPERSENC  "       encoding: 0x%02x %s"
409 @ MSG_UNW_CIEAXPERSRTN  "       routine:  %#08llx"
410 @ MSG_UNW_CIEAXCENC     "   code pointer encoding: 0x%02x %s"
411 @ MSG_UNW_CIEAXLSDA     "   lsda encoding: 0x%02x %s"
412 @ MSG_UNW_CIEAXUNEC     "   Unexpected aug val: %c"
413 @ MSG_UNW_CIECFI        " CallFrameInstructions:"
415 @ MSG_UNW_FDE           " FDE: [%#llx]"
416 @ MSG_UNW_FDELNGTH      "    length:  %#x  cieptr: %#x"
417 @ MSG_UNW_FDEINITLOC    "    initloc: %#llx  addrrange: %#llx  endloc: %#llx"
418 @ MSG_UNW_FDEAXVAL      "   Augmentation Data:"
419 @ MSG_UNW_FDEAXSIZE     "      size: %#llx"
420 @ MSG_UNW_FDEAXLSDA     "      lsda: %#llx"
421 @ MSG_UNW_FDECFI        "   CallFrameInstructions:"
423 # Unwind section Call Frame Instructions. These all start with a leading
424 # "%*s%s", used to insert leading white space and the opcode name.
426 @ MSG_CFA_ADV_LOC       "%*s%s: %s + %llu => %#llx"
427 @ MSG_CFA_CFAOFF        "%*s%s: %s, cfa%+lld"
428 @ MSG_CFA_CFASET        "%*s%s: cfa=%#llx"
429 @ MSG_CFA_LLD           "%*s%s: %lld"
430 @ MSG_CFA_LLU           "%*s%s: %llu"
431 @ MSG_CFA_REG           "%*s%s: %s"
432 @ MSG_CFA_REG_OFFLLD    "%*s%s: %s, offset=%lld"
433 @ MSG_CFA_REG_OFFLLU    "%*s%s: %s, offset=%llu"
434 @ MSG_CFA_REG_REG       "%*s%s: %s, %s"
435 @ MSG_CFA_SIMPLE        "%*s%s"
436 @ MSG_CFA_SIMPLEREP     "%*s%s [%d]"
437 @ MSG_CFA_EBLK          "%*s%s: expr(%llu bytes)"
438 @ MSG_CFA_REG_EBLK      "%*s%s: %s, expr(%llu bytes)"
440 # Architecture specific register name formats
442 @ MSG_REG_FMT_BASIC     "r%d"
443 @ MSG_REG_FMT_NAME      "r%d (%s)"
446 # Note messages
448 @ MSG_NOTE_TYPE         "    type:   %#x"
449 @ MSG_NOTE_TYPE_STR     "    type:   %s"
450 @ MSG_NOTE_NAMESZ       "    namesz: %#x"
451 @ MSG_NOTE_NAME         "    name:"
452 @ MSG_NOTE_DESCSZ       "    descsz: %#x"
454 @ MSG_NOTE_DESC                         "    desc:"
455 @ MSG_CNOTE_DESC_ASRSET_T               "desc: (asrset_t)"
456 @ MSG_CNOTE_DESC_AUXV_T                 "desc: (auxv_t)"
457 @ MSG_CNOTE_DESC_CORE_CONTENT_T         "desc: (core_content_t)"
458 @ MSG_CNOTE_DESC_LWPSINFO_T             "desc: (lwpsinfo_t)"
459 @ MSG_CNOTE_DESC_LWPSTATUS_T            "desc: (lwpstatus_t)"
460 @ MSG_CNOTE_DESC_PRCRED_T               "desc: (prcred_t)"
461 @ MSG_CNOTE_DESC_PRIV_IMPL_INFO_T       "desc: (priv_impl_info_t)"
462 @ MSG_CNOTE_DESC_PRPRIV_T               "desc: (prpriv_t)"
463 @ MSG_CNOTE_DESC_PRPSINFO_T             "desc: (prpsinfo_t)"
464 @ MSG_CNOTE_DESC_PRSTATUS_T             "desc: (prstatus_t)"
465 @ MSG_CNOTE_DESC_PSINFO_T               "desc: (psinfo_t)"
466 @ MSG_CNOTE_DESC_PSTATUS_T              "desc: (pstatus_t)"
467 @ MSG_CNOTE_DESC_STRUCT_UTSNAME         "desc: (struct utsname)"
468 @ MSG_CNOTE_DESC_PRFDINFO_T             "desc: (prfdinfo_t)"
471 @ MSG_CNOTE_FMT_LINE            "%*s%-*s%s"
472 @ MSG_CNOTE_FMT_LINE_2UP        "%*s%-*s%-*s%-*s%s"
473 @ MSG_CNOTE_FMT_D               "%d"
474 @ MSG_CNOTE_FMT_LLD             "%lld"
475 @ MSG_CNOTE_FMT_U               "%u"
476 @ MSG_CNOTE_FMT_LLU             "%llu"
477 @ MSG_CNOTE_FMT_X               "%#x"
478 @ MSG_CNOTE_FMT_LLX             "%#llx"
479 @ MSG_CNOTE_FMT_Z2X             "0x%2.2x"
480 @ MSG_CNOTE_FMT_Z4X             "0x%4.4x"
481 @ MSG_CNOTE_FMT_Z8X             "0x%8.8x"
482 @ MSG_CNOTE_FMT_Z16LLX          "0x%16.16llx"
483 @ MSG_CNOTE_FMT_TITLE           "%*s%s"
484 @ MSG_CNOTE_FMT_AUXVLINE        "%*s%10.10s  %-*s  %s"
485 @ MSG_CNOTE_FMT_PRTPCT          "%u.%u%%"
487 @ MSG_CNOTE_T_PRIV_FLAGS                "priv_flags:"
488 @ MSG_CNOTE_T_PRIV_GLOBALINFOSIZE       "priv_globalinfosize:"
489 @ MSG_CNOTE_T_PRIV_HEADERSIZE           "priv_headersize:"
490 @ MSG_CNOTE_T_PRIV_INFOSIZE             "priv_infosize:"
491 @ MSG_CNOTE_T_PRIV_MAX                  "priv_max:"
492 @ MSG_CNOTE_T_PRIV_NSETS                "priv_nsets:"
493 @ MSG_CNOTE_T_PRIV_SETSIZE              "priv_setsize:"
494 @ MSG_CNOTE_T_PR_ACTION                 "pr_action:"
495 @ MSG_CNOTE_T_PR_ADDR                   "pr_addr:"
496 @ MSG_CNOTE_T_PR_AGENTID                "pr_agentid:"
497 @ MSG_CNOTE_T_PR_ALTSTACK               "pr_altstack:"
498 @ MSG_CNOTE_T_PR_ARGC                   "pr_argc:"
499 @ MSG_CNOTE_T_PR_ARGV                   "pr_argv:"
500 @ MSG_CNOTE_T_PR_ASLWPID                "pr_aslwpid:"
501 @ MSG_CNOTE_T_PR_BIND                   "pr_bind:"
502 @ MSG_CNOTE_T_PR_BINDPRO                "pr_bindpro:"
503 @ MSG_CNOTE_T_PR_BINDPSET               "pr_bindpset:"
504 @ MSG_CNOTE_T_PR_BRKBASE                "pr_brkbase:"
505 @ MSG_CNOTE_T_PR_BRKSIZE                "pr_brksize:"
506 @ MSG_CNOTE_T_PR_BYRSSIZE               "pr_byrssize:"
507 @ MSG_CNOTE_T_PR_BYSIZE                 "pr_bysize:"
508 @ MSG_CNOTE_T_PR_CLNAME                 "pr_clname:"
509 @ MSG_CNOTE_T_PR_CONTRACT               "pr_contract:"
510 @ MSG_CNOTE_T_PR_CPU                    "pr_cpu:"
511 @ MSG_CNOTE_T_PR_CSTIME                 "pr_cstime:"
512 @ MSG_CNOTE_T_PR_CTIME                  "pr_ctime:"
513 @ MSG_CNOTE_T_PR_CURSIG                 "pr_cursig:"
514 @ MSG_CNOTE_T_PR_CUTIME                 "pr_cutime:"
515 @ MSG_CNOTE_T_PR_DMODEL                 "pr_dmodel:"
516 @ MSG_CNOTE_T_PR_EGID                   "pr_egid:"
517 @ MSG_CNOTE_T_PR_ENVP                   "pr_envp:"
518 @ MSG_CNOTE_T_PR_ERRNO                  "pr_errno:"
519 @ MSG_CNOTE_T_PR_ERRPRIV                "pr_errpriv:"
520 @ MSG_CNOTE_T_PR_EUID                   "pr_euid:"
521 @ MSG_CNOTE_T_PR_FLAG                   "pr_flag:"
522 @ MSG_CNOTE_T_PR_FLAGS                  "pr_flags:"
523 @ MSG_CNOTE_T_PR_FLTTRACE               "pr_flttrace:"
524 @ MSG_CNOTE_T_PR_FNAME                  "pr_fname:"
525 @ MSG_CNOTE_T_PR_FPREG                  "pr_fpreg:"
526 @ MSG_CNOTE_T_PR_GID                    "pr_gid:"
527 @ MSG_CNOTE_T_PR_GROUPS                 "pr_groups:"
528 @ MSG_CNOTE_T_PR_INFO                   "pr_info:"
529 @ MSG_CNOTE_T_PR_INFOSIZE               "pr_infosize:"
530 @ MSG_CNOTE_T_PR_INSTR                  "pr_instr:"
531 @ MSG_CNOTE_T_PR_LGRP                   "pr_lgrp:"
532 @ MSG_CNOTE_T_PR_LTTYDEV                "pr_lttydev:"
533 @ MSG_CNOTE_T_PR_LWP                    "pr_lwp:"
534 @ MSG_CNOTE_T_PR_LWPHOLD                "pr_lwphold:"
535 @ MSG_CNOTE_T_PR_LWPID                  "pr_lwpid:"
536 @ MSG_CNOTE_T_PR_LWPPEND                "pr_lwppend:"
537 @ MSG_CNOTE_T_PR_NAME                   "pr_name:"
538 @ MSG_CNOTE_T_PR_NGROUPS                "pr_ngroups:"
539 @ MSG_CNOTE_T_PR_NICE                   "pr_nice:"
540 @ MSG_CNOTE_T_PR_NLWP                   "pr_nlwp:"
541 @ MSG_CNOTE_T_PR_NSETS                  "pr_nsets:"
542 @ MSG_CNOTE_T_PR_NSYSARG                "pr_nsysarg:"
543 @ MSG_CNOTE_T_PR_NZOMB                  "pr_nzomb:"
544 @ MSG_CNOTE_T_PR_OLDCONTEXT             "pr_oldcontext:"
545 @ MSG_CNOTE_T_PR_OLDPRI                 "pr_oldpri:"
546 @ MSG_CNOTE_T_PR_ONPRO                  "pr_onpro:"
547 @ MSG_CNOTE_T_PR_OTTYDEV                "pr_ottydev:"
548 @ MSG_CNOTE_T_PR_PCTCPU                 "pr_pctcpu:"
549 @ MSG_CNOTE_T_PR_PCTMEM                 "pr_pctmem:"
550 @ MSG_CNOTE_T_PR_PGID                   "pr_pgid:"
551 @ MSG_CNOTE_T_PR_PGRP                   "pr_pgrp:"
552 @ MSG_CNOTE_T_PR_PID                    "pr_pid:"
553 @ MSG_CNOTE_T_PR_POOLID                 "pr_poolid:"
554 @ MSG_CNOTE_T_PR_PPID                   "pr_ppid:"
555 @ MSG_CNOTE_T_PR_PRI                    "pr_pri:"
556 @ MSG_CNOTE_T_PR_PROCESSOR              "pr_processor:"
557 @ MSG_CNOTE_T_PR_PROJID                 "pr_projid:"
558 @ MSG_CNOTE_T_PR_PSARGS                 "pr_psargs:"
559 @ MSG_CNOTE_T_PR_REG                    "pr_reg:"
560 @ MSG_CNOTE_T_PR_RGID                   "pr_rgid:"
561 @ MSG_CNOTE_T_PR_RSSIZE                 "pr_rssize:"
562 @ MSG_CNOTE_T_PR_RUID                   "pr_ruid:"
563 @ MSG_CNOTE_T_PR_RVAL1                  "pr_rval1:"
564 @ MSG_CNOTE_T_PR_RVAL2                  "pr_rval2:"
565 @ MSG_CNOTE_T_PR_SETS                   "pr_sets:"
566 @ MSG_CNOTE_T_PR_SETSIZE                "pr_setsize:"
567 @ MSG_CNOTE_T_PR_SGID                   "pr_sgid:"
568 @ MSG_CNOTE_T_PR_SID                    "pr_sid:"
569 @ MSG_CNOTE_T_PR_SIGHOLD                "pr_sighold:"
570 @ MSG_CNOTE_T_PR_SIGPEND                "pr_sigpend:"
571 @ MSG_CNOTE_T_PR_SIGTRACE               "pr_sigtrace:"
572 @ MSG_CNOTE_T_PR_SIZE                   "pr_size:"
573 @ MSG_CNOTE_T_PR_SNAME                  "pr_sname:"
574 @ MSG_CNOTE_T_PR_START                  "pr_start:"
575 @ MSG_CNOTE_T_PR_STATE                  "pr_state:"
576 @ MSG_CNOTE_T_PR_STIME                  "pr_stime:"
577 @ MSG_CNOTE_T_PR_STKBASE                "pr_stkbase:"
578 @ MSG_CNOTE_T_PR_STKSIZE                "pr_stksize:"
579 @ MSG_CNOTE_T_PR_STYPE                  "pr_stype:"
580 @ MSG_CNOTE_T_PR_SUID                   "pr_suid:"
581 @ MSG_CNOTE_T_PR_SYSARG                 "pr_sysarg:"
582 @ MSG_CNOTE_T_PR_SYSCALL                "pr_syscall:"
583 @ MSG_CNOTE_T_PR_SYSENTRY               "pr_sysentry:"
584 @ MSG_CNOTE_T_PR_SYSEXIT                "pr_sysexit:"
585 @ MSG_CNOTE_T_PR_TASKID                 "pr_taskid:"
586 @ MSG_CNOTE_T_PR_TIME                   "pr_time:"
587 @ MSG_CNOTE_T_PR_TSTAMP                 "pr_tstamp:"
588 @ MSG_CNOTE_T_PR_TTYDEV                 "pr_ttydev:"
589 @ MSG_CNOTE_T_PR_UID                    "pr_uid:"
590 @ MSG_CNOTE_T_PR_USTACK                 "pr_ustack:"
591 @ MSG_CNOTE_T_PR_UTIME                  "pr_utime:"
592 @ MSG_CNOTE_T_PR_WCHAN                  "pr_wchan:"
593 @ MSG_CNOTE_T_PR_WHAT                   "pr_what:"
594 @ MSG_CNOTE_T_PR_WHO                    "pr_who:"
595 @ MSG_CNOTE_T_PR_WHY                    "pr_why:"
596 @ MSG_CNOTE_T_PR_WSTAT                  "pr_wstat:"
597 @ MSG_CNOTE_T_PR_ZOMB                   "pr_zomb:"
598 @ MSG_CNOTE_T_PR_ZONEID                 "pr_zoneid:"
599 @ MSG_CNOTE_T_SA_FLAGS                  "sa_flags:"
600 @ MSG_CNOTE_T_SA_HANDLER                "sa_handler:"
601 @ MSG_CNOTE_T_SA_MASK                   "sa_mask:"
602 @ MSG_CNOTE_T_SA_SIGACTION              "sa_sigaction:"
603 @ MSG_CNOTE_T_SIVAL_INT                 "sival_int:"
604 @ MSG_CNOTE_T_SIVAL_PTR                 "sival_ptr:"
605 @ MSG_CNOTE_T_SI_ADDR                   "si_addr:"
606 @ MSG_CNOTE_T_SI_BAND                   "si_band:"
607 @ MSG_CNOTE_T_SI_CODE                   "si_code:"
608 @ MSG_CNOTE_T_SI_CTID                   "si_ctid:"
609 @ MSG_CNOTE_T_SI_ENTITY                 "si_entity"
610 @ MSG_CNOTE_T_SI_ERRNO                  "si_errno:"
611 @ MSG_CNOTE_T_SI_PID                    "si_pid:"
612 @ MSG_CNOTE_T_SI_SIGNO                  "si_signo:"
613 @ MSG_CNOTE_T_SI_STATUS                 "si_status:"
614 @ MSG_CNOTE_T_SI_UID                    "si_uid:"
615 @ MSG_CNOTE_T_SI_VALUE                  "si_value:"
616 @ MSG_CNOTE_T_SI_ZONEID                 "si_zoneid:"
617 @ MSG_CNOTE_T_SS_FLAGS                  "ss_flags:"
618 @ MSG_CNOTE_T_SS_SIZE                   "ss_size:"
619 @ MSG_CNOTE_T_SS_SP                     "ss_sp:"
620 @ MSG_CNOTE_T_TV_NSEC                   "tv_nsec:"
621 @ MSG_CNOTE_T_TV_SEC                    "tv_sec:"
622 @ MSG_CNOTE_T_UTS_MACHINE               "machine:"
623 @ MSG_CNOTE_T_UTS_NODENAME              "nodename:"
624 @ MSG_CNOTE_T_UTS_RELEASE               "release:"
625 @ MSG_CNOTE_T_UTS_SYSNAME               "sysname:"
626 @ MSG_CNOTE_T_UTS_VERSION               "version:"
627 @ MSG_CNOTE_T_PR_FD                     "pr_fd:"
628 @ MSG_CNOTE_T_PR_MODE                   "pr_mode:"
629 @ MSG_CNOTE_T_PR_PATH                   "pr_path:"
630 @ MSG_CNOTE_T_PR_MAJOR                  "pr_major:"
631 @ MSG_CNOTE_T_PR_MINOR                  "pr_minor:"
632 @ MSG_CNOTE_T_PR_RMAJOR                 "pr_rmajor:"
633 @ MSG_CNOTE_T_PR_RMINOR                 "pr_rminor:"
634 @ MSG_CNOTE_T_PR_OFFSET                 "pr_offset:"
635 @ MSG_CNOTE_T_PR_INO                    "pr_ino:"
636 @ MSG_CNOTE_T_PR_FILEFLAGS              "pr_fileflags:"
637 @ MSG_CNOTE_T_PR_FDFLAGS                "pr_fdflags:"
640 # Names of fake sections generated from program header data
641 @ MSG_PHDRNAM_CAP               ".SUNW_cap(phdr)"
642 @ MSG_PHDRNAM_CAPINFO           ".SUNW_capinfo(phdr)"
643 @ MSG_PHDRNAM_CAPCHAIN          ".SUNW_capchain(phdr)"
644 @ MSG_PHDRNAM_DYN               ".dynamic(phdr)"
645 @ MSG_PHDRNAM_DYNSTR            ".dynstr(phdr)"
646 @ MSG_PHDRNAM_DYNSYM            ".dynsym(phdr)"
647 @ MSG_PHDRNAM_FINIARR           ".fini_array(phdr)"
648 @ MSG_PHDRNAM_HASH              ".hash(phdr)"
649 @ MSG_PHDRNAM_INITARR           ".init_array(phdr)"
650 @ MSG_PHDRNAM_INTERP            ".interp(phdr)"
651 @ MSG_PHDRNAM_LDYNSYM           ".SUNW_ldynsym(phdr)"
652 @ MSG_PHDRNAM_MOVE              ".move(phdr)"
653 @ MSG_PHDRNAM_NOTE              ".note(phdr)"
654 @ MSG_PHDRNAM_PREINITARR        ".preinit_array(phdr)"
655 @ MSG_PHDRNAM_REL               ".rel(phdr)"
656 @ MSG_PHDRNAM_RELA              ".rela(phdr)"
657 @ MSG_PHDRNAM_SYMINFO           ".syminfo(phdr)"
658 @ MSG_PHDRNAM_SYMSORT           ".SUNW_symsort(phdr)"
659 @ MSG_PHDRNAM_TLSSORT           ".SUNW_tlssort(phdr)"
660 @ MSG_PHDRNAM_UNWIND            ".eh_frame_hdr(phdr)"
661 @ MSG_PHDRNAM_VER               ".SUNW_version(phdr)"