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# 211324Srie 221324Srie# 23*3492Sab196087# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 241324Srie# Use is subject to license terms. 251324Srie# 260Sstevel@tonic-gate# ident "%Z%%M% %I% %E% SMI" 271618Srie# 280Sstevel@tonic-gate 290Sstevel@tonic-gate@ _START_ 300Sstevel@tonic-gate 310Sstevel@tonic-gate# Message file for cmd/sgs/elfdump. 320Sstevel@tonic-gate 330Sstevel@tonic-gate@ MSG_ID_ELFDUMP 340Sstevel@tonic-gate 350Sstevel@tonic-gate# Usage Messages 360Sstevel@tonic-gate 37*3492Sab196087@ MSG_USAGE_BRIEF "usage: %s [-cCdegGhHiklmnprSsuvy] [-N name] \ 382647Srie [-w file] file(s)\n" 390Sstevel@tonic-gate@ MSG_USAGE_DETAIL1 "\t[-c]\t\tdump section header information\n" 400Sstevel@tonic-gate@ MSG_USAGE_DETAIL2 "\t[-C]\t\tdemangle C++ symbol names\n" 410Sstevel@tonic-gate@ MSG_USAGE_DETAIL3 "\t[-d]\t\tdump the contents of the .dynamic section\n" 420Sstevel@tonic-gate@ MSG_USAGE_DETAIL4 "\t[-e]\t\tdump the elf header\n" 430Sstevel@tonic-gate@ MSG_USAGE_DETAIL5 "\t[-g]\t\tdump the contents of the .group sections\n" 440Sstevel@tonic-gate@ MSG_USAGE_DETAIL6 "\t[-G]\t\tdump the contents of the .got section\n" 450Sstevel@tonic-gate@ MSG_USAGE_DETAIL7 "\t[-h]\t\tdump the contents of the .hash section\n" 460Sstevel@tonic-gate@ MSG_USAGE_DETAIL8 "\t[-H]\t\tdump the contents of the .SUNW_hwcap \ 470Sstevel@tonic-gate section\n" 480Sstevel@tonic-gate@ MSG_USAGE_DETAIL9 "\t[-i]\t\tdump the contents of the .interp section\n" 490Sstevel@tonic-gate@ MSG_USAGE_DETAIL9_1 "\t[-l]\t\tdump with no truncated section names\n" 500Sstevel@tonic-gate@ MSG_USAGE_DETAIL10 "\t[-k]\t\tcalculate elf checksum\n" 510Sstevel@tonic-gate@ MSG_USAGE_DETAIL11 "\t[-m]\t\tdump the contents of the .SUNW_move \ 520Sstevel@tonic-gate section\n" 530Sstevel@tonic-gate@ MSG_USAGE_DETAIL12 "\t[-n]\t\tdump the contents of the .note section\n" 540Sstevel@tonic-gate@ MSG_USAGE_DETAIL13 "\t[-N name]\tqualify an option with a `name'\n" 550Sstevel@tonic-gate@ MSG_USAGE_DETAIL14 "\t[-p]\t\tdump the program headers\n" 560Sstevel@tonic-gate@ MSG_USAGE_DETAIL15 "\t[-r]\t\tdump the contents of the relocation \ 570Sstevel@tonic-gate sections\n" 58*3492Sab196087@ MSG_USAGE_DETAIL16 "\t[-S]\t\tdump the contents of the sort index \ 590Sstevel@tonic-gate sections\n" 60*3492Sab196087@ MSG_USAGE_DETAIL17 "\t[-s]\t\tdump the contents of the symbol table \ 61*3492Sab196087 sections\n" 62*3492Sab196087@ MSG_USAGE_DETAIL18 "\t[-u]\t\tdump the contents of a frame unwind \ 630Sstevel@tonic-gate section\n" 64*3492Sab196087@ MSG_USAGE_DETAIL19 "\t[-v]\t\tdump the contents of the version sections\n" 65*3492Sab196087@ MSG_USAGE_DETAIL20 "\t[-w file]\twrite the contents of specified section \ 660Sstevel@tonic-gate to `file'\n" 67*3492Sab196087@ MSG_USAGE_DETAIL21 "\t[-y]\t\tdump the contents of the .SUNW_syminfo \ 680Sstevel@tonic-gate section\n" 690Sstevel@tonic-gate 700Sstevel@tonic-gate# Errors 710Sstevel@tonic-gate 720Sstevel@tonic-gate@ MSG_ERR_BADFILE "%s: invalid file type\n" 730Sstevel@tonic-gate@ MSG_ERR_BADREL1 "%s: bad relocation entry: %s: relocation requires symbol\n" 740Sstevel@tonic-gate@ MSG_ERR_SHSTRNULL "%s: zero size section header string table (shstrtab)\n" 750Sstevel@tonic-gate@ MSG_ERR_FAILURE "%s: %s failed: %s\n" 760Sstevel@tonic-gate@ MSG_ERR_BADSHNAME "%s: %s: invalid sh_name: %lld\n" 771618Srie@ MSG_ERR_BADSHLINK "%s: %s: invalid sh_link: %d\n" 781618Srie@ MSG_ERR_BADSHINFO "%s: %s: invalid sh_info: %d\n" 791618Srie@ MSG_ERR_BADSHTYPE "%s: %s: invalid sh_type: %d\n" 800Sstevel@tonic-gate@ MSG_ERR_BADALIGN "%s: %s: bad sh_offset alignment\n" 810Sstevel@tonic-gate@ MSG_ERR_BADSYM2 "%s: %s: bad symbol entry: %s: must be SHN_COMMON or \ 820Sstevel@tonic-gate defined in SHT_NOBITS section\n" 830Sstevel@tonic-gate@ MSG_ERR_BADSYM3 "%s: %s: bad symbol entry: %s: must be defined in \ 840Sstevel@tonic-gate a SHF_TLS section\n" 850Sstevel@tonic-gate@ MSG_ERR_BADSYM4 "%s: %s: bad symbol entry: %s: must be defined in \ 860Sstevel@tonic-gate a non-SHF_TLS section\n" 870Sstevel@tonic-gate@ MSG_ERR_BADSYM5 "%s: %s: bad symbol entry: %s: invalid shndx: %d\n" 880Sstevel@tonic-gate@ MSG_ERR_BADSYM6 "%s: %s: bad symbol entry: %s: section[%d] size: %lld: \ 893118Sab196087 symbol (address %#llx, size %lld) lies outside \ 903118Sab196087 of containing section\n" 911618Srie 921618Srie@ MSG_ERR_RELBADSYMNDX "%s: bad symbol reference %d: from relocation \ 931618Srie entry: %d\n" 941618Srie@ MSG_ERR_HSBADSYMNDX "%s: bad symbol reference %d: from hash entry: %d\n" 950Sstevel@tonic-gate@ MSG_ERR_BADSYMXINDEX1 "%s: %s: index[%d]: invalid SHN_XINDEX reference: \ 960Sstevel@tonic-gate SHT_SYMTAB_SHNDX section truncated: no entry for this \ 970Sstevel@tonic-gate symbol\n" 980Sstevel@tonic-gate@ MSG_ERR_BADSYMXINDEX2 "%s: %s: index[%d]: invalid SHN_XINDEX reference: \ 990Sstevel@tonic-gate bad SHT_SYMTAB_SHNDX entry: invalid shndx: 0x%x\n" 1000Sstevel@tonic-gate@ MSG_ERR_BADSYMXINDEX3 "%s: %s: index[%d]: invalid SHN_XINDEX reference: \ 1010Sstevel@tonic-gate SHT_SYMTAB_SHNDX section not found\n" 1021618Srie 1031618Srie@ MSG_ERR_BADSTOFF "%s: %s: index[%d]: bad %s offset: 0x%x: max 0x%x\n" 1041618Srie@ MSG_ERR_BADSZ "%s: %s: zero size or zero entry size information\n" 1050Sstevel@tonic-gate@ MSG_ERR_BADMINFO "%s: %s: invalid m_info: 0x%llx\n" 1060Sstevel@tonic-gate@ MSG_ERR_BADHASH "%s: %s: bad hash entry: symbol %s: exists in bucket \ 1071618Srie %d, should be bucket %ld\n" 108*3492Sab196087@ MSG_ERR_NODYNSYM "%s: %s: associated SHT_DYNSYM section not found\n" 109*3492Sab196087@ MSG_ERR_BADNDXSEC "%s: %s: unexpected section type associated with index section: %s\n" 110*3492Sab196087@ MSG_ERR_LDYNNOTADJ "%s: bad dynamic symbol table layout: %s and %s \ 111*3492Sab196087 sections are not adjacent\n" 112*3492Sab196087@ MSG_ERR_BADSORTNDX "%s: %s: sort section has bad symbol index: %d\n" 1130Sstevel@tonic-gate 1140Sstevel@tonic-gate@ MSG_WARN_INVINTERP1 "%s: PT_INTERP header has no associated section\n" 1150Sstevel@tonic-gate@ MSG_WARN_INVINTERP2 "%s: interp section: %s: and PT_INTERP program \ 1160Sstevel@tonic-gate header have conflicting size or offsets\n" 1170Sstevel@tonic-gate@ MSG_WARN_INVCAP1 "%s: PT_SUNWCAP header has no associated section\n" 1180Sstevel@tonic-gate@ MSG_WARN_INVCAP2 "%s: capabilities section: %s: requires PT_CAP program \ 1190Sstevel@tonic-gate header\n" 1200Sstevel@tonic-gate@ MSG_WARN_INVCAP3 "%s: capabilities section: %s: and PT_CAP program \ 1210Sstevel@tonic-gate header have conflicting size or offsets\n" 1220Sstevel@tonic-gate 1230Sstevel@tonic-gate# Elf Output Messages 1240Sstevel@tonic-gate 1250Sstevel@tonic-gate@ MSG_ELF_SHDR "Section Header[%d]: sh_name: %s" 1260Sstevel@tonic-gate@ MSG_ELF_PHDR "Program Header[%d]:" 1270Sstevel@tonic-gate 1280Sstevel@tonic-gate@ MSG_ELF_SCN_CAP "Hardware/Software Capabilities Section: %s" 1290Sstevel@tonic-gate@ MSG_ELF_SCN_INTERP "Interpreter Section: %s" 1300Sstevel@tonic-gate@ MSG_ELF_SCN_VERDEF "Version Definition Section: %s" 1310Sstevel@tonic-gate@ MSG_ELF_SCN_VERNEED "Version Needed Section: %s" 1320Sstevel@tonic-gate@ MSG_ELF_SCN_SYMTAB "Symbol Table Section: %s" 1330Sstevel@tonic-gate@ MSG_ELF_SCN_RELOC "Relocation Section: %s" 1340Sstevel@tonic-gate@ MSG_ELF_SCN_UNWIND "Unwind Section: %s" 1350Sstevel@tonic-gate@ MSG_ELF_SCN_DYNAMIC "Dynamic Section: %s" 1360Sstevel@tonic-gate@ MSG_ELF_SCN_NOTE "Note Section: %s" 1370Sstevel@tonic-gate@ MSG_ELF_SCN_HASH "Hash Section: %s" 1380Sstevel@tonic-gate@ MSG_ELF_SCN_SYMINFO "Syminfo Section: %s" 1391618Srie@ MSG_ELF_SCN_GOT "Global Offset Table Section: %s" 1401618Srie@ MSG_ELF_SCN_GRP "Group Section: %s" 1411618Srie@ MSG_ELF_SCN_MOVE "Move Section: %s" 142*3492Sab196087@ MSG_ELF_SCN_SYMSORT1 "Symbol Sort Section: %s (%s)" 143*3492Sab196087@ MSG_ELF_SCN_SYMSORT2 "Symbol Sort Section: %s (%s / %s)" 1440Sstevel@tonic-gate 1450Sstevel@tonic-gate@ MSG_ELF_HASH_BKTS1 "%10.10s buckets contain %8d symbols" 1460Sstevel@tonic-gate@ MSG_ELF_HASH_BKTS2 "%10.10s buckets %8d symbols (globals)" 1471618Srie@ MSG_ELF_HASH_INFO " bucket symndx name" 1481324Srie@ MSG_HASH_OVERFLW "%s: warning: section %s: too many symbols to count, \ 1491324Srie bucket=%d count=%d" 1500Sstevel@tonic-gate@ MSG_ELF_ERR_SHDR "\tunable to obtain section header: shstrtab[%lld]\n" 1510Sstevel@tonic-gate@ MSG_ELF_ERR_DATA "\tunable to obtain section data: shstrtab[%lld]\n" 1520Sstevel@tonic-gate@ MSG_ELF_ERR_SCN "\tunable to obtain section header: section[%d]\n" 1530Sstevel@tonic-gate@ MSG_ELF_ERR_SCNDATA "\tunable to obtain section data: section[%d]\n" 1540Sstevel@tonic-gate@ MSG_ARCHIVE_SYMTAB "\nSymbol Table: (archive)" 1550Sstevel@tonic-gate@ MSG_ARCHIVE_FIELDS " index offset member name and symbol" 1561324Srie 1570Sstevel@tonic-gate@ MSG_GOT_MULTIPLE "%s: multiple relocations against \ 1580Sstevel@tonic-gate the same GOT entry ndx: %d addr: 0x%llx\n" 1591324Srie@ MSG_GOT_UNEXPECTED "%s: warning: section %s: section unexpected within \ 1601324Srie relocatable object\n" 1610Sstevel@tonic-gate 1620Sstevel@tonic-gate# Miscellaneous clutter 1630Sstevel@tonic-gate 1640Sstevel@tonic-gate@ MSG_STR_NULL "(null)" 1650Sstevel@tonic-gate@ MSG_STR_DEPRECATED "(deprecated value)" 1660Sstevel@tonic-gate@ MSG_STR_UNKNOWN "<unknown>" 1670Sstevel@tonic-gate@ MSG_STR_SECTION "%.12s (section)" 1680Sstevel@tonic-gate@ MSG_STR_L_SECTION "%s (section)" 1690Sstevel@tonic-gate@ MSG_STR_CHECKSUM "elf checksum: 0x%lx" 1700Sstevel@tonic-gate 1710Sstevel@tonic-gate@ MSG_FMT_SCNNDX "section[%d]" 1720Sstevel@tonic-gate 1730Sstevel@tonic-gate@ MSG_ERR_MALLOC "%s: malloc: %s\n" 1740Sstevel@tonic-gate@ MSG_ERR_OPEN "%s: open: %s\n" 1750Sstevel@tonic-gate 1760Sstevel@tonic-gate# 1771618Srie# SHT_MOVE messages 1780Sstevel@tonic-gate# 1791618Srie@ MSG_MOVE_TITLE " symndx offset size repeat stride \ 1801618Srie value with respect to" 1811618Srie@ MSG_MOVE_ENTRY "%10.10s %6lld %6d %6d %6d %#18.18llx %s" 1820Sstevel@tonic-gate 1830Sstevel@tonic-gate# 1840Sstevel@tonic-gate# SHT_GROUP messages 1850Sstevel@tonic-gate# 1861618Srie@ MSG_GRP_TITLE " index flags / section signature symbol" 1871618Srie@ MSG_GRP_SIGNATURE " [0] %-24s %s" 1880Sstevel@tonic-gate@ MSG_GRP_INVALSCN "<invalid section>" 1890Sstevel@tonic-gate 1900Sstevel@tonic-gate# 1910Sstevel@tonic-gate# SHT_NOTE messages 1920Sstevel@tonic-gate# 1931618Srie@ MSG_NOTE_BADDATASZ "%s: %s: note header exceeds section size. \ 1940Sstevel@tonic-gate offset: 0x%x\n" 1951618Srie@ MSG_NOTE_BADNMSZ "%s: %s: note name value exceeds section size. \ 1960Sstevel@tonic-gate offset: 0x%x namesize: 0x%x\n" 1971618Srie@ MSG_NOTE_BADDESZ "%s: %s: note data size exceeds section size. \ 1980Sstevel@tonic-gate offset: 0x%x datasize: 0x%x\n" 1990Sstevel@tonic-gate 2000Sstevel@tonic-gate@ _END_ 2010Sstevel@tonic-gate 2020Sstevel@tonic-gate# The following strings represent reserved words, files, pathnames and symbols. 2030Sstevel@tonic-gate# Reference to this strings is via the MSG_ORIG() macro, and thus no message 2040Sstevel@tonic-gate# translation is required. 2050Sstevel@tonic-gate 2061618Srie@ MSG_STR_OSQBRKT "[" 2071618Srie@ MSG_STR_CSQBRKT "]" 2080Sstevel@tonic-gate 2091618Srie@ MSG_GRP_COMDAT " COMDAT " 2101618Srie@ MSG_GRP_ENTRY "%10.10s %s [%lld]\n" 2111618Srie@ MSG_GRP_UNKNOWN " 0x%x " 2120Sstevel@tonic-gate 2130Sstevel@tonic-gate@ MSG_ELF_GOT ".got" 2140Sstevel@tonic-gate 2150Sstevel@tonic-gate@ MSG_ELF_GETEHDR "elf_getehdr" 2160Sstevel@tonic-gate@ MSG_ELF_GETPHDR "elf_getphdr" 2170Sstevel@tonic-gate@ MSG_ELF_GETSHDR "elf_getshdr" 2180Sstevel@tonic-gate@ MSG_ELF_GETSCN "elf_getscn" 2190Sstevel@tonic-gate@ MSG_ELF_GETDATA "elf_getdata" 2200Sstevel@tonic-gate@ MSG_ELF_GETARHDR "elf_getarhdr" 2210Sstevel@tonic-gate@ MSG_ELF_GETARSYM "elf_getarsym" 2220Sstevel@tonic-gate@ MSG_ELF_RAND "elf_rand" 2230Sstevel@tonic-gate@ MSG_ELF_BEGIN "elf_begin" 224942Sahl@ MSG_ELF_GETPHNUM "elf_getphnum" 2250Sstevel@tonic-gate@ MSG_ELF_GETSHNUM "elf_getshnum" 2260Sstevel@tonic-gate@ MSG_ELF_GETSHSTRNDX "elf_getshstrndx" 2270Sstevel@tonic-gate@ MSG_ELF_ARSYM "ARSYM" 2280Sstevel@tonic-gate 2290Sstevel@tonic-gate@ MSG_GOT_SYM "_GLOBAL_OFFSET_TABLE_" 2300Sstevel@tonic-gate 231*3492Sab196087@ MSG_STR_OPTIONS "CcdeGgHhiklmN:nprSsuvw:y" 2320Sstevel@tonic-gate 2330Sstevel@tonic-gate@ MSG_STR_EMPTY "" 2340Sstevel@tonic-gate 2350Sstevel@tonic-gate@ MSG_FMT_INDENT " %s" 2360Sstevel@tonic-gate@ MSG_FMT_INDEX " [%lld]" 2371618Srie@ MSG_FMT_INDEX2 "[%d]" 2380Sstevel@tonic-gate@ MSG_FMT_INTEGER " %d" 2390Sstevel@tonic-gate@ MSG_FMT_HASH_INFO "%10.10s %-10s %s" 2400Sstevel@tonic-gate@ MSG_FMT_ARSYM1 "%10.10s 0x%8.8x (%s):%s" 2410Sstevel@tonic-gate@ MSG_FMT_ARSYM2 "%10.10s 0x%8.8x" 2420Sstevel@tonic-gate@ MSG_FMT_ARNAME "%s(%s)" 2430Sstevel@tonic-gate@ MSG_FMT_NLSTR "\n%s:" 2440Sstevel@tonic-gate@ MSG_FMT_NLSTRNL "\n%s:\n" 2450Sstevel@tonic-gate 2460Sstevel@tonic-gate@ MSG_SUNW_OST_SGS "SUNW_OST_SGS" 2470Sstevel@tonic-gate 2480Sstevel@tonic-gate# Unwind info 2491618Srie 2500Sstevel@tonic-gate@ MSG_SCN_FRM ".eh_frame" 2510Sstevel@tonic-gate@ MSG_SCN_FRMHDR ".eh_frame_hdr" 2521618Srie 2530Sstevel@tonic-gate@ MSG_UNW_FRMHDR "Frame Header:" 2540Sstevel@tonic-gate@ MSG_UNW_FRMVERS " Version: %d" 2551618Srie@ MSG_UNW_FRPTRENC " FramePtrEnc: %-20s FramePtr: 0x%llx" 2561618Srie@ MSG_UNW_FDCNENC " FdeCntEnc: %-20s FdeCnt: %lld" 2571618Srie@ MSG_UNW_TABENC " TableEnc: %-20s" 2580Sstevel@tonic-gate@ MSG_UNW_BINSRTAB1 " Binary Search Table:" 2591618Srie@ MSG_UNW_BINSRTAB2 " InitialLoc FdeLoc" 2601618Srie@ MSG_UNW_BINSRTABENT " 0x%016llx 0x%016llx" 2610Sstevel@tonic-gate@ MSG_UNW_CIE "CIE: [0x%08llx]" 2620Sstevel@tonic-gate@ MSG_UNW_CIELNGTH " length: 0x%02x cieid: %d" 2630Sstevel@tonic-gate@ MSG_UNW_CIEVERS " version: %d augstring: `%s'" 2640Sstevel@tonic-gate@ MSG_UNW_CIECALGN " codealign: 0x%llx dataalign: %lld \ 2650Sstevel@tonic-gate retaddr: %d" 2661618Srie@ MSG_UNW_CIEAUXVAL " Auxiliary vals:" 2670Sstevel@tonic-gate@ MSG_UNW_CIEAUXSIZE " size: %d" 2680Sstevel@tonic-gate@ MSG_UNW_CIEAUXPERS " pers: 0x%02x %s 0x%08llx" 2690Sstevel@tonic-gate@ MSG_UNW_CIEAUXCENC " cenc: 0x%02x %s" 2700Sstevel@tonic-gate@ MSG_UNW_CIEAUXLSDA " lsda: 0x%02x %s" 2710Sstevel@tonic-gate@ MSG_UNW_CIEAUXUNEC " Unexpected aug val: %c" 2720Sstevel@tonic-gate@ MSG_UNW_CIECFI " CallFrameInstructions:" 2731618Srie@ MSG_UNW_CIEPRE " " 2740Sstevel@tonic-gate 2750Sstevel@tonic-gate@ MSG_UNW_FDE " FDE: [0x%08llx]" 2760Sstevel@tonic-gate@ MSG_UNW_FDELNGTH " length: 0x%02x cieptr: 0x%02x" 2770Sstevel@tonic-gate@ MSG_UNW_FDEINITLOC " initloc: 0x%08llx addrrange: 0x%04llx" 2781618Srie@ MSG_UNW_FDEAUXVAL " Auxiliary vals:" 2790Sstevel@tonic-gate@ MSG_UNW_FDEAUXSIZE " size: 0x%llx" 2800Sstevel@tonic-gate@ MSG_UNW_FDEAUXLSDA " lsda: 0x%llx" 2810Sstevel@tonic-gate@ MSG_UNW_FDECFI " CallFrameInstructions:" 2821618Srie@ MSG_UNW_FDEPRE " " 2831618Srie 2841618Srie@ MSG_UNW_TBLENTRY "0x%02x " 2850Sstevel@tonic-gate 2860Sstevel@tonic-gate# Note messages 2870Sstevel@tonic-gate 2880Sstevel@tonic-gate@ MSG_NOTE_TYPE " type %#x" 2890Sstevel@tonic-gate@ MSG_NOTE_NAMESZ " namesz %#x:" 2900Sstevel@tonic-gate@ MSG_NOTE_DESCSZ " descsz %#x:" 2910Sstevel@tonic-gate@ MSG_NOTE_DESC " desc[%d]\t%s" 2920Sstevel@tonic-gate@ MSG_NOTE_TOK "%2.2x " 293