1d29b2c44Sab#
2d29b2c44Sab# CDDL HEADER START
3d29b2c44Sab#
4d29b2c44Sab# The contents of this file are subject to the terms of the
5d29b2c44Sab# Common Development and Distribution License (the "License").
6d29b2c44Sab# You may not use this file except in compliance with the License.
7d29b2c44Sab#
8d29b2c44Sab# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9d29b2c44Sab# or http://www.opensolaris.org/os/licensing.
10d29b2c44Sab# See the License for the specific language governing permissions
11d29b2c44Sab# and limitations under the License.
12d29b2c44Sab#
13d29b2c44Sab# When distributing Covered Code, include this CDDL HEADER in each
14d29b2c44Sab# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15d29b2c44Sab# If applicable, add the following below this CDDL HEADER, with the
16d29b2c44Sab# fields enclosed by brackets "[]" replaced with your own identifying
17d29b2c44Sab# information: Portions Copyright [yyyy] [name of copyright owner]
18d29b2c44Sab#
19d29b2c44Sab# CDDL HEADER END
20d29b2c44Sab#
21d29b2c44Sab
22d29b2c44Sab#
23d29b2c44Sab# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
24d29b2c44Sab# Use is subject to license terms.
25d29b2c44Sab#
26d29b2c44Sab# ident	"%Z%%M%	%I%	%E% SMI"
27d29b2c44Sab#
28d29b2c44Sab
29d29b2c44Sab@ _START_
30d29b2c44Sab
31d29b2c44Sab# Message file for cmd/sgs/elfedit.
32d29b2c44Sab
33d29b2c44Sab@ MSG_ID_ELFEDIT
34d29b2c44Sab
35d29b2c44Sab
36d29b2c44Sab# Usage Messages
37d29b2c44Sab
38d29b2c44Sab@ MSG_USAGE_BRIEF	"usage: elfedit [-adrw] [-e cmd] [-L modpath] \
39d29b2c44Sab			 [-o style] [file] [outfile]\n"
40d29b2c44Sab@ MSG_USAGE_DETAIL1	"\t[-a]          Autoprint (show edit results)\n"
41d29b2c44Sab@ MSG_USAGE_DETAIL2	"\t[-d]          Issue messages describing internal \
42d29b2c44Sab			 operations\n"
43d29b2c44Sab@ MSG_USAGE_DETAIL3	"\t[-e cmd]      edit command\n"
44d29b2c44Sab@ MSG_USAGE_DETAIL4	"\t[-L modpath]  Set module path\n"
45d29b2c44Sab@ MSG_USAGE_DETAIL5	"\t[-o ostyle]   Output style (default|simple|num)\n"
46d29b2c44Sab@ MSG_USAGE_DETAIL6	"\t[-r]          Readonly session (outfile not \
47d29b2c44Sab			 allowed)\n"
48d29b2c44Sab@ MSG_USAGE_DETAIL_LAST	"\n\tExtensive help for edit commands is available.\n\
49d29b2c44Sab			 \tEnter 'help' at the elfedit prompt.\n"
50d29b2c44Sab@ MSG_USAGE_CMD		"usage: %s\n"
51d29b2c44Sab
52d29b2c44Sab
53d29b2c44Sab# sys:set option names
54d29b2c44Sab
55d29b2c44Sab@ MSG_SYSSET_A		"autoprint flag"
56d29b2c44Sab@ MSG_SYSSET_D		"debug flag"
57d29b2c44Sab
58d29b2c44Sab
59d29b2c44Sab# Names of things we allocate dynamically
60d29b2c44Sab
61d29b2c44Sab@ MSG_ALLOC_OBJSTATE	"object state"
62d29b2c44Sab@ MSG_ALLOC_SYMTABOS	"symbol table information buffer"
63d29b2c44Sab@ MSG_ALLOC_MODDEF	"module definition"
64d29b2c44Sab@ MSG_ALLOC_UCMD	"user command state"
65d29b2c44Sab@ MSG_ALLOC_UCMDSTR	"user command string buffer"
66d29b2c44Sab@ MSG_ALLOC_TOKBUF	"user command token buffer"
67d29b2c44Sab@ MSG_ALLOC_BATCHLST	"list of -e commands"
68d29b2c44Sab@ MSG_ALLOC_EXPATH	"expanded module search path"
69d29b2c44Sab@ MSG_ALLOC_PATHARR	"search path array"
70d29b2c44Sab@ MSG_ALLOC_HELPITEM	"help state"
71d29b2c44Sab@ MSG_ALLOC_SECMSGPRE	"section message prefix string"
72d29b2c44Sab
73d29b2c44Sab# Format strings
74d29b2c44Sab
75d29b2c44Sab@ MSG_FMT_BUILTIN	"<built in>"
76d29b2c44Sab@ MSG_FMT_UNKNOWN	"<unknown>"
77d29b2c44Sab
78d29b2c44Sab# Debug messages
79d29b2c44Sab
80d29b2c44Sab@ MSG_DEBUG_ADDDYNFLG	"[%d: %s][%d]: Set DF_1_EDITED flag\n"
81d29b2c44Sab@ MSG_DEBUG_SEEDYNFLG	"[%d: %s][%d]: Previously edited file \
82d29b2c44Sab			 (DF_1_EDITED flag is set) \n"
83d29b2c44Sab@ MSG_DEBUG_CMDALIAS	"Command %s:%s is an alias for %s:%s\n"
84d29b2c44Sab@ MSG_DEBUG_MODLOAD	"load module: %s: %s\n"
85d29b2c44Sab@ MSG_DEBUG_MODUNLOAD	"unload module: %s: %s\n"
86d29b2c44Sab@ MSG_DEBUG_CPFILE	"copied %s to output file: %s\n";
87d29b2c44Sab@ MSG_DEBUG_UNLINKFILE	"unlink unsaved output file: %s\n";
88d29b2c44Sab@ MSG_DEBUG_VERSION	"%d-bit version\n"
89d29b2c44Sab@ MSG_DEBUG_READONLY	"session is readonly\n";
90d29b2c44Sab@ MSG_DEBUG_NOFILE	"no ELF object specified. Limited functionalty is available\n";
91d29b2c44Sab@ MSG_DEBUG_DIRTYEXIT	"discarding unsaved edits\n";
92d29b2c44Sab@ MSG_DEBUG_FNDCAP	"[%d: %s]: capabilities section\n"
93d29b2c44Sab@ MSG_DEBUG_FNDDYN	"[%d: %s]: dynamic section\n"
94d29b2c44Sab@ MSG_DEBUG_FNDSTR	"[%d: %s][%d]: string: %s\n"
95d29b2c44Sab@ MSG_DEBUG_FNDSTRTAB	"[%d: %s]: string table section\n"
96d29b2c44Sab@ MSG_DEBUG_FNDSYMTAB	"[%d: %s]: %s symbol table section\n"
97d29b2c44Sab@ MSG_DEBUG_FNDSYMINFO	"[%d: %s]: syminfo section\n"
98d29b2c44Sab@ MSG_DEBUG_FNDVERSYM	"[%d: %s]: versym section: [%d: %s]\n"
99d29b2c44Sab@ MSG_DEBUG_FNDXSHNDX	"[%d: %s]: extended section index section: [%d: %s]\n"
100d29b2c44Sab@ MSG_DEBUG_EXISTSTR	"[%d: %s][%d]: Found existing string in section: %s\n"
101*ad212f6fSab@ MSG_DEBUG_ADDSTR	"[%d: %s][%d]: Using %d/%d bytes from reserved area \
102d29b2c44Sab			 to add string: %s\n"
103d29b2c44Sab@ MSG_DEBUG_NULL2DYNFL1	"[%d: %s]: No existing flags1 field to modify. \
104d29b2c44Sab			 Will use extra DT_NULL in slot [%d] \n"
105d29b2c44Sab@ MSG_DEBUG_AUX_LINK	"[%d: %s]: Ignoring section: sh_link field references \
106d29b2c44Sab			 non-symbol table section: [%d]\n"
107d29b2c44Sab@ MSG_DEBUG_AUX_SIZE "[%d: %s][%d]: Ignoring section: Not enough elements \
108d29b2c44Sab			 for corresponding symbol table: [%d: %s][%d]\n"
109d29b2c44Sab@ MSG_DEBUG_EXECCMD	"command: %s\n"
110d29b2c44Sab@ MSG_DEBUG_SHNAM2NDX	"[%d: %s]: section name: %s\n"
111d29b2c44Sab@ MSG_DEBUG_SYMNAM2NDX	"[%d: %s][%d]: symbol \"%s\"\n"
112d29b2c44Sab@ MSG_DEBUG_INPLACEWARN	"warning: editing input file in place is not \
113d29b2c44Sab			 recommended: %s\n"
114d29b2c44Sab@ MSG_DEBUG_SHNDX_RANGE	"Specified section index [%d] is outside of valid \
115d29b2c44Sab			 of range for this object: 0-%d\n"
116d29b2c44Sab@ MSG_DEBUG_ARRCPY_1	"%s: copy array element [%d] to [%d]\n"
117d29b2c44Sab@ MSG_DEBUG_ARRCPY_N	"%s: copy array elements [%d-%d] to [%d-%d]\n"
118d29b2c44Sab@ MSG_DEBUG_ARRZERO_1	"%s[%d]: zero array element\n"
119d29b2c44Sab@ MSG_DEBUG_ARRZERO_N	"%s[%d-%d]: zero %d array elements\n"
120d29b2c44Sab@ MSG_DEBUG_ARRMOVE_1	"%s: moved element [%d] to [%d]\n"
121d29b2c44Sab@ MSG_DEBUG_ARRMOVE_N	"%s: moved %d elements from [%d-%d] to [%d-%d]\n"
122d29b2c44Sab
123d29b2c44Sab# Errors
124d29b2c44Sab
125d29b2c44Sab@ MSG_ERR_NOFILSYSONLY	"No ELF object specified. Only commands from \
126d29b2c44Sab			 module sys: are allowed: %s:%s\n"
127d29b2c44Sab@ MSG_ERR_BADOSTYLE	"Unrecognized output style \
128d29b2c44Sab			 (default|simple|num): %s\n"
129d29b2c44Sab@ MSG_ERR_BADCONST	"internal error: bad constant value in \
130d29b2c44Sab			 elfedit_const_to_atoui()\n"
131d29b2c44Sab@ MSG_ERR_BADGETVAL	"internal error: bad required value passed to \
132d29b2c44Sab			 elfedit_XXX_get_value()\n"
133d29b2c44Sab@ MSG_ERR_PATHTOOLONG	"path too long: %s/%s.so\n"
134d29b2c44Sab@ MSG_ERR_CNTDLOPEN	"unable to load module sharable object %s: %s\n"
135d29b2c44Sab@ MSG_ERR_CNTDLCLOSE	"unable to unload module sharable object %s: %s\n"
136d29b2c44Sab@ MSG_ERR_UNRECMOD	"no such module: %s\n"
137d29b2c44Sab@ MSG_ERR_UNRECCMD	"no such command: %s:%s\n"
138d29b2c44Sab@ MSG_ERR_SONOTMOD	"sharable object is not a valid elfedit module: %s\n"
139d29b2c44Sab@ MSG_ERR_CNTULSMOD	"cannot unload built in module: %s\n"
140d29b2c44Sab@ MSG_ERR_NULLPRICMDNAM	"module has empty string for primary command: %s\n"
141d29b2c44Sab@ MSG_ERR_BADMODLOAD	"elfedit module failed to initialize: %s\n"
142d29b2c44Sab@ MSG_ERR_BADMODNAME	"sharable library provides module '%s' rather \
143d29b2c44Sab			 than expected '%s': %s\n"
144d29b2c44Sab@ MSG_ERR_OPT_MODPRE	"command option name must start with \
145d29b2c44Sab			 a '-': %s : %s:%s %s\n"
146d29b2c44Sab@ MSG_ERR_OPT_MODLEN	"command option name must have at least one character: \
147d29b2c44Sab			 %s : %s:%s %s\n"
148d29b2c44Sab@ MSG_ERR_OPT_EXCMASKN0	"command option oa_excmask is non-zero when \
149d29b2c44Sab			 oa_idmask is zero: %s : %s:%s %s\n"
150d29b2c44Sab@ MSG_ERR_OPT_IDMASKPOW2 "command option oa_idmask must be 0 or power \
151d29b2c44Sab			 of 2: %s : %s:%s %s\n"
152d29b2c44Sab@ MSG_ERR_OPT_IDMASKUNIQ "command option oa_idmask must be 0 or must be unique \
153d29b2c44Sab			 value: %s : %s:%s %s\n"
154d29b2c44Sab@ MSG_ERR_ARG_MODPRE	"command argument name may not start with \
155d29b2c44Sab			 a '-': %s : %s:%s %s\n"
156d29b2c44Sab@ MSG_ERR_ARG_MODLEN	"command argument name must have at least one \
157d29b2c44Sab			 character: %s : %s:%s %s\n"
158d29b2c44Sab@ MSG_ERR_ARG_CMDOA_VAL	"command argument has ELFEDIT_CMDOA_F_VALUE set, \
159d29b2c44Sab			 which is only allowed for command \
160d29b2c44Sab			 options: %s : %s:%s %s\n"
161d29b2c44Sab@ MSG_ERR_ARG_MASKNOT0	"command argument oa_idmask and oa_excmask fields \
162d29b2c44Sab			 must both be set to 0: %s : %s:%s %s\n"
163d29b2c44Sab@ MSG_ERR_BADSTDOA	"internal error: argument or option uses \
164d29b2c44Sab			 ELFEDIT_CMDOA_F_VALUE incorrectly: %s : %s:%s\n"
165d29b2c44Sab@ MSG_ERR_CMDOA_VALNAM	"ELFEDIT_CMDOA_F_VALUE optarg has NULL \
166d29b2c44Sab			 oa_name: %s : %s:%s %s\n"
167d29b2c44Sab@ MSG_ERR_CMDOA_VALNOT0	"ELFEDIT_CMDOA_F_VALUE optarg has non-0 oa_help, \
168d29b2c44Sab			 oa_flags, oa_idmask or oa_excmask \
169d29b2c44Sab			 field: %s : %s:%s %s\n"
170d29b2c44Sab@ MSG_ERR_BADMODOPTVAL	"command option has ELFEDIT_CMDOA_F_VALUE bit set, \
171d29b2c44Sab			 but following value item is missing: %s : %s:%s %s\n"
172d29b2c44Sab@ MSG_ERR_CNTOPNFILE	"open failed: %s: %s\n"
173d29b2c44Sab@ MSG_ERR_CNTOPNDIR	"unable to read directory: %s: %s\n"
174d29b2c44Sab@ MSG_ERR_SIGACTION	"unable to set signal handler: %s\n"
175d29b2c44Sab@ MSG_ERR_NOAR		"unable to edit ELF archive: %s\n"
176d29b2c44Sab@ MSG_ERR_UNRECELFFILE	"unable to edit non-ELF file: %s\n"
177d29b2c44Sab@ MSG_ERR_BADELFCLASS	"unable to edit file with unknown ELFCLASS: %s\n"
178d29b2c44Sab@ MSG_ERR_MALLOC	"%s: malloc: %s\n"
179d29b2c44Sab@ MSG_ERR_LIBELF	"%s: %s failed: %s\n"
180d29b2c44Sab@ MSG_ERR_MODNOCMD	"module '%s' specified without a command\n"
181d29b2c44Sab@ MSG_ERR_CNTFORK	"unable to execute child process: %s\n"
182d29b2c44Sab@ MSG_ERR_CNTWAIT	"unable to wait for child process: %s\n"
183d29b2c44Sab@ MSG_ERR_CNTEXEC	"%sunable to exec %s: %s\n"
184d29b2c44Sab@ MSG_ERR_CNTSTAT	"unable to stat %s: %s\n"
185d29b2c44Sab@ MSG_ERR_CNTCHMOD	"unable to chmod %s: %s\n"
186d29b2c44Sab@ MSG_ERR_BADSECNDX	"Specified section index [%d] is outside valid \
187d29b2c44Sab			 range: 1-%d\n"
188d29b2c44Sab@ MSG_ERR_NOCAP		"ELF object does not have a capabilities section\n"
189d29b2c44Sab@ MSG_ERR_NODYN		"ELF object does not have a dynamic section\n"
190d29b2c44Sab@ MSG_ERR_NOSYM		"[%d: %s]: Symbol table does not contain symbol: %s\n"
191d29b2c44Sab@ MSG_ERR_NOSYMTAB	"symbol table section not found\n"
192d29b2c44Sab@ MSG_ERR_NOSYMINFO	"ELF object does not have a syminfo section\n"
193d29b2c44Sab@ MSG_ERR_NOTSYMTAB	"[%d: %s]: section is not a symbol table\n"
194d29b2c44Sab@ MSG_ERR_STRSHNDX	"string section index %d is outside expected \
195d29b2c44Sab			 range %d - %d\n"
196d29b2c44Sab@ MSG_ERR_NOTSTRSH	"[%d: %s]: Section is not a string table as expected\n"
197d29b2c44Sab@ MSG_ERR_NOSTRPAD	"[%d: %s]: String table does not have room to add \
198d29b2c44Sab			 string\n"
199d29b2c44Sab@ MSG_ERR_BADSTROFF	"[%d: %s]: String offset [%d] is outside valid \
200d29b2c44Sab			 range: 0-%d\n"
201d29b2c44Sab@ MSG_ERR_NOVERSYMSEC	"[%d: %s]: symbol table does not have an associated \
202d29b2c44Sab			 versym section\n"
203d29b2c44Sab@ MSG_ERR_NOXSHSEC	"[%d: %s]: symbol table does not have an associated \
204d29b2c44Sab			 extended index section\n"
205d29b2c44Sab@ MSG_ERR_BADATOISTR	"not a valid numeric value: '%s'\n"
206d29b2c44Sab@ MSG_ERR_ATOIRANGE	"%s value is out of range [%lld - %lld]: %lld\n"
207d29b2c44Sab@ MSG_ERR_ATOUIRANGE	"%s value is out of range [%llu - %llu]: %llu\n"
208d29b2c44Sab@ MSG_ERR_BADPATHCODE	"Unrecognized code encountered in module \
209d29b2c44Sab			 search path: %%%c\n"
210d29b2c44Sab@ MSG_ERR_UNKNOWNSYSERR	"<unknown>"
211d29b2c44Sab@ MSG_ERR_PAGERFINI	"Error encountered closing pager process\n"
212d29b2c44Sab@ MSG_ERR_PRINTF	"Error encountered writing output\n"
213d29b2c44Sab@ MSG_ERR_FWRITE	"Error encountered writing output: %s\n"
214d29b2c44Sab@ MSG_ERR_MODNAMTOOLONG	"module name too long: %s\n"
215d29b2c44Sab@ MSG_ERR_CNTGETORIGIN	"Unable to determine elfedit $ORIGIN\n"
216d29b2c44Sab@ MSG_ERR_GLREAD	"error reading from stdin: %s\n"
217d29b2c44Sab@ MSG_ERR_READONLY	"Operation not allowed in readonly session\n"
218d29b2c44Sab@ MSG_ERR_NODIRTYQUIT	"Output ELF file has changes pending. Use 'write' \
219d29b2c44Sab			 to save them, or 'quit -f' to exit without saving\n"
220d29b2c44Sab@ MSG_ERR_NOSECNAM	"File does not contain section of name: %s\n"
221d29b2c44Sab@ MSG_ERR_NOSECTYP	"File does not contain section of type: %s\n"
222d29b2c44Sab@ MSG_ERR_ARRBNDS	"%s[%d]: attempt to access elements outside \
223d29b2c44Sab			 of valid of range for this section: 0-%d\n"
224d29b2c44Sab@ MSG_ERR_ARRMVOVERLAP	"%s: Array source [%d-%d] and destination \
225d29b2c44Sab			 [%d-%d] regions overlap\n"
226d29b2c44Sab
227d29b2c44Sab# Format strings for sys:help
228d29b2c44Sab@ MSG_HLPFMT_MOD	"\nMODULE\n   %s - %s\n"
229d29b2c44Sab@ MSG_HLPFMT_NAME	"\nNAME\n   %s - %s\n"
230d29b2c44Sab@ MSG_HLPFMT_SYNOPSIS	"\nSYNOPSIS\n   %s\n"
231d29b2c44Sab@ MSG_HLPFMT_ALIASES	"\nALIASES\n"
232d29b2c44Sab@ MSG_HLPFMT_MODDEFCMD	"module default";
233d29b2c44Sab@ MSG_HLPFMT_DEFCMD	"\t\t(Default Command For Module)";
234d29b2c44Sab@ MSG_HLPFMT_DESC	"\nDESCRIPTION\n"
235d29b2c44Sab@ MSG_HLPFMT_ARGS	"\nARGUMENTS\n"
236d29b2c44Sab@ MSG_HLPFMT_OPT	"\nOPTIONS\n"
237d29b2c44Sab@ MSG_HLPFMT_MULTIEND	"[End: %s, Next: %s]\n"
238d29b2c44Sab@ MSG_HLPFMT_INFILE	"Input File:  %s\n"
239d29b2c44Sab@ MSG_HLPFMT_INFILERO	"Input File:  %s (readonly)\n"
240d29b2c44Sab@ MSG_HLPFMT_INFILENONE	"Input File: <not present>\n"
241d29b2c44Sab@ MSG_HLPFMT_OUTFILE	"Output File: %s\n"
242d29b2c44Sab@ MSG_HLPFMT_CNGPENDING	"    (changes pending)\n"
243d29b2c44Sab@ MSG_HLPFMT_VARHDR	"\nOptions:\n"
244d29b2c44Sab@ MSG_HLPFMT_AFLG	"    a (Autoprint):    %s\n"
245d29b2c44Sab@ MSG_HLPFMT_DFLG	"    d (Debug):        %s\n"
246d29b2c44Sab@ MSG_HLPFMT_OFLG	"    o (Output Style): %s\n"
247d29b2c44Sab@ MSG_HLPFMT_PATHHDR	"\nModule Load Path:\n"
248d29b2c44Sab@ MSG_HLPFMT_MODHDR	"\nCurrently Loaded Modules:\n"
249d29b2c44Sab@ MSG_HLPFMT_SUMSYNOPSIS	"\n           %s\n"
250d29b2c44Sab
251d29b2c44Sab
252d29b2c44Sab# Names we use when an ELF item lacks a name
253d29b2c44Sab
254d29b2c44Sab@ MSG_UNKNOWNSECNAM	"<unknown section name>"
255d29b2c44Sab@ MSG_BADSYMOFFSETNAM	"<bad symbol name>"
256d29b2c44Sab
257d29b2c44Sab
258d29b2c44Sab# builtin sys: module description
259d29b2c44Sab
260d29b2c44Sab@ MSG_MOD_SYS_DESC	"Built in elfedit commands"
261d29b2c44Sab
262d29b2c44Sab
263d29b2c44Sab# 1-line description strings for builtin commands.
264d29b2c44Sab
265d29b2c44Sab@ MSG_SYS_DESC_HELP	"Display module information and/or command \
266d29b2c44Sab			 documentation"
267d29b2c44Sab@ MSG_SYS_DESC_LOAD	"Load module(s)"
268d29b2c44Sab@ MSG_SYS_DESC_SET	"Set elfedit options"
269d29b2c44Sab@ MSG_SYS_DESC_STATUS	"Session status (files, modules, options)"
270d29b2c44Sab@ MSG_SYS_DESC_QUIT	"Exit elfedit session"
271d29b2c44Sab@ MSG_SYS_DESC_UNLOAD	"Unload module(s)"
272d29b2c44Sab@ MSG_SYS_DESC_WRITE	"Flush any changes back to current ELF file"
273d29b2c44Sab
274d29b2c44Sab
275d29b2c44Sab# Command option description strings for builtin commands
276d29b2c44Sab
277d29b2c44Sab@ MSG_SYS_OPTDESC_HELP_S	"\
278d29b2c44Sab   Generate a command synopsis rather than full command help.\n"
279d29b2c44Sab
280d29b2c44Sab@ MSG_SYS_OPTDESC_LOAD_A	"\
281d29b2c44Sab   Load every module that can be found by following the module\n\
282d29b2c44Sab   load path.\n"
283d29b2c44Sab@ MSG_SYS_OPTDESC_QUIT_F	"\
284d29b2c44Sab   Exit the elfedit session without first requiring changes to\n\
285d29b2c44Sab   be saved. Any modifications made to the output file will be\n\
286d29b2c44Sab   quietly discarded, and will be lost."
287d29b2c44Sab@ MSG_SYS_OPTDESC_UNLOAD_A	"\
288d29b2c44Sab   Unload every currently loaded module. Loaded modules can be\n\
289d29b2c44Sab   displayed using the \"status\" command.\n"
290d29b2c44Sab
291d29b2c44Sab
292d29b2c44Sab# Command option description strings for builtin commands
293d29b2c44Sab
294d29b2c44Sab@ MSG_ARGDESC_HELP_ARG		"\
295d29b2c44Sab   Items for which help is desired. Module names and/or command\n\
296d29b2c44Sab   names are allowed, as described above.\n"
297d29b2c44Sab@ MSG_ARGDESC_LOAD_MODNAME	"Name(s) of modules to be loaded.\n"
298d29b2c44Sab@ MSG_ARGDESC_SET_OPTION	"Name of option to be set.\n"
299d29b2c44Sab@ MSG_ARGDESC_SET_VALUE		"Value to be set for option.\n"
300d29b2c44Sab@ MSG_ARGDESC_UNLOAD_MODNAME	"Name(s) of modules to be loaded.\n"
301d29b2c44Sab
302d29b2c44Sab
303d29b2c44Sab# Help text for builtin commands.
304d29b2c44Sab
305d29b2c44Sab@ MSG_SYS_HELP_HELP_NOARG	"   \
306d29b2c44Sab   Welcome to elfedit, a utility for examining and editing\n\
307d29b2c44Sab   ELF objects. This brief discussion will tell you the basics\n\
308d29b2c44Sab   you need to know in order to use the elfedit help facility.\n\
309d29b2c44Sab   With that, you will be able to find desired information about\n\
310d29b2c44Sab   elfedit and its available commands.\n\
311d29b2c44Sab   \n\
312d29b2c44Sab   To reach the point where you are reading this text, you entered\n\
313d29b2c44Sab   the elfedit command \"help\", without any arguments. Actually, you\n\
314d29b2c44Sab   may have entered any of the following:\n\
315d29b2c44Sab   \n\
316d29b2c44Sab   \t?, help, man, sys:?, sys:help, sys:man\n\
317d29b2c44Sab   \n\
318d29b2c44Sab   As we will see below, these are simply different names for the\n\
319d29b2c44Sab   help command.\n\
320d29b2c44Sab   \n\
321d29b2c44Sab   You use elfedit by issuing commands for it to execute.\n\
322d29b2c44Sab   The syntax is similar to that used by Unix command line\n\
323d29b2c44Sab   utilities, and follows the general form:\n\
324d29b2c44Sab   \n\
325d29b2c44Sab   \t> module:command [-opt]... arg...\n\
326d29b2c44Sab   \n\
327d29b2c44Sab   The '>' character is the elfedit prompt, and not part of the\n\
328d29b2c44Sab   command. We show elfedit commands with the prompt, but you\n\
329d29b2c44Sab   should not type the prompt in. elfedit supplies it to let\n\
330d29b2c44Sab   you know when it is expecting a command to process.\n\
331d29b2c44Sab   \n\
332d29b2c44Sab   As with a Unix utility, there are options (which start with a '-'\n\
333d29b2c44Sab   character) and plain arguments (which do not start with a '-').\n\
334d29b2c44Sab   The plain arguments follow the options. The options and plain\n\
335d29b2c44Sab   arguments differ from command to command. Each command sets its own\n\
336d29b2c44Sab   rules for whether it accepts options and arguments, as well as\n\
337d29b2c44Sab   which ones and how many. These details are found in the online\n\
338d29b2c44Sab   help that is available for each command. To learn more about\n\
339d29b2c44Sab   any command, use the help command:\n\
340d29b2c44Sab   \n\
341d29b2c44Sab   \t> help cmdname\n\
342d29b2c44Sab   \n\
343d29b2c44Sab   where 'cmdname' is the name of the command you are interested in.\n\
344d29b2c44Sab   help is simply an elfedit command, like any other. As such, you\n\
345d29b2c44Sab   can read the full documentation for help by entering the command:\n\
346d29b2c44Sab   \n\
347d29b2c44Sab   \t> help sys:help\n\
348d29b2c44Sab   \n\
349d29b2c44Sab   elfedit functionality is organized as \"modules\", which are\n\
350d29b2c44Sab   dynamically loadable ELF objects that contain related editing\n\
351d29b2c44Sab   commands. To refer to a command, you enter its module name,\n\
352d29b2c44Sab   a colon (:), and the command name, all as a single unit without\n\
353d29b2c44Sab   any intervening white-space. The 'sys' module is special: It is\n\
354d29b2c44Sab   a built in module that contains the core commands required for\n\
355d29b2c44Sab   elfedit to work. As a convenience, if you omit the module name\n\
356d29b2c44Sab   from a command, elfedit assumes that you are referring to the sys\n\
357d29b2c44Sab   module. This is why sys:help and help are really the same command,\n\
358d29b2c44Sab   and why we did not have to write the above help command as:\n\
359d29b2c44Sab   \n\
360d29b2c44Sab   \t> sys:help sys:help\n\
361d29b2c44Sab   \n\
362d29b2c44Sab   In fact, we could have written it even more simply, as:\n\
363d29b2c44Sab   \n\
364d29b2c44Sab   \t> help help\n\
365d29b2c44Sab   \n\
366d29b2c44Sab   To access a command from any module other than sys, you must\n\
367d29b2c44Sab   enter both the module and command names. This means that if\n\
368d29b2c44Sab   you write your own module, the module name needs to be unique,\n\
369d29b2c44Sab   but the command names it supplies can be the same names used by\n\
370d29b2c44Sab   other modules. For instance, most elfedit modules supply a command\n\
371d29b2c44Sab   named dump to display information about their part of the ELF \n\
372d29b2c44Sab   file in a style similar to that used by the Unix elfdump command.\n\
373d29b2c44Sab   Despite having the same name (dump), these are all distinct and\n\
374d29b2c44Sab   separate commands. elfedit uses the module/command pair to know\n\
375d29b2c44Sab   which one you mean.\n\
376d29b2c44Sab   \n\
377d29b2c44Sab   elfedit commands can sometimes have more than one name, or alias.\n\
378d29b2c44Sab   Usually, each command only has one name, but there are some\n\
379d29b2c44Sab   exceptions. For example, as we have already seen, sys:?, and \n\
380d29b2c44Sab   sys:man are aliases of sys:help. These are all common names\n\
381d29b2c44Sab   that different programs use to supply help. elfedit accepts all\n\
382d29b2c44Sab   of these names in the hope that a new user who doesn't know\n\
383d29b2c44Sab   elfedit yet will try one of them, and find this information.\n\
384d29b2c44Sab   \n\
385d29b2c44Sab   Most modules provide a \"default command\". This command will be\n\
386d29b2c44Sab   run if you provide only the module name. Most modules use this\n\
387d29b2c44Sab   feature to provide a shortcut for their \"dump\" command. For\n\
388d29b2c44Sab   instance, both of the following commands run dyn:dump:\n\
389d29b2c44Sab   \n\
390d29b2c44Sab   \t> dyn:\n\
391d29b2c44Sab   \t> dyn:dump\n\
392d29b2c44Sab   \n\
393d29b2c44Sab   Although the command name dump was not required, the colon\n\
394d29b2c44Sab   (:) character is. Without it, elfedit will think you mean the\n\
395d29b2c44Sab    command sys:dyn.\n\
396d29b2c44Sab   \n\
397d29b2c44Sab   Using the help command (sys:help), you can easily learn about\n\
398d29b2c44Sab   the other commands that are available. To see which modules\n\
399d29b2c44Sab   are available and a synopsis of the commands they provide:\n\
400d29b2c44Sab   \n\
401d29b2c44Sab   \t> help -s\n\
402d29b2c44Sab   \n\
403d29b2c44Sab   To see the full documentation for a command, you give the\n\
404d29b2c44Sab   name of the command to the help command as a plain argument.\n\
405d29b2c44Sab   As we saw above, this command will show you the detailed\n\
406d29b2c44Sab   documentation for the help command itself:\n\
407d29b2c44Sab   \n\
408d29b2c44Sab   \t> help help\n\
409d29b2c44Sab   \n\
410d29b2c44Sab   The arguments to help can also be module names, without the\n\
411d29b2c44Sab   command. In that case, output similar to that from the -s\n\
412d29b2c44Sab   option will be displayed for that module.\n\
413d29b2c44Sab   \n\
414d29b2c44Sab   If you are new to elfedit, we recommend that you start by learning\n\
415d29b2c44Sab   about the commands in the sys module. This will provide you with\n\
416d29b2c44Sab   such basic knowledge as how to find out the status of your session\n\
417d29b2c44Sab   (sys:status) or how to exit the elfedit program (sys:quit). Once\n\
418d29b2c44Sab   you understand the basic commands, you can branch out and learn\n\
419d29b2c44Sab   about the available modules and commands and how they can be used\n\
420d29b2c44Sab   to edit ELF files.\n"
421d29b2c44Sab
422d29b2c44Sab
423d29b2c44Sab
424d29b2c44Sab
425d29b2c44Sab@ MSG_SYS_HELP_HELP	"   \
426d29b2c44Sab   The sys:help command provides information on elfedit modules\n\
427d29b2c44Sab   and commands:\n\
428d29b2c44Sab   \n\
429d29b2c44Sab   o\tIf called with command names as arguments, documentation\n\
430d29b2c44Sab   \tfor each given command is displayed. If the -s option is\n\
431d29b2c44Sab   \tspecified, a basic synopsis for the command is given.\n\
432d29b2c44Sab   \tOtherwise, the full documentation is shown.\n\
433d29b2c44Sab   \n\
434d29b2c44Sab   o\tIf called with module names as arguments, the name and\n\
435d29b2c44Sab   \tpurpose of each module is shown, along with a brief synopsis\n\
436d29b2c44Sab   \tof the commands the module provides.\n\
437d29b2c44Sab   \n\
438d29b2c44Sab   o\tIf called with the -s option, and no arguments, a brief\n\
439d29b2c44Sab   \tsynopsis of every command is shown, organized by module,\n\
440d29b2c44Sab   \tfor every module visible from the module load path.\n\
441d29b2c44Sab   \n\
442d29b2c44Sab   o\tIf called with no arguments, and the -s option is not\n\
443d29b2c44Sab   \tused, a brief welcome message is displayed, giving basic\n\
444d29b2c44Sab   \tinformation on elfedit operation and the use of the\n\
445d29b2c44Sab   \thelp command.\n"
446d29b2c44Sab
447d29b2c44Sab@ MSG_SYS_HELP_LOAD	"\
448d29b2c44Sab   The sys:load command is used to explicitly load elfedit modules.\n\
449d29b2c44Sab   \n\
450d29b2c44Sab   Most of the functionality available in elfedit is not built\n\
451d29b2c44Sab   into the elfedit program directly. Instead, functionality\n\
452d29b2c44Sab   is contained in \"modules\", which are implemented as dynamically\n\
453d29b2c44Sab   loadable ELF sharable objects. This design allows for easy\n\
454d29b2c44Sab   extensibility of elfedit's abilities, and it is also efficient,\n\
455d29b2c44Sab   since it allows elfedit to be a relatively small program.\n\
456d29b2c44Sab   \n\
457d29b2c44Sab   elfedit will automatically load a module under the following\n\
458d29b2c44Sab   circumstances:\n\
459d29b2c44Sab   \n   \
460d29b2c44Sab   o\tA command from the module needs to be run.\n\
461d29b2c44Sab   \n   \
462d29b2c44Sab   o\tTo display help information about the module or a command\n\
463d29b2c44Sab   \tfound in the module.\n\
464d29b2c44Sab   \n   \
465d29b2c44Sab   o\tTo perform command completion in an interactive session.\n\
466d29b2c44Sab   \tCommand completion can cause many, or all modules visible\n\
467d29b2c44Sab   \tin the module path to be loaded.\n\
468d29b2c44Sab   \n\
469d29b2c44Sab   There is usually little need for explicit module loading.\n\
470d29b2c44Sab   It is usually best to allow elfedit to load modules as they\n\
471d29b2c44Sab   are needed.\n"
472d29b2c44Sab
473d29b2c44Sab@ MSG_SYS_HELP_SET	"\
474d29b2c44Sab   Set options that control how elfedit works.\n\
475d29b2c44Sab   \n\
476d29b2c44Sab   Most variables accept boolen (true/false) values. The sys:set\n\
477d29b2c44Sab   command accepts any of the following as a boolean value:\n\
478d29b2c44Sab   0/1, true/false, t/f, yes/no, y/n, on/off.\n\
479d29b2c44Sab   \n\
480d29b2c44Sab   The variables, and their allowed values, are as follows:\n\
481d29b2c44Sab   \n\
482d29b2c44Sab   a\tAutoprint [boolean]\n\
483d29b2c44Sab   \tWhen autoprint is active, elfedit automatically displays\n\
484d29b2c44Sab   \tthe results of any edits after carrying them out. By default,\n\
485d29b2c44Sab   \tautoprint is on for interactive sessions, and false for\n\
486d29b2c44Sab   \tsessions where the input is not a tty. The elfedit -a option\n\
487d29b2c44Sab   \tcan be used to enable autoprint at session start.\n\
488d29b2c44Sab   \n\
489d29b2c44Sab   d\tDebug [boolean]\n\
490d29b2c44Sab   \tWhen enabled, elfedit issues detailed messages showing\n\
491d29b2c44Sab   \twhere ELF data is being accessed, and how specific edits\n\
492d29b2c44Sab   \tare being carried out. Debug mode is off by default. The\n\
493d29b2c44Sab   \telfedit -d option can be used to enable debug mode at\n\
494d29b2c44Sab   \tsession start.\n\
495d29b2c44Sab   \n\
496d29b2c44Sab   o\tOutput Style [default, simple, num]\n\
497d29b2c44Sab   \tControls the format in which elfedit prints ELF data:\n\
498d29b2c44Sab   \n\
499d29b2c44Sab   \tdefault\n\
500d29b2c44Sab   \tInformation is displayed in a style similar to that used by\n\
501d29b2c44Sab   \tthe elfdump utility. This style is best for interactive use.\n\
502d29b2c44Sab   \n\
503d29b2c44Sab   \tsimple\n\
504d29b2c44Sab   \tData is displayed in a simple format, without extraneous\n\
505d29b2c44Sab   \tinformation or formatting. Strings are displayed as is.\n\
506d29b2c44Sab   \tNumbers are displayed as symbolic constants when possible,\n\
507d29b2c44Sab   \tand in integer form otherwise.\n\
508d29b2c44Sab   \n\
509d29b2c44Sab   \tnum\n\
510d29b2c44Sab   \tInteger values are always shown in integer form. Strings\n\
511d29b2c44Sab   \tare shown as the integer offset into the containing string\n\
512d29b2c44Sab   \ttable.\n"
513d29b2c44Sab
514d29b2c44Sab@ MSG_SYS_HELP_STATUS	"\
515d29b2c44Sab   The status of the current elfedit session is shown:\n\
516d29b2c44Sab   \n\
517d29b2c44Sab   o\tInput and output files\n\
518d29b2c44Sab   \n\
519d29b2c44Sab   o\tCurrent settings of the elfedit options (See 'help set'\n\
520d29b2c44Sab   \tfor more information on elfedit options)\n\
521d29b2c44Sab   \n\
522d29b2c44Sab   o\tModule load path\n\
523d29b2c44Sab   \n\
524d29b2c44Sab   o\tLoaded modules and the paths of the sharable objects\n\
525d29b2c44Sab   \tthat provide them\n"
526d29b2c44Sab
527d29b2c44Sab@ MSG_SYS_HELP_QUIT	"\
528d29b2c44Sab   Exits the elfedit session.\n\
529d29b2c44Sab   \n\
530d29b2c44Sab   elfedit will normally refuse to exit a non-readonly session\n\
531d29b2c44Sab   while there are unsaved edits pending. The sys:write command\n\
532d29b2c44Sab   can be used to save such edits, or the -f option can be used to\n\
533d29b2c44Sab   discard pending edits and exit immediately.\n"
534d29b2c44Sab
535d29b2c44Sab@ MSG_SYS_HELP_UNLOAD	"\
536d29b2c44Sab   The sys:unload command is used to explicitly unload elfedit modules.\n\
537d29b2c44Sab   \n\
538d29b2c44Sab   There is usually little need to explicitly unload modules.\n\
539d29b2c44Sab   \n\
540d29b2c44Sab   The description of the sys:load command discusses module loading\n\
541d29b2c44Sab   in more detail.\n"
542d29b2c44Sab
543d29b2c44Sab@ MSG_SYS_HELP_WRITE	"\
544d29b2c44Sab   Writes all pending edits to the output file. Until this is done,\n\
545d29b2c44Sab   the edits are not permanent, and can be abandoned by exiting the\n\
546d29b2c44Sab   session using the -f option to sys:quit. Once sys:write is used,\n\
547d29b2c44Sab   these changes become permanent.\n"
548d29b2c44Sab
549d29b2c44Sab
550d29b2c44Sab
551d29b2c44Sab# Command option description strings for inheritable option strings
552d29b2c44Sab
553d29b2c44Sab@ MSG_STDOA_OPTDESC_AND	"\
554d29b2c44Sab   The new value should be bitwised AND'd against the\n\
555d29b2c44Sab   existing value.\n"
556d29b2c44Sab
557d29b2c44Sab@ MSG_STDOA_OPTDESC_CMP	"\
558d29b2c44Sab   The new value should be bitwise complemented\n\
559d29b2c44Sab   (1 values set to 0, and 0 values set to 1) before being\n\
560d29b2c44Sab   applied to the existing value.\n"
561d29b2c44Sab
562d29b2c44Sab@ MSG_STDOA_OPTDESC_O "\
563d29b2c44Sab   Overrides the global output style (as set via the sys:set\n\
564d29b2c44Sab   command) for the duration of the call to this command.\n\
565d29b2c44Sab   The valid values for the outstyle argument are: default,\n\
566d29b2c44Sab   simple, or num.\n\
567d29b2c44Sab   \n\
568d29b2c44Sab   Output styles are described in more detail in the documentation\n\
569d29b2c44Sab   for the sys:set command.\n"
570d29b2c44Sab
571d29b2c44Sab@ MSG_STDOA_OPTDESC_OR	"\
572d29b2c44Sab   The new value should be bitwised OR'd against the\n\
573d29b2c44Sab   existing value.\n"
574d29b2c44Sab
575d29b2c44Sab
576d29b2c44Sab
577d29b2c44Sab
578d29b2c44Sab@ _END_
579d29b2c44Sab
580d29b2c44Sab
581d29b2c44Sab# The following strings represent reserved words, files, pathnames and symbols.
582d29b2c44Sab# Reference to this strings is via the MSG_ORIG() macro, and thus no message
583d29b2c44Sab# translation is required.
584d29b2c44Sab
585d29b2c44Sab# Names of libelf functions
586d29b2c44Sab
587d29b2c44Sab@ MSG_ELF_BEGIN		"elf_begin"
588d29b2c44Sab@ MSG_ELF_GETEHDR	"elf_getehdr"
589d29b2c44Sab@ MSG_ELF_GETDATA	"elf_getdata"
590d29b2c44Sab@ MSG_ELF_GETPHNUM	"elf_getphnum"
591d29b2c44Sab@ MSG_ELF_GETPHDR	"elf_getphdr"
592d29b2c44Sab@ MSG_ELF_GETSCN	"elf_getscn"
593d29b2c44Sab@ MSG_ELF_GETSHDR	"elf_getshdr"
594d29b2c44Sab@ MSG_ELF_GETSHNUM	"elf_getshnum"
595d29b2c44Sab@ MSG_ELF_GETSHSTRNDX	"elf_getshstrndx"
596d29b2c44Sab@ MSG_ELF_UPDATE	"elf_update"
597d29b2c44Sab
598d29b2c44Sab
599d29b2c44Sab# Names of special section indexes
600d29b2c44Sab
601d29b2c44Sab@ MSG_SHN_UNDEF			"SHN_UNDEF"		# 0
602d29b2c44Sab@ MSG_SHN_UNDEF_ALT1		"undef"
603d29b2c44Sab@ MSG_SHN_SUNW_IGNORE		"SHN_SUNW_IGNORE"	# 0xff3f
604d29b2c44Sab@ MSG_SHN_SUNW_IGNORE_ALT1	"sunw_ignore"
605d29b2c44Sab@ MSG_SHN_BEFORE		"SHN_BEFORE"		# 0xff00
606d29b2c44Sab@ MSG_SHN_BEFORE_ALT1		"before"
607d29b2c44Sab@ MSG_SHN_AFTER			"SHN_AFTER"		# 0xff01
608d29b2c44Sab@ MSG_SHN_AFTER_ALT1		"after"
609d29b2c44Sab@ MSG_SHN_AMD64_LCOMMON		"SHN_AMD64_LCOMMON"	# 0xff02
610d29b2c44Sab@ MSG_SHN_AMD64_LCOMMON_ALT1	"amd64_lcommon"
611d29b2c44Sab@ MSG_SHN_ABS			"SHN_ABS"		# 0xfff1
612d29b2c44Sab@ MSG_SHN_ABS_ALT1		"abs"
613d29b2c44Sab@ MSG_SHN_COMMON		"SHN_COMMON"		# 0xfff2
614d29b2c44Sab@ MSG_SHN_COMMON_ALT1		"common"
615d29b2c44Sab@ MSG_SHN_XINDEX		"SHN_XINDEX"		# 0xffff
616d29b2c44Sab@ MSG_SHN_XINDEX_ALT1		"xindex"
617d29b2c44Sab
618d29b2c44Sab
619d29b2c44Sab# Names of sh_type SHT_* type constants
620d29b2c44Sab
621d29b2c44Sab@ MSG_SHT_NULL			"SHT_NULL"		# 0
622d29b2c44Sab@ MSG_SHT_NULL_ALT1		"null"
623d29b2c44Sab@ MSG_SHT_PROGBITS		"SHT_PROGBITS"		# 1
624d29b2c44Sab@ MSG_SHT_PROGBITS_ALT1		"progbits"
625d29b2c44Sab@ MSG_SHT_SYMTAB		"SHT_SYMTAB"		# 2
626d29b2c44Sab@ MSG_SHT_SYMTAB_ALT1		"symtab"
627d29b2c44Sab@ MSG_SHT_STRTAB		"SHT_STRTAB"		# 3
628d29b2c44Sab@ MSG_SHT_STRTAB_ALT1		"strtab"
629d29b2c44Sab@ MSG_SHT_RELA			"SHT_RELA"		# 4
630d29b2c44Sab@ MSG_SHT_RELA_ALT1		"rela"
631d29b2c44Sab@ MSG_SHT_HASH			"SHT_HASH"		# 5
632d29b2c44Sab@ MSG_SHT_HASH_ALT1		"hash"
633d29b2c44Sab@ MSG_SHT_DYNAMIC		"SHT_DYNAMIC"		# 6
634d29b2c44Sab@ MSG_SHT_DYNAMIC_ALT1		"dynamic"
635d29b2c44Sab@ MSG_SHT_NOTE			"SHT_NOTE"		# 7
636d29b2c44Sab@ MSG_SHT_NOTE_ALT1		"note"
637d29b2c44Sab@ MSG_SHT_NOBITS		"SHT_NOBITS"		# 8
638d29b2c44Sab@ MSG_SHT_NOBITS_ALT1		"nobits"
639d29b2c44Sab@ MSG_SHT_REL			"SHT_REL"		# 9
640d29b2c44Sab@ MSG_SHT_REL_ALT1		"rel"
641d29b2c44Sab@ MSG_SHT_SHLIB			"SHT_SHLIB"		# 10
642d29b2c44Sab@ MSG_SHT_SHLIB_ALT1		"shlib"
643d29b2c44Sab@ MSG_SHT_DYNSYM		"SHT_DYNSYM"		# 11
644d29b2c44Sab@ MSG_SHT_DYNSYM_ALT1		"dynsym"
645d29b2c44Sab@ MSG_SHT_INIT_ARRAY		"SHT_INIT_ARRAY"	# 14
646d29b2c44Sab@ MSG_SHT_INIT_ARRAY_ALT1	"init_array"
647d29b2c44Sab@ MSG_SHT_FINI_ARRAY		"SHT_FINI_ARRAY"	# 15
648d29b2c44Sab@ MSG_SHT_FINI_ARRAY_ALT1	"fini_array"
649d29b2c44Sab@ MSG_SHT_PREINIT_ARRAY		"SHT_PREINIT_ARRAY"	# 16
650d29b2c44Sab@ MSG_SHT_PREINIT_ARRAY_ALT1	"preinit_ARRAY"
651d29b2c44Sab@ MSG_SHT_GROUP			"SHT_GROUP"		# 17
652d29b2c44Sab@ MSG_SHT_GROUP_ALT1		"group"
653d29b2c44Sab@ MSG_SHT_SYMTAB_SHNDX		"SHT_SYMTAB_SHNDX"	# 18
654d29b2c44Sab@ MSG_SHT_SYMTAB_SHNDX_ALT1	"symtab_shndx"
655d29b2c44Sab@ MSG_SHT_SUNW_SYMSORT		"SHT_SUNW_symsort"	# 0x6ffffff1
656d29b2c44Sab@ MSG_SHT_SUNW_SYMSORT_ALT1	"sunw_symsort"
657d29b2c44Sab@ MSG_SHT_SUNW_TLSSORT		"SHT_SUNW_tlssort"	# 0x6ffffff2
658d29b2c44Sab@ MSG_SHT_SUNW_TLSSORT_ALT1	"sunw_tlssort"
659d29b2c44Sab@ MSG_SHT_SUNW_LDYNSYM		"SHT_SUNW_LDYNSYM"	# 0x6ffffff3
660d29b2c44Sab@ MSG_SHT_SUNW_LDYNSYM_ALT1	"sunw_ldynsym"
661d29b2c44Sab@ MSG_SHT_SUNW_DOF		"SHT_SUNW_dof"		# 0x6ffffff4
662d29b2c44Sab@ MSG_SHT_SUNW_DOF_ALT1		"sunw_dof"
663d29b2c44Sab@ MSG_SHT_SUNW_CAP		"SHT_SUNW_cap"		# 0x6ffffff5
664d29b2c44Sab@ MSG_SHT_SUNW_CAP_ALT1		"sunw_cap"
665d29b2c44Sab@ MSG_SHT_SUNW_SIGNATURE	"SHT_SUNW_SIGNATURE"	# 0x6ffffff6
666d29b2c44Sab@ MSG_SHT_SUNW_SIGNATURE_ALT1	"sunw_signature"
667d29b2c44Sab@ MSG_SHT_SUNW_ANNOTATE		"SHT_SUNW_ANNOTATE"	# 0x6ffffff7
668d29b2c44Sab@ MSG_SHT_SUNW_ANNOTATE_ALT1	"sunw_annotate"
669d29b2c44Sab@ MSG_SHT_SUNW_DEBUGSTR		"SHT_SUNW_DEBUGSTR"	# 0x6ffffff8
670d29b2c44Sab@ MSG_SHT_SUNW_DEBUGSTR_ALT1	"sunw_debugstr"
671d29b2c44Sab@ MSG_SHT_SUNW_DEBUG		"SHT_SUNW_DEBUG"	# 0x6ffffff9
672d29b2c44Sab@ MSG_SHT_SUNW_DEBUG_ALT1	"sunw_debug"
673d29b2c44Sab@ MSG_SHT_SUNW_MOVE		"SHT_SUNW_move"		# 0x6ffffffa
674d29b2c44Sab@ MSG_SHT_SUNW_MOVE_ALT1	"sunw_move"
675d29b2c44Sab@ MSG_SHT_SUNW_COMDAT		"SHT_SUNW_COMDAT"	# 0x6ffffffb
676d29b2c44Sab@ MSG_SHT_SUNW_COMDAT_ALT1	"sunw_comdat"
677d29b2c44Sab@ MSG_SHT_SUNW_SYMINFO		"SHT_SUNW_syminfo"	# 0x6ffffffc
678d29b2c44Sab@ MSG_SHT_SUNW_SYMINFO_ALT1	"sunw_syminfo"
679d29b2c44Sab@ MSG_SHT_SUNW_VERDEF		"SHT_SUNW_verdef"	# 0x6ffffffd
680d29b2c44Sab@ MSG_SHT_SUNW_VERDEF_ALT1	"sunw_verdef"
681d29b2c44Sab@ MSG_SHT_GNU_VERDEF		"SHT_GNU_verdef"	# 0x6ffffffd
682d29b2c44Sab@ MSG_SHT_GNU_VERDEF_ALT1	"gnu_verdef"
683d29b2c44Sab@ MSG_SHT_SUNW_VERNEED		"SHT_SUNW_verneed"	# 0x6ffffffe
684d29b2c44Sab@ MSG_SHT_SUNW_VERNEED_ALT1	"sunw_verneed"
685d29b2c44Sab@ MSG_SHT_GNU_VERNEED		"SHT_GNU_verneed"	# 0x6ffffffe
686d29b2c44Sab@ MSG_SHT_GNU_VERNEED_ALT1	"gnu_verneed"
687d29b2c44Sab@ MSG_SHT_SUNW_VERSYM		"SHT_SUNW_versym"	# 0x6fffffff
688d29b2c44Sab@ MSG_SHT_SUNW_VERSYM_ALT1	"sunw_versym"
689d29b2c44Sab@ MSG_SHT_GNU_VERSYM		"SHT_GNU_versym"	# 0x6fffffff
690d29b2c44Sab@ MSG_SHT_GNU_VERSYM_ALT1	"gnu_versym"
691d29b2c44Sab@ MSG_SHT_SPARC_GOTDATA		"SHT_SPARC_GOTDATA"	# 0x7000000
692d29b2c44Sab@ MSG_SHT_SPARC_GOTDATA_ALT1	"sparc_gotdata"
693d29b2c44Sab@ MSG_SHT_AMD64_UNWIND		"SHT_AMD64_UNWIND"	# 0x7000000
694d29b2c44Sab@ MSG_SHT_AMD64_UNWIND_ALT1	"amd64_unwind"
695d29b2c44Sab
696d29b2c44Sab
697d29b2c44Sab# Names of dynamic section entry tags
698d29b2c44Sab
699d29b2c44Sab@ MSG_DT_NULL			"DT_NULL"		# 0
700d29b2c44Sab@ MSG_DT_NULL_ALT1		"null"
701d29b2c44Sab@ MSG_DT_NEEDED			"DT_NEEDED"		# 1
702d29b2c44Sab@ MSG_DT_NEEDED_ALT1		"needed"
703d29b2c44Sab@ MSG_DT_PLTRELSZ		"DT_PLTRELSZ"		# 2
704d29b2c44Sab@ MSG_DT_PLTRELSZ_ALT1		"pltrelsz"
705d29b2c44Sab@ MSG_DT_PLTGOT			"DT_PLTGOT"		# 3
706d29b2c44Sab@ MSG_DT_PLTGOT_ALT1		"pltgot"
707d29b2c44Sab@ MSG_DT_HASH			"DT_HASH"		# 4
708d29b2c44Sab@ MSG_DT_HASH_ALT1		"hash"
709d29b2c44Sab@ MSG_DT_STRTAB			"DT_STRTAB"		# 5
710d29b2c44Sab@ MSG_DT_STRTAB_ALT1		"strtab"
711d29b2c44Sab@ MSG_DT_SYMTAB			"DT_SYMTAB"		# 6
712d29b2c44Sab@ MSG_DT_SYMTAB_ALT1		"symtab"
713d29b2c44Sab@ MSG_DT_RELA			"DT_RELA"		# 7
714d29b2c44Sab@ MSG_DT_RELA_ALT1		"rela"
715d29b2c44Sab@ MSG_DT_RELASZ			"DT_RELASZ"		# 8
716d29b2c44Sab@ MSG_DT_RELASZ_ALT1		"relasz"
717d29b2c44Sab@ MSG_DT_RELAENT		"DT_RELAENT"		# 9
718d29b2c44Sab@ MSG_DT_RELAENT_ALT1		"relaent"
719d29b2c44Sab@ MSG_DT_STRSZ			"DT_STRSZ"		# 10
720d29b2c44Sab@ MSG_DT_STRSZ_ALT1		"strsz"
721d29b2c44Sab@ MSG_DT_SYMENT			"DT_SYMENT"		# 11
722d29b2c44Sab@ MSG_DT_SYMENT_ALT1		"syment"
723d29b2c44Sab@ MSG_DT_INIT			"DT_INIT"		# 12
724d29b2c44Sab@ MSG_DT_INIT_ALT1		"init"
725d29b2c44Sab@ MSG_DT_FINI			"DT_FINI"		# 13
726d29b2c44Sab@ MSG_DT_FINI_ALT1		"fini"
727d29b2c44Sab@ MSG_DT_SONAME			"DT_SONAME"		# 14
728d29b2c44Sab@ MSG_DT_SONAME_ALT1		"soname"
729d29b2c44Sab@ MSG_DT_RPATH			"DT_RPATH"		# 15
730d29b2c44Sab@ MSG_DT_RPATH_ALT1		"rpath"
731d29b2c44Sab@ MSG_DT_SYMBOLIC		"DT_SYMBOLIC"		# 16
732d29b2c44Sab@ MSG_DT_SYMBOLIC_ALT1		"symbolic"
733d29b2c44Sab@ MSG_DT_REL			"DT_REL"		# 17
734d29b2c44Sab@ MSG_DT_REL_ALT1		"rel"
735d29b2c44Sab@ MSG_DT_RELSZ			"DT_RELSZ"		# 18
736d29b2c44Sab@ MSG_DT_RELSZ_ALT1		"relsz"
737d29b2c44Sab@ MSG_DT_RELENT			"DT_RELENT"		# 19
738d29b2c44Sab@ MSG_DT_RELENT_ALT1		"relent"
739d29b2c44Sab@ MSG_DT_PLTREL			"DT_PLTREL"		# 20
740d29b2c44Sab@ MSG_DT_PLTREL_ALT1		"pltrel"
741d29b2c44Sab@ MSG_DT_DEBUG			"DT_DEBUG"		# 21
742d29b2c44Sab@ MSG_DT_DEBUG_ALT1		"debug"
743d29b2c44Sab@ MSG_DT_TEXTREL		"DT_TEXTREL"		# 22
744d29b2c44Sab@ MSG_DT_TEXTREL_ALT1		"textrel"
745d29b2c44Sab@ MSG_DT_JMPREL			"DT_JMPREL"		# 23
746d29b2c44Sab@ MSG_DT_JMPREL_ALT1		"jmprel"
747d29b2c44Sab@ MSG_DT_BIND_NOW		"DT_BIND_NOW"		# 24
748d29b2c44Sab@ MSG_DT_BIND_NOW_ALT1		"bind_now"
749d29b2c44Sab@ MSG_DT_INIT_ARRAY		"DT_INIT_ARRAY"		# 25
750d29b2c44Sab@ MSG_DT_INIT_ARRAY_ALT1	"init_array"
751d29b2c44Sab@ MSG_DT_FINI_ARRAY		"DT_FINI_ARRAY"		# 26
752d29b2c44Sab@ MSG_DT_FINI_ARRAY_ALT1	"fini_array"
753d29b2c44Sab@ MSG_DT_INIT_ARRAYSZ		"DT_INIT_ARRAYSZ"	# 27
754d29b2c44Sab@ MSG_DT_INIT_ARRAYSZ_ALT1	"init_arraysz"
755d29b2c44Sab@ MSG_DT_FINI_ARRAYSZ		"DT_FINI_ARRAYSZ"	# 28
756d29b2c44Sab@ MSG_DT_FINI_ARRAYSZ_ALT1	"fini_arraysz"
757d29b2c44Sab@ MSG_DT_RUNPATH		"DT_RUNPATH"		# 29
758d29b2c44Sab@ MSG_DT_RUNPATH_ALT1		"runpath"
759d29b2c44Sab@ MSG_DT_FLAGS			"DT_FLAGS"		# 30
760d29b2c44Sab@ MSG_DT_FLAGS_ALT1		"flags"
761d29b2c44Sab@ MSG_DT_PREINIT_ARRAY		"DT_PREINIT_ARRAY"	# 32
762d29b2c44Sab@ MSG_DT_PREINIT_ARRAY_ALT1	"preinit_array"
763d29b2c44Sab@ MSG_DT_PREINIT_ARRAYSZ	"DT_PREINIT_ARRAYSZ"	# 33
764d29b2c44Sab@ MSG_DT_PREINIT_ARRAYSZ_ALT1	"preinit_arraysz"
765d29b2c44Sab@ MSG_DT_SUNW_AUXILIARY		"DT_SUNW_AUXILIARY"	# 0x6000000d
766d29b2c44Sab@ MSG_DT_SUNW_AUXILIARY_ALT1	"sunw_auxiliary"
767d29b2c44Sab@ MSG_DT_SUNW_RTLDINF		"DT_SUNW_RTLDINF"	# 0x6000000e
768d29b2c44Sab@ MSG_DT_SUNW_RTLDINF_ALT1	"sunw_rtldinf"
769d29b2c44Sab@ MSG_DT_SUNW_FILTER		"DT_SUNW_FILTER"	# 0x6000000f
770d29b2c44Sab@ MSG_DT_SUNW_FILTER_ALT1	"sunw_filter"
771d29b2c44Sab@ MSG_DT_SUNW_CAP		"DT_SUNW_CAP"		# 0x60000010
772d29b2c44Sab@ MSG_DT_SUNW_CAP_ALT1		"sunw_cap"
773d29b2c44Sab@ MSG_DT_SUNW_SYMTAB		"DT_SUNW_SYMTAB"	# 0x60000011
774d29b2c44Sab@ MSG_DT_SUNW_SYMTAB_ALT1	"sunw_symtab"
775d29b2c44Sab@ MSG_DT_SUNW_SYMSZ		"DT_SUNW_SYMSZ"		# 0x60000012
776d29b2c44Sab@ MSG_DT_SUNW_SYMSZ_ALT1	"sunw_symsz"
777d29b2c44Sab@ MSG_DT_SUNW_SORTENT		"DT_SUNW_SORTENT"	# 0x60000013
778d29b2c44Sab@ MSG_DT_SUNW_SORTENT_ALT1	"sunw_sortent"
779d29b2c44Sab@ MSG_DT_SUNW_SYMSORT		"DT_SUNW_SYMSORT"	# 0x60000014
780d29b2c44Sab@ MSG_DT_SUNW_SYMSORT_ALT1	"sunw_symsort"
781d29b2c44Sab@ MSG_DT_SUNW_SYMSORTSZ		"DT_SUNW_SYMSORTSZ"	# 0x60000015
782d29b2c44Sab@ MSG_DT_SUNW_SYMSORTSZ_ALT1	"sunw_symsortsz"
783d29b2c44Sab@ MSG_DT_SUNW_TLSSORT		"DT_SUNW_TLSSORT"	# 0x60000016
784d29b2c44Sab@ MSG_DT_SUNW_TLSSORT_ALT1	"sunw_tlssort"
785d29b2c44Sab@ MSG_DT_SUNW_TLSSORTSZ		"DT_SUNW_TLSSORTSZ"	# 0x60000017
786d29b2c44Sab@ MSG_DT_SUNW_TLSSORTSZ_ALT1	"sunw_tlssortsz"
787d29b2c44Sab@ MSG_DT_SUNW_STRPAD		"DT_SUNW_STRPAD"	# 0x60000019
788d29b2c44Sab@ MSG_DT_SUNW_STRPAD_ALT1	"sunw_strpad"
789d29b2c44Sab@ MSG_DT_SPARC_REGISTER		"DT_SPARC_REGISTER"	# 0x70000001
790d29b2c44Sab@ MSG_DT_SPARC_REGISTER_ALT1	"sparc_register"
791d29b2c44Sab@ MSG_DT_DEPRECATED_SPARC_REGISTER "DT_DEPRECATED_SPARC_REGISTER" # 0x7000001
792d29b2c44Sab@ MSG_DT_DEPRECATED_SPARC_REGISTER_ALT1 "deprecated_sparc_register"
793d29b2c44Sab@ MSG_DT_CHECKSUM		"DT_CHECKSUM"		# 0x6ffffdf8
794d29b2c44Sab@ MSG_DT_CHECKSUM_ALT1		"checksum"
795d29b2c44Sab@ MSG_DT_PLTPADSZ		"DT_PLTPADSZ"		# 0x6ffffdf9
796d29b2c44Sab@ MSG_DT_PLTPADSZ_ALT1		"pltpadsz"
797d29b2c44Sab@ MSG_DT_MOVEENT		"DT_MOVEENT"		# 0x6ffffdfa
798d29b2c44Sab@ MSG_DT_MOVEENT_ALT1		"moveent"
799d29b2c44Sab@ MSG_DT_MOVESZ			"DT_MOVESZ"		# 0x6ffffdfb
800d29b2c44Sab@ MSG_DT_MOVESZ_ALT1		"movesz"
801d29b2c44Sab@ MSG_DT_FEATURE_1		"DT_FEATURE_1"		# 0x6ffffdfc
802d29b2c44Sab@ MSG_DT_FEATURE_1_ALT1		"feature_1"
803d29b2c44Sab@ MSG_DT_POSFLAG_1		"DT_POSFLAG_1"		# 0x6ffffdfd
804d29b2c44Sab@ MSG_DT_POSFLAG_1_ALT1		"posflag_1"
805d29b2c44Sab@ MSG_DT_SYMINSZ		"DT_SYMINSZ"		# 0x6ffffdfe
806d29b2c44Sab@ MSG_DT_SYMINSZ_ALT1		"syminsz"
807d29b2c44Sab@ MSG_DT_SYMINENT		"DT_SYMINENT"		# 0x6ffffdff
808d29b2c44Sab@ MSG_DT_SYMINENT_ALT1		"syminent"
809d29b2c44Sab@ MSG_DT_CONFIG			"DT_CONFIG"		# 0x6ffffefa
810d29b2c44Sab@ MSG_DT_CONFIG_ALT1		"config"
811d29b2c44Sab@ MSG_DT_DEPAUDIT		"DT_DEPAUDIT"		# 0x6ffffefb
812d29b2c44Sab@ MSG_DT_DEPAUDIT_ALT1		"depaudit"
813d29b2c44Sab@ MSG_DT_AUDIT			"DT_AUDIT"		# 0x6ffffefc
814d29b2c44Sab@ MSG_DT_AUDIT_ALT1		"audit"
815d29b2c44Sab@ MSG_DT_PLTPAD			"DT_PLTPAD"		# 0x6ffffefd
816d29b2c44Sab@ MSG_DT_PLTPAD_ALT1		"pltpad"
817d29b2c44Sab@ MSG_DT_MOVETAB		"DT_MOVETAB"		# 0x6ffffefe
818d29b2c44Sab@ MSG_DT_MOVETAB_ALT1		"movetab"
819d29b2c44Sab@ MSG_DT_SYMINFO		"DT_SYMINFO"		# 0x6ffffeff
820d29b2c44Sab@ MSG_DT_SYMINFO_ALT1		"syminfo"
821d29b2c44Sab@ MSG_DT_VERSYM			"DT_VERSYM"		# 0x6ffffff0
822d29b2c44Sab@ MSG_DT_VERSYM_ALT1		"versym"
823d29b2c44Sab@ MSG_DT_RELACOUNT		"DT_RELACOUNT"		# 0x6ffffff9
824d29b2c44Sab@ MSG_DT_RELACOUNT_ALT1		"relacount"
825d29b2c44Sab@ MSG_DT_RELCOUNT		"DT_RELCOUNT"		# 0x6ffffffa
826d29b2c44Sab@ MSG_DT_RELCOUNT_ALT1		"relcount"
827d29b2c44Sab@ MSG_DT_FLAGS_1		"DT_FLAGS_1"		# 0x6ffffffb
828d29b2c44Sab@ MSG_DT_FLAGS_1_ALT1		"flags_1"
829d29b2c44Sab@ MSG_DT_VERDEF			"DT_VERDEF"		# 0x6ffffffc
830d29b2c44Sab@ MSG_DT_VERDEF_ALT1		"verdef"
831d29b2c44Sab@ MSG_DT_VERDEFNUM		"DT_VERDEFNUM"		# 0x6ffffffd
832d29b2c44Sab@ MSG_DT_VERDEFNUM_ALT1		"verdefnum"
833d29b2c44Sab@ MSG_DT_VERNEED		"DT_VERNEED"		# 0x6ffffffe
834d29b2c44Sab@ MSG_DT_VERNEED_ALT1		"verneed"
835d29b2c44Sab@ MSG_DT_VERNEEDNUM		"DT_VERNEEDNUM"		# 0x6fffffff
836d29b2c44Sab@ MSG_DT_VERNEEDNUM_ALT1	"verneednum"
837d29b2c44Sab@ MSG_DT_AUXILIARY		"DT_AUXILIARY"		# 0x7ffffffd
838d29b2c44Sab@ MSG_DT_AUXILIARY_ALT1		"auxiliary"
839d29b2c44Sab@ MSG_DT_USED			"DT_USED"		# 0x7ffffffe
840d29b2c44Sab@ MSG_DT_USED_ALT1		"used"
841d29b2c44Sab@ MSG_DT_FILTER			"DT_FILTER"		# 0x7fffffff
842d29b2c44Sab@ MSG_DT_FILTER_ALT1		"filter"
843d29b2c44Sab
844d29b2c44Sab
845d29b2c44Sab# DT_FLAGS .dynamic entry
846d29b2c44Sab@ MSG_DF_ORIGIN			"DF_ORIGIN"		# 0x00000001
847d29b2c44Sab@ MSG_DF_ORIGIN_ALT1		"origin"
848d29b2c44Sab@ MSG_DF_SYMBOLIC		"DF_SYMBOLIC"		# 0x00000002
849d29b2c44Sab@ MSG_DF_SYMBOLIC_ALT1		"symbolic"
850d29b2c44Sab@ MSG_DF_TEXTREL		"DF_TEXTREL"		# 0x00000004
851d29b2c44Sab@ MSG_DF_TEXTREL_ALT1		"textrel"
852d29b2c44Sab@ MSG_DF_BIND_NOW		"DF_BIND_NOW"		# 0x00000008
853d29b2c44Sab@ MSG_DF_BIND_NOW_ALT1		"bind_now"
854d29b2c44Sab@ MSG_DF_STATIC_TLS		"DF_STATIC_TLS"		# 0x00000010
855d29b2c44Sab@ MSG_DF_STATIC_TLS_ALT1	"static_tls"
856d29b2c44Sab
857d29b2c44Sab
858d29b2c44Sab# DT_POSFLAG_1 .dynamic entry
859d29b2c44Sab
860d29b2c44Sab@ MSG_DF_P1_LAZYLOAD		"DF_P1_LAZYLOAD"	# 0x00000001
861d29b2c44Sab@ MSG_DF_P1_LAZYLOAD_ALT1	"lazyload"
862d29b2c44Sab@ MSG_DF_P1_GROUPPERM		"DF_P1_GROUPPERM"	# 0x00000002
863d29b2c44Sab@ MSG_DF_P1_GROUPPERM_ALT1	"groupperm"
864d29b2c44Sab
865d29b2c44Sab
866d29b2c44Sab# DT_FLAGS_1 .dynamic entry
867d29b2c44Sab
868d29b2c44Sab@ MSG_DF_1_NOW			"DF_1_NOW"		# 0x00000001
869d29b2c44Sab@ MSG_DF_1_NOW_ALT1		"now"
870d29b2c44Sab@ MSG_DF_1_GLOBAL		"DF_1_GLOBAL"		# 0x00000002
871d29b2c44Sab@ MSG_DF_1_GLOBAL_ALT1		"global"
872d29b2c44Sab@ MSG_DF_1_GROUP		"DF_1_GROUP"		# 0x00000004
873d29b2c44Sab@ MSG_DF_1_GROUP_ALT1		"group"
874d29b2c44Sab@ MSG_DF_1_NODELETE		"DF_1_NODELETE"		# 0x00000008
875d29b2c44Sab@ MSG_DF_1_NODELETE_ALT1	"nodelete"
876d29b2c44Sab@ MSG_DF_1_LOADFLTR		"DF_1_LOADFLTR"		# 0x00000010
877d29b2c44Sab@ MSG_DF_1_LOADFLTR_ALT1	"loadfltr"
878d29b2c44Sab@ MSG_DF_1_INITFIRST		"DF_1_INITFIRST"	# 0x00000020
879d29b2c44Sab@ MSG_DF_1_INITFIRST_ALT1	"initfirst"
880d29b2c44Sab@ MSG_DF_1_NOOPEN		"DF_1_NOOPEN"		# 0x00000040
881d29b2c44Sab@ MSG_DF_1_NOOPEN_ALT1		"noopen"
882d29b2c44Sab@ MSG_DF_1_ORIGIN		"DF_1_ORIGIN"		# 0x00000080
883d29b2c44Sab@ MSG_DF_1_ORIGIN_ALT1		"origin"
884d29b2c44Sab@ MSG_DF_1_DIRECT		"DF_1_DIRECT"		# 0x00000100
885d29b2c44Sab@ MSG_DF_1_DIRECT_ALT1		"direct"
886d29b2c44Sab@ MSG_DF_1_TRANS		"DF_1_TRANS"		# 0x00000200
887d29b2c44Sab@ MSG_DF_1_TRANS_ALT1		"trans"
888d29b2c44Sab@ MSG_DF_1_INTERPOSE		"DF_1_INTERPOSE"	# 0x00000400
889d29b2c44Sab@ MSG_DF_1_INTERPOSE_ALT1	"interpose"
890d29b2c44Sab@ MSG_DF_1_NODEFLIB		"DF_1_NODEFLIB"		# 0x00000800
891d29b2c44Sab@ MSG_DF_1_NODEFLIB_ALT1	"nodeflib"
892d29b2c44Sab@ MSG_DF_1_NODUMP		"DF_1_NODUMP"		# 0x00001000
893d29b2c44Sab@ MSG_DF_1_NODUMP_ALT1		"nodump"
894d29b2c44Sab@ MSG_DF_1_CONFALT		"DF_1_CONFALT"		# 0x00002000
895d29b2c44Sab@ MSG_DF_1_CONFALT_ALT1		"confalt"
896d29b2c44Sab@ MSG_DF_1_ENDFILTEE		"DF_1_ENDFILTEE"	# 0x00004000
897d29b2c44Sab@ MSG_DF_1_ENDFILTEE_ALT1	"endfiltee"
898d29b2c44Sab@ MSG_DF_1_DISPRELDNE		"DF_1_DISPRELDNE"	# 0x00008000
899d29b2c44Sab@ MSG_DF_1_DISPRELDNE_ALT1	"dispreldne"
900d29b2c44Sab@ MSG_DF_1_DISPRELPND		"DF_1_DISPRELPND"	# 0x00010000
901d29b2c44Sab@ MSG_DF_1_DISPRELPND_ALT1	"disprelpnd"
902d29b2c44Sab@ MSG_DF_1_NODIRECT		"DF_1_NODIRECT"		# 0x00020000
903d29b2c44Sab@ MSG_DF_1_NODIRECT_ALT1	"nodirect"
904d29b2c44Sab@ MSG_DF_1_IGNMULDEF		"DF_1_IGNMULDEF"	# 0x00040000
905d29b2c44Sab@ MSG_DF_1_IGNMULDEF_ALT1	"ignmuldef"
906d29b2c44Sab@ MSG_DF_1_NOKSYMS		"DF_1_NOKSYMS"		# 0x00080000
907d29b2c44Sab@ MSG_DF_1_NOKSYMS_ALT1		"noksyms"
908d29b2c44Sab@ MSG_DF_1_NOHDR		"DF_1_NOHDR"		# 0x00100000
909d29b2c44Sab@ MSG_DF_1_NOHDR_ALT1		"nohdr"
910d29b2c44Sab@ MSG_DF_1_EDITED		"DF_1_EDITED"		# 0x00200000
911d29b2c44Sab@ MSG_DF_1_EDITED_ALT1		"edited"
912d29b2c44Sab@ MSG_DF_1_NORELOC		"DF_1_NORELOC"		# 0x00400000
913d29b2c44Sab@ MSG_DF_1_NORELOC_ALT1		"noreloc"
914d29b2c44Sab@ MSG_DF_1_SYMINTPOSE		"DF_1_SYMINTPOSE"	# 0x00800000
915d29b2c44Sab@ MSG_DF_1_SYMINTPOSE_ALT1	"symintpose"
916d29b2c44Sab@ MSG_DF_1_GLOBAUDIT		"DF_1_GLOBAUDIT"	# 0x01000000
917d29b2c44Sab@ MSG_DF_1_GLOBAUDIT_ALT1	"globaudit"
918d29b2c44Sab
919d29b2c44Sab
920d29b2c44Sab# DT_FEATURE_1 .dynamic entry
921d29b2c44Sab
922d29b2c44Sab@ MSG_DTF_1_PARINIT		"DTF_1_PARINIT"		# 0x00000001
923d29b2c44Sab@ MSG_DTF_1_PARINIT_ALT1	"parinit"
924d29b2c44Sab@ MSG_DTF_1_CONFEXP		"DTF_1_CONFEXP"		# 0x00000002
925d29b2c44Sab@ MSG_DTF_1_CONFEXP_ALT1	"confexp"
926d29b2c44Sab
927d29b2c44Sab
928d29b2c44Sab# EI_* indexes into ELF header e_ident[] array
929d29b2c44Sab
930d29b2c44Sab@ MSG_EI_MAG0			"EI_MAG0"		# 0
931d29b2c44Sab@ MSG_EI_MAG0_ALT1		"mag0"
932d29b2c44Sab@ MSG_EI_MAG1			"EI_MAG1"		# 1
933d29b2c44Sab@ MSG_EI_MAG1_ALT1		"mag1"
934d29b2c44Sab@ MSG_EI_MAG2			"EI_MAG2"		# 2
935d29b2c44Sab@ MSG_EI_MAG2_ALT1		"mag2"
936d29b2c44Sab@ MSG_EI_MAG3			"EI_MAG3"		# 3
937d29b2c44Sab@ MSG_EI_MAG3_ALT1		"mag3"
938d29b2c44Sab@ MSG_EI_CLASS			"EI_CLASS"		# 4
939d29b2c44Sab@ MSG_EI_CLASS_ALT1		"class"
940d29b2c44Sab@ MSG_EI_DATA			"EI_DATA"		# 5
941d29b2c44Sab@ MSG_EI_DATA_ALT1		"data"
942d29b2c44Sab@ MSG_EI_VERSION		"EI_VERSION"		# 6
943d29b2c44Sab@ MSG_EI_VERSION_ALT1		"version"
944d29b2c44Sab@ MSG_EI_OSABI			"EI_OSABI"		# 7
945d29b2c44Sab@ MSG_EI_OSABI_ALT1		"osabi"
946d29b2c44Sab@ MSG_EI_ABIVERSION		"EI_ABIVERSION"		# 8
947d29b2c44Sab@ MSG_EI_ABIVERSION_ALT1	"abiversion"
948d29b2c44Sab
949d29b2c44Sab
950d29b2c44Sab# ET_* type constants
951d29b2c44Sab
952d29b2c44Sab@ MSG_ET_NONE			"ET_NONE"		# 0
953d29b2c44Sab@ MSG_ET_NONE_ALT1		"none"
954d29b2c44Sab@ MSG_ET_REL			"ET_REL"		# 1
955d29b2c44Sab@ MSG_ET_REL_ALT1		"rel"
956d29b2c44Sab@ MSG_ET_EXEC			"ET_EXEC"		# 2
957d29b2c44Sab@ MSG_ET_EXEC_ALT1		"exec"
958d29b2c44Sab@ MSG_ET_DYN			"ET_DYN"		# 3
959d29b2c44Sab@ MSG_ET_DYN_ALT1		"dyn"
960d29b2c44Sab@ MSG_ET_CORE			"ET_CORE"		# 4
961d29b2c44Sab@ MSG_ET_CORE_ALT1		"core"
962d29b2c44Sab
963d29b2c44Sab
964d29b2c44Sab# ELFCLASS* constants
965d29b2c44Sab
966d29b2c44Sab@ MSG_ELFCLASSNONE	"ELFCLASSNONE"			# 0
967d29b2c44Sab@ MSG_ELFCLASSNONE_ALT1	"none"
968d29b2c44Sab@ MSG_ELFCLASS32	"ELFCLASS32"			# 1
969d29b2c44Sab@ MSG_ELFCLASS32_ALT1	"32"
970d29b2c44Sab@ MSG_ELFCLASS64	"ELFCLASS64"			# 2
971d29b2c44Sab@ MSG_ELFCLASS64_ALT1	"64"
972d29b2c44Sab
973d29b2c44Sab
974d29b2c44Sab# ELFDATA* constants
975d29b2c44Sab
976d29b2c44Sab@ MSG_ELFDATANONE	"ELFDATANONE"			# 0
977d29b2c44Sab@ MSG_ELFDATANONE_ALT1	"none"
978d29b2c44Sab@ MSG_ELFDATA2LSB	"ELFDATA2LSB"			# 1
979d29b2c44Sab@ MSG_ELFDATA2LSB_ALT1	"lsb"
980d29b2c44Sab@ MSG_ELFDATA2MSB	"ELFDATA2MSB"			# 2
981d29b2c44Sab@ MSG_ELFDATA2MSB_ALT1	"msb"
982d29b2c44Sab
983d29b2c44Sab
984d29b2c44Sab# Elf header EF_* flags
985d29b2c44Sab
986d29b2c44Sab@ MSG_EF_SPARC_32PLUS		"EF_SPARC_32PLUS"	# 0x000100
987d29b2c44Sab@ MSG_EF_SPARC_32PLUS_ALT1	"sparc_32plus"
988d29b2c44Sab@ MSG_EF_SPARC_SUN_US1		"EF_SPARC_SUN_US1"	# 0x000200
989d29b2c44Sab@ MSG_EF_SPARC_SUN_US1_ALT1	"sparc_sun_us1"
990d29b2c44Sab@ MSG_EF_SPARC_HAL_R1		"EF_SPARC_HAL_R1"	# 0x000400
991d29b2c44Sab@ MSG_EF_SPARC_HAL_R1_ALT1	"sparc_hal_r1"
992d29b2c44Sab@ MSG_EF_SPARC_SUN_US3		"EF_SPARC_SUN_US3"	# x000800
993d29b2c44Sab@ MSG_EF_SPARC_SUN_US3_ALT1	"sparc_sun_us3"
994d29b2c44Sab@ MSG_EF_SPARCV9_MM		"EF_SPARCV9_MM"		# 0x3
995d29b2c44Sab@ MSG_EF_SPARCV9_MM_ALT1	"sparcv9_mm"
996d29b2c44Sab@ MSG_EF_SPARCV9_TSO		"EF_SPARCV9_TSO"	# 0x0
997d29b2c44Sab@ MSG_EF_SPARCV9_TSO_ALT1	"sparcv9_tso"
998d29b2c44Sab@ MSG_EF_SPARCV9_PSO		"EF_SPARCV9_PSO"	# 0x1
999d29b2c44Sab@ MSG_EF_SPARCV9_PSO_ALT1	"sparcv9_pso"
1000d29b2c44Sab@ MSG_EF_SPARCV9_RMO		"EF_SPARCV9_RMO"	# 0x2
1001d29b2c44Sab@ MSG_EF_SPARCV9_RMO_ALT1	"sparcv9_rmo"
1002d29b2c44Sab
1003d29b2c44Sab
1004d29b2c44Sab# Elf header EV_* versions
1005d29b2c44Sab
1006d29b2c44Sab@ MSG_EV_NONE		"EV_NONE"			# 0
1007d29b2c44Sab@ MSG_EV_NONE_ALT1	"none"
1008d29b2c44Sab@ MSG_EV_CURRENT	"EV_CURRENT"			# 1
1009d29b2c44Sab@ MSG_EV_CURRENT_ALT1	"current"
1010d29b2c44Sab
1011d29b2c44Sab
1012d29b2c44Sab# EM_* machine names. Note that there is more than one string for some
1013d29b2c44Sab# of these. The main name for each one is the same as it's constant
1014d29b2c44Sab# name in sys/elf.h, and start with the EM_ prefix. The alternative names
1015d29b2c44Sab# are the alternative names provided by libconv.
1016d29b2c44Sab
1017d29b2c44Sab@ MSG_EM_NONE			"EM_NONE"		# 0
1018d29b2c44Sab@ MSG_EM_NONE_ALT1		"none"
1019d29b2c44Sab@ MSG_EM_M32			"EM_M32"		# 1
1020d29b2c44Sab@ MSG_EM_M32_ALT1		"m32"
1021d29b2c44Sab@ MSG_EM_M32_ALT2		"WE32100"
1022d29b2c44Sab@ MSG_EM_SPARC			"EM_SPARC"		# 2
1023d29b2c44Sab@ MSG_EM_SPARC_ALT1		"sparc"
1024d29b2c44Sab@ MSG_EM_386			"EM_386"		# 3
1025d29b2c44Sab@ MSG_EM_386_ALT1		"386"
1026d29b2c44Sab@ MSG_EM_386_ALT2		"80386"
1027d29b2c44Sab@ MSG_EM_68K			"EM_68K"		# 4
1028d29b2c44Sab@ MSG_EM_68K_ALT1		"68k"
1029d29b2c44Sab@ MSG_EM_68K_ALT2		"68000"
1030d29b2c44Sab@ MSG_EM_88K			"EM_88K"		# 5
1031d29b2c44Sab@ MSG_EM_88K_ALT1		"88k"
1032d29b2c44Sab@ MSG_EM_88K_ALT2		"88000"
1033d29b2c44Sab@ MSG_EM_486			"EM_486"		# 6
1034d29b2c44Sab@ MSG_EM_486_ALT1		"486"
1035d29b2c44Sab@ MSG_EM_486_ALT2		"80486"
1036d29b2c44Sab@ MSG_EM_860			"EM_860"		# 7
1037d29b2c44Sab@ MSG_EM_860_ALT1		"860"
1038d29b2c44Sab@ MSG_EM_860_ALT2		"i860"
1039d29b2c44Sab@ MSG_EM_MIPS			"EM_MIPS"		# 8
1040d29b2c44Sab@ MSG_EM_MIPS_ALT1		"mips"
1041d29b2c44Sab@ MSG_EM_MIPS_ALT2		"rs3000_be"
1042d29b2c44Sab@ MSG_EM_S370			"EM_S370"		# 9
1043d29b2c44Sab@ MSG_EM_S370_ALT1		"s370"
1044d29b2c44Sab@ MSG_EM_MIPS_RS3_LE		"EM_MIPS_RS3_LE"	# 10
1045d29b2c44Sab@ MSG_EM_MIPS_RS3_LE_ALT1	"mips_rs3_le"
1046d29b2c44Sab@ MSG_EM_MIPS_RS3_LE_ALT2	"RS3000_LE"
1047d29b2c44Sab@ MSG_EM_RS6000			"EM_RS6000"		# 11
1048d29b2c44Sab@ MSG_EM_RS6000_ALT1		"rs6000"
1049d29b2c44Sab@ MSG_EM_PA_RISC		"EM_PA_RISC"		# 15
1050d29b2c44Sab@ MSG_EM_PA_RISC_ALT1		"pa_risc"
1051d29b2c44Sab@ MSG_EM_NCUBE			"EM_nCUBE"		# 16
1052d29b2c44Sab@ MSG_EM_NCUBE_ALT1		"ncube"
1053d29b2c44Sab@ MSG_EM_VPP500			"EM_VPP500"		# 17
1054d29b2c44Sab@ MSG_EM_VPP500_ALT1		"vpp500"
1055d29b2c44Sab@ MSG_EM_SPARC32PLUS		"EM_SPARC32PLUS"	# 18
1056d29b2c44Sab@ MSG_EM_SPARC32PLUS_ALT1	"sparc32plus"
1057d29b2c44Sab@ MSG_EM_960			"EM_960"		# 19
1058d29b2c44Sab@ MSG_EM_960_ALT1		"960"
1059d29b2c44Sab@ MSG_EM_PPC			"EM_PPC"		# 20
1060d29b2c44Sab@ MSG_EM_PPC_ALT1		"ppc"
1061d29b2c44Sab@ MSG_EM_PPC_ALT2		"PowerPC"
1062d29b2c44Sab@ MSG_EM_PPC64			"EM_PPC64"		#21
1063d29b2c44Sab@ MSG_EM_PPC64_ALT1		"ppc64"
1064d29b2c44Sab@ MSG_EM_PPC64_ALT2		"PowerPC64"
1065d29b2c44Sab@ MSG_EM_S390			"EM_S390"		#22
1066d29b2c44Sab@ MSG_EM_S390_ALT1		"s390"
1067d29b2c44Sab@ MSG_EM_V800			"EM_V800"		#36
1068d29b2c44Sab@ MSG_EM_V800_ALT1		"v800"
1069d29b2c44Sab@ MSG_EM_FR20			"EM_FR20"		#37
1070d29b2c44Sab@ MSG_EM_FR20_ALT1		"fr20"
1071d29b2c44Sab@ MSG_EM_RH32			"EM_RH32"		#38
1072d29b2c44Sab@ MSG_EM_RH32_ALT1		"rh32"
1073d29b2c44Sab@ MSG_EM_RCE			"EM_RCE"		#39
1074d29b2c44Sab@ MSG_EM_RCE_ALT1		"rce"
1075d29b2c44Sab@ MSG_EM_ARM			"EM_ARM"		#40
1076d29b2c44Sab@ MSG_EM_ARM_ALT1		"arm"
1077d29b2c44Sab@ MSG_EM_ALPHA			"EM_ALPHA"		#41
1078d29b2c44Sab@ MSG_EM_ALPHA_ALT1		"alpha"
1079d29b2c44Sab@ MSG_EM_SH			"EM_SH"			#42
1080d29b2c44Sab@ MSG_EM_SH_ALT1		"sh"
1081d29b2c44Sab@ MSG_EM_SPARCV9		"EM_SPARCV9"		#43
1082d29b2c44Sab@ MSG_EM_SPARCV9_ALT1		"sparcv9"
1083d29b2c44Sab@ MSG_EM_TRICORE		"EM_TRICORE"		#44
1084d29b2c44Sab@ MSG_EM_TRICORE_ALT1		"tricore"
1085d29b2c44Sab@ MSG_EM_ARC			"EM_ARC"		#45
1086d29b2c44Sab@ MSG_EM_ARC_ALT1		"arc"
1087d29b2c44Sab@ MSG_EM_H8_300			"EM_H8_300"		#46
1088d29b2c44Sab@ MSG_EM_H8_300_ALT1		"h8_300"
1089d29b2c44Sab@ MSG_EM_H8_300H		"EM_H8_300H"		#47
1090d29b2c44Sab@ MSG_EM_H8_300H_ALT1		"h8_300h"
1091d29b2c44Sab@ MSG_EM_H8S			"EM_H8S"		#48
1092d29b2c44Sab@ MSG_EM_H8S_ALT1		"h8s"
1093d29b2c44Sab@ MSG_EM_H8_500			"EM_H8_500"		#49
1094d29b2c44Sab@ MSG_EM_H8_500_ALT1		"h8_500"
1095d29b2c44Sab@ MSG_EM_IA_64			"EM_IA_64"		#50
1096d29b2c44Sab@ MSG_EM_IA_64_ALT1		"ia_64"
1097d29b2c44Sab@ MSG_EM_MIPS_X			"EM_MIPS_X"		#51
1098d29b2c44Sab@ MSG_EM_MIPS_X_ALT1		"mips_x"
1099d29b2c44Sab@ MSG_EM_COLDFIRE		"EM_COLDFIRE"		#52
1100d29b2c44Sab@ MSG_EM_COLDFIRE_ALT1		"coldfire"
1101d29b2c44Sab@ MSG_EM_68HC12			"EM_68HC12"		#53
1102d29b2c44Sab@ MSG_EM_68HC12_ALT1		"68hc12"
1103d29b2c44Sab@ MSG_EM_MMA			"EM_MMA"		#54
1104d29b2c44Sab@ MSG_EM_MMA_ALT1		"mma"
1105d29b2c44Sab@ MSG_EM_PCP			"EM_PCP"		#55
1106d29b2c44Sab@ MSG_EM_PCP_ALT1		"pcp"
1107d29b2c44Sab@ MSG_EM_NCPU			"EM_NCPU"		#56
1108d29b2c44Sab@ MSG_EM_NCPU_ALT1		"ncpu"
1109d29b2c44Sab@ MSG_EM_NDR1			"EM_NDR1"		#57
1110d29b2c44Sab@ MSG_EM_NDR1_ALT1		"ndr1"
1111d29b2c44Sab@ MSG_EM_STARCORE		"EM_STARCORE"		#58
1112d29b2c44Sab@ MSG_EM_STARCORE_ALT1		"starcore"
1113d29b2c44Sab@ MSG_EM_ME16			"EM_ME16"		#59
1114d29b2c44Sab@ MSG_EM_ME16_ALT1		"me16"
1115d29b2c44Sab@ MSG_EM_ST100			"EM_ST100"		#60
1116d29b2c44Sab@ MSG_EM_ST100_ALT1		"st100"
1117d29b2c44Sab@ MSG_EM_TINYJ			"EM_TINYJ"		#61
1118d29b2c44Sab@ MSG_EM_TINYJ_ALT1		"tinyj"
1119d29b2c44Sab@ MSG_EM_AMD64			"EM_AMD64"		#62
1120d29b2c44Sab@ MSG_EM_AMD64_ALT1		"amd64"
1121d29b2c44Sab@ MSG_EM_PDSP			"EM_PDSP"		#63
1122d29b2c44Sab@ MSG_EM_PDSP_ALT1		"pdsp"
1123d29b2c44Sab@ MSG_EM_FX66			"EM_FX66"		#66
1124d29b2c44Sab@ MSG_EM_FX66_ALT1		"fx66"
1125d29b2c44Sab@ MSG_EM_ST9PLUS		"EM_ST9PLUS"		#67
1126d29b2c44Sab@ MSG_EM_ST9PLUS_ALT1		"st9plus"
1127d29b2c44Sab@ MSG_EM_ST7			"EM_ST7"		#68
1128d29b2c44Sab@ MSG_EM_ST7_ALT1		"st7"
1129d29b2c44Sab@ MSG_EM_68HC16			"EM_68HC16"		#69
1130d29b2c44Sab@ MSG_EM_68HC16_ALT1		"68hc16"
1131d29b2c44Sab@ MSG_EM_68HC11			"EM_68HC11"		#70
1132d29b2c44Sab@ MSG_EM_68HC11_ALT1		"68hc11"
1133d29b2c44Sab@ MSG_EM_68HC08			"EM_68HC08"		#71
1134d29b2c44Sab@ MSG_EM_68HC08_ALT1		"68hc08"
1135d29b2c44Sab@ MSG_EM_68HC05			"EM_68HC05"		#72
1136d29b2c44Sab@ MSG_EM_68HC05_ALT1		"68hc05"
1137d29b2c44Sab@ MSG_EM_SVX			"EM_SVX"		#73
1138d29b2c44Sab@ MSG_EM_SVX_ALT1		"svx"
1139d29b2c44Sab@ MSG_EM_ST19			"EM_ST19"		#74
1140d29b2c44Sab@ MSG_EM_ST19_ALT1		"st19"
1141d29b2c44Sab@ MSG_EM_VAX			"EM_VAX"		#75
1142d29b2c44Sab@ MSG_EM_VAX_ALT1		"vax"
1143d29b2c44Sab@ MSG_EM_CRIS			"EM_CRIS"		#76
1144d29b2c44Sab@ MSG_EM_CRIS_ALT1		"cris"
1145d29b2c44Sab@ MSG_EM_JAVELIN		"EM_JAVELIN"		#77
1146d29b2c44Sab@ MSG_EM_JAVELIN_ALT1		"javelin"
1147d29b2c44Sab@ MSG_EM_FIREPATH		"EM_FIREPATH"		#78
1148d29b2c44Sab@ MSG_EM_FIREPATH_ALT1		"firepath"
1149d29b2c44Sab@ MSG_EM_ZSP			"EM_ZSP"		#79
1150d29b2c44Sab@ MSG_EM_ZSP_ALT1		"zsp"
1151d29b2c44Sab@ MSG_EM_MMIX			"EM_MMIX"		#80
1152d29b2c44Sab@ MSG_EM_MMIX_ALT1		"mmix"
1153d29b2c44Sab@ MSG_EM_HUANY			"EM_HUANY"		#81
1154d29b2c44Sab@ MSG_EM_HUANY_ALT1		"huany"
1155d29b2c44Sab@ MSG_EM_PRISM			"EM_PRISM"		#82
1156d29b2c44Sab@ MSG_EM_PRISM_ALT1		"prism"
1157d29b2c44Sab@ MSG_EM_AVR			"EM_AVR"		#83
1158d29b2c44Sab@ MSG_EM_AVR_ALT1		"avr"
1159d29b2c44Sab@ MSG_EM_FR30			"EM_FR30"		#84
1160d29b2c44Sab@ MSG_EM_FR30_ALT1		"fr30"
1161d29b2c44Sab@ MSG_EM_D10V			"EM_D10V"		#85
1162d29b2c44Sab@ MSG_EM_D10V_ALT1		"d10v"
1163d29b2c44Sab@ MSG_EM_D30V			"EM_D30V"		#86
1164d29b2c44Sab@ MSG_EM_D30V_ALT1		"d30v"
1165d29b2c44Sab@ MSG_EM_V850			"EM_V850"		#87
1166d29b2c44Sab@ MSG_EM_V850_ALT1		"v850"
1167d29b2c44Sab@ MSG_EM_M32R			"EM_M32R"		#88
1168d29b2c44Sab@ MSG_EM_M32R_ALT1		"m32r"
1169d29b2c44Sab@ MSG_EM_MN10300		"EM_MN10300"		#89
1170d29b2c44Sab@ MSG_EM_MN10300_ALT1		"mn10300"
1171d29b2c44Sab@ MSG_EM_MN10200		"EM_MN10200"		#90
1172d29b2c44Sab@ MSG_EM_MN10200_ALT1		"mn10200"
1173d29b2c44Sab@ MSG_EM_PJ			"EM_PJ"			#91
1174d29b2c44Sab@ MSG_EM_PJ_ALT1		"pj"
1175d29b2c44Sab@ MSG_EM_OPENRISC		"EM_OPENRISC"		#92
1176d29b2c44Sab@ MSG_EM_OPENRISC_ALT1		"openrisc"
1177d29b2c44Sab@ MSG_EM_ARC_A5			"EM_ARC_A5"		#93
1178d29b2c44Sab@ MSG_EM_ARC_A5_ALT1		"arc_a5"
1179d29b2c44Sab@ MSG_EM_XTENSA			"EM_XTENSA"		#94
1180d29b2c44Sab@ MSG_EM_XTENSA_ALT1		"xtensa"
1181d29b2c44Sab
1182d29b2c44Sab
1183d29b2c44Sab
1184d29b2c44Sab# ELFOSABI names
1185d29b2c44Sab
1186d29b2c44Sab@ MSG_ELFOSABI_NONE		"ELFOSABI_NONE"
1187d29b2c44Sab@ MSG_ELFOSABI_NONE_ALT1	"none"
1188d29b2c44Sab@ MSG_ELFOSABI_SYSV		"ELFOSABI_SYSV"
1189d29b2c44Sab@ MSG_ELFOSABI_SYSV_ALT1	"sysv"
1190d29b2c44Sab@ MSG_ELFOSABI_HPUX		"ELFOSABI_HPUX"
1191d29b2c44Sab@ MSG_ELFOSABI_HPUX_ALT1	"hpux"
1192d29b2c44Sab@ MSG_ELFOSABI_NETBSD		"ELFOSABI_NETBSD"
1193d29b2c44Sab@ MSG_ELFOSABI_NETBSD_ALT1	"netbsd"
1194d29b2c44Sab@ MSG_ELFOSABI_LINUX		"ELFOSABI_LINUX"
1195d29b2c44Sab@ MSG_ELFOSABI_LINUX_ALT1	"linux"
1196d29b2c44Sab@ MSG_ELFOSABI_SOLARIS		"ELFOSABI_SOLARIS"
1197d29b2c44Sab@ MSG_ELFOSABI_SOLARIS_ALT1	"solaris"
1198d29b2c44Sab@ MSG_ELFOSABI_AIX		"ELFOSABI_AIX"
1199d29b2c44Sab@ MSG_ELFOSABI_AIX_ALT1		"aix"
1200d29b2c44Sab@ MSG_ELFOSABI_IRIX		"ELFOSABI_IRIX"
1201d29b2c44Sab@ MSG_ELFOSABI_IRIX_ALT1	"irix"
1202d29b2c44Sab@ MSG_ELFOSABI_FREEBSD		"ELFOSABI_FREEBSD"
1203d29b2c44Sab@ MSG_ELFOSABI_FREEBSD_ALT1	"freebsd"
1204d29b2c44Sab@ MSG_ELFOSABI_TRU64		"ELFOSABI_TRU64"
1205d29b2c44Sab@ MSG_ELFOSABI_TRU64_ALT1	"tru64"
1206d29b2c44Sab@ MSG_ELFOSABI_MODESTO		"ELFOSABI_MODESTO"
1207d29b2c44Sab@ MSG_ELFOSABI_MODESTO_ALT1	"modesto"
1208d29b2c44Sab@ MSG_ELFOSABI_OPENBSD		"ELFOSABI_OPENBSD"
1209d29b2c44Sab@ MSG_ELFOSABI_OPENBSD_ALT1	"openbsd"
1210d29b2c44Sab@ MSG_ELFOSABI_OPENVMS		"ELFOSABI_OPENVMS"
1211d29b2c44Sab@ MSG_ELFOSABI_OPENVMS_ALT1	"openvms"
1212d29b2c44Sab@ MSG_ELFOSABI_NSK		"ELFOSABI_NSK"
1213d29b2c44Sab@ MSG_ELFOSABI_NSK_ALT1		"nsk"
1214d29b2c44Sab@ MSG_ELFOSABI_AROS		"ELFOSABI_AROS"
1215d29b2c44Sab@ MSG_ELFOSABI_AROS_ALT1	"aros"
1216d29b2c44Sab@ MSG_ELFOSABI_ARM		"ELFOSABI_ARM"
1217d29b2c44Sab@ MSG_ELFOSABI_ARM_ALT1		"arm"
1218d29b2c44Sab@ MSG_ELFOSABI_STANDALONE	"ELFOSABI_STANDALONE"
1219d29b2c44Sab@ MSG_ELFOSABI_STANDALONE_ALT1	"standalone"
1220d29b2c44Sab
1221d29b2c44Sab
1222d29b2c44Sab# Program header PT_ segment types
1223d29b2c44Sab
1224d29b2c44Sab@ MSG_PT_NULL			"PT_NULL"		# 0
1225d29b2c44Sab@ MSG_PT_NULL_ALT1		"null"
1226d29b2c44Sab@ MSG_PT_LOAD			"PT_LOAD"		# 1
1227d29b2c44Sab@ MSG_PT_LOAD_ALT1		"load"
1228d29b2c44Sab@ MSG_PT_DYNAMIC		"PT_DYNAMIC"		# 2
1229d29b2c44Sab@ MSG_PT_DYNAMIC_ALT1		"dynamic"
1230d29b2c44Sab@ MSG_PT_INTERP			"PT_INTERP"		# 3
1231d29b2c44Sab@ MSG_PT_INTERP_ALT1		"interp"
1232d29b2c44Sab@ MSG_PT_NOTE			"PT_NOTE"		# 4
1233d29b2c44Sab@ MSG_PT_NOTE_ALT1		"note"
1234d29b2c44Sab@ MSG_PT_SHLIB			"PT_SHLIB"		# 5
1235d29b2c44Sab@ MSG_PT_SHLIB_ALT1		"shlib"
1236d29b2c44Sab@ MSG_PT_PHDR			"PT_PHDR"		# 6
1237d29b2c44Sab@ MSG_PT_PHDR_ALT1		"phdr"
1238d29b2c44Sab@ MSG_PT_TLS			"PT_TLS"		# 7
1239d29b2c44Sab@ MSG_PT_TLS_ALT1		"tls"
1240d29b2c44Sab@ MSG_PT_SUNW_UNWIND		"PT_SUNW_UNWIND"	# 0x6464e550
1241d29b2c44Sab@ MSG_PT_SUNW_UNWIND_ALT1	"sunw_unwind"
1242d29b2c44Sab@ MSG_PT_SUNWBSS		"PT_SUNWBSS"		# 0x6ffffffa
1243d29b2c44Sab@ MSG_PT_SUNWBSS_ALT1		"sunwbss"
1244d29b2c44Sab@ MSG_PT_SUNWSTACK		"PT_SUNWSTACK"		# 0x6ffffffb
1245d29b2c44Sab@ MSG_PT_SUNWSTACK_ALT1		"sunwstack"
1246d29b2c44Sab@ MSG_PT_SUNWDTRACE		"PT_SUNWDTRACE"		# 0x6ffffffc
1247d29b2c44Sab@ MSG_PT_SUNWDTRACE_ALT1	"sunwdtrace"
1248d29b2c44Sab@ MSG_PT_SUNWCAP		"PT_SUNWCAP"		# 0x6ffffffd
1249d29b2c44Sab@ MSG_PT_SUNWCAP_ALT1		"sunwcap"
1250d29b2c44Sab
1251d29b2c44Sab
1252d29b2c44Sab# Program header PF_ segment flags
1253d29b2c44Sab
1254d29b2c44Sab@ MSG_PF_X			"PF_X"			# 0x1
1255d29b2c44Sab@ MSG_PF_X_ALT1			"x"
1256d29b2c44Sab@ MSG_PF_W			"PF_W"			# 0x2
1257d29b2c44Sab@ MSG_PF_W_ALT1			"w"
1258d29b2c44Sab@ MSG_PF_R			"PF_R"			# 0x4
1259d29b2c44Sab@ MSG_PF_R_ALT1			"r"
1260d29b2c44Sab
1261d29b2c44Sab
1262d29b2c44Sab# Section header SHF_* flags
1263d29b2c44Sab
1264d29b2c44Sab@ MSG_SHF_WRITE			"SHF_WRITE"		# 0x01
1265d29b2c44Sab@ MSG_SHF_WRITE_ALT1		"write"
1266d29b2c44Sab@ MSG_SHF_ALLOC			"SHF_ALLOC"		# 0x02
1267d29b2c44Sab@ MSG_SHF_ALLOC_ALT1		"alloc"
1268d29b2c44Sab@ MSG_SHF_EXECINSTR		"SHF_EXECINSTR"		# 0x04
1269d29b2c44Sab@ MSG_SHF_EXECINSTR_ALT1	"execinstr"
1270d29b2c44Sab@ MSG_SHF_MERGE			"SHF_MERGE"		# 0x10
1271d29b2c44Sab@ MSG_SHF_MERGE_ALT1		"merge"
1272d29b2c44Sab@ MSG_SHF_STRINGS		"SHF_STRINGS"		# 0x20
1273d29b2c44Sab@ MSG_SHF_STRINGS_ALT1		"strings"
1274d29b2c44Sab@ MSG_SHF_INFO_LINK		"SHF_INFO_LINK"		# 0x40
1275d29b2c44Sab@ MSG_SHF_INFO_LINK_ALT1	"info_link"
1276d29b2c44Sab@ MSG_SHF_LINK_ORDER		"SHF_LINK_ORDER"	# 0x80
1277d29b2c44Sab@ MSG_SHF_LINK_ORDER_ALT1	"link_order"
1278d29b2c44Sab@ MSG_SHF_OS_NONCONFORMING	"SHF_OS_NONCONFORMING"	# 0x100
1279d29b2c44Sab@ MSG_SHF_OS_NONCONFORMING_ALT1	"os_nonconforming"
1280d29b2c44Sab@ MSG_SHF_GROUP			"SHF_GROUP"		# 0x200
1281d29b2c44Sab@ MSG_SHF_GROUP_ALT1		"group"
1282d29b2c44Sab@ MSG_SHF_TLS			"SHF_TLS"		# 0x400
1283d29b2c44Sab@ MSG_SHF_TLS_ALT1		"tls"
1284d29b2c44Sab
1285d29b2c44Sab
1286d29b2c44Sab# Names of st_info ELF_ST_BIND symbol binding constants
1287d29b2c44Sab
1288d29b2c44Sab@ MSG_STB_LOCAL			"STB_LOCAL"		# 0
1289d29b2c44Sab@ MSG_STB_LOCAL_ALT1		"local"
1290d29b2c44Sab@ MSG_STB_GLOBAL		"STB_GLOBAL"		# 1
1291d29b2c44Sab@ MSG_STB_GLOBAL_ALT1		"global"
1292d29b2c44Sab@ MSG_STB_WEAK			"STB_WEAK"		# 2
1293d29b2c44Sab@ MSG_STB_WEAK_ALT1		"weak"
1294d29b2c44Sab
1295d29b2c44Sab
1296d29b2c44Sab# Names of st_info ELF_ST_TYPE symbol type constants
1297d29b2c44Sab
1298d29b2c44Sab@ MSG_STT_NOTYPE		"STT_NOTYPE"		# 0
1299d29b2c44Sab@ MSG_STT_NOTYPE_ALT1		"notype"
1300d29b2c44Sab@ MSG_STT_OBJECT		"STT_OBJECT"		# 1
1301d29b2c44Sab@ MSG_STT_OBJECT_ALT1		"object"
1302d29b2c44Sab@ MSG_STT_FUNC			"STT_FUNC"		# 2
1303d29b2c44Sab@ MSG_STT_FUNC_ALT1		"func"
1304d29b2c44Sab@ MSG_STT_SECTION		"STT_SECTION"		# 3
1305d29b2c44Sab@ MSG_STT_SECTION_ALT1		"section"
1306d29b2c44Sab@ MSG_STT_FILE			"STT_FILE"		# 4
1307d29b2c44Sab@ MSG_STT_FILE_ALT1		"file"
1308d29b2c44Sab@ MSG_STT_COMMON		"STT_COMMON"		# 5
1309d29b2c44Sab@ MSG_STT_COMMON_ALT1		"common"
1310d29b2c44Sab@ MSG_STT_TLS			"STT_TLS"		# 6
1311d29b2c44Sab@ MSG_STT_TLS_ALT1		"tls"
1312d29b2c44Sab
1313d29b2c44Sab
1314d29b2c44Sab# Names of st_other ELF_ST_VISIBILITY symbol visibility constants
1315d29b2c44Sab
1316d29b2c44Sab@ MSG_STV_DEFAULT		"STV_DEFAULT"		# 0
1317d29b2c44Sab@ MSG_STV_DEFAULT_ALT1		"default"
1318d29b2c44Sab@ MSG_STV_INTERNAL		"STV_INTERNAL"		# 1
1319d29b2c44Sab@ MSG_STV_INTERNAL_ALT1		"internal"
1320d29b2c44Sab@ MSG_STV_HIDDEN		"STV_HIDDEN"		# 2
1321d29b2c44Sab@ MSG_STV_HIDDEN_ALT1		"hidden"
1322d29b2c44Sab@ MSG_STV_PROTECTED		"STV_PROTECTED"		# 3
1323d29b2c44Sab@ MSG_STV_PROTECTED_ALT1	"protected"
132460758829Srie@ MSG_STV_EXPORTED		"STV_EXPORTED"		# 4
132560758829Srie@ MSG_STV_EXPORTED_ALT1		"exported"
132660758829Srie@ MSG_STV_SINGLETON		"STV_SINGLETON"		# 5
132760758829Srie@ MSG_STV_SINGLETON_ALT1	"singleton"
132860758829Srie@ MSG_STV_ELIMINATE		"STV_ELIMINATE"		# 6
132960758829Srie@ MSG_STV_ELIMINATE_ALT1	"eliminate"
1330d29b2c44Sab
1331d29b2c44Sab
1332d29b2c44Sab# Names of si_boundto SYMINFO_BT_ symbol type constants
1333d29b2c44Sab
1334d29b2c44Sab@ MSG_SYMINFO_BT_SELF		"SYMINFO_BT_SELF"	# 0xffff
1335d29b2c44Sab@ MSG_SYMINFO_BT_SELF_ALT1	"self"
1336d29b2c44Sab@ MSG_SYMINFO_BT_PARENT		"SYMINFO_BT_PARENT"	# 0xfffe
1337d29b2c44Sab@ MSG_SYMINFO_BT_PARENT_ALT1	"parent"
1338d29b2c44Sab@ MSG_SYMINFO_BT_NONE		"SYMINFO_BT_NONE"	# 0xfffd
1339d29b2c44Sab@ MSG_SYMINFO_BT_NONE_ALT1	"none"
1340d29b2c44Sab
1341d29b2c44Sab
1342d29b2c44Sab# Names of si_flags SYMINFO_FLG_ symbol type constants
1343d29b2c44Sab
1344d29b2c44Sab@ MSG_SYMINFO_FLG_DIRECT		"SYMINFO_FLG_DIRECT"		# 0x01
1345d29b2c44Sab@ MSG_SYMINFO_FLG_DIRECT_ALT1		"direct"
1346d29b2c44Sab@ MSG_SYMINFO_FLG_COPY			"SYMINFO_FLG_COPY"		# 0x04
1347d29b2c44Sab@ MSG_SYMINFO_FLG_COPY_ALT1		"copy"
1348d29b2c44Sab@ MSG_SYMINFO_FLG_LAZYLOAD		"SYMINFO_FLG_LAZYLOAD"		# 0x08
1349d29b2c44Sab@ MSG_SYMINFO_FLG_LAZYLOAD_ALT1		"lazyload"
1350d29b2c44Sab@ MSG_SYMINFO_FLG_DIRECTBIND		"SYMINFO_FLG_DIRECTBIND"	# 0x10
1351d29b2c44Sab@ MSG_SYMINFO_FLG_DIRECTBIND_ALT1	"directbind"
1352d29b2c44Sab@ MSG_SYMINFO_FLG_NOEXTDIRECT		"SYMINFO_FLG_NOEXTDIRECT"	# 0x20
1353d29b2c44Sab@ MSG_SYMINFO_FLG_NOEXTDIRECT_ALT1	"noextdirect"
1354d29b2c44Sab
1355d29b2c44Sab
1356d29b2c44Sab# Names of capabilities section CA_ tag
1357d29b2c44Sab
1358d29b2c44Sab@ MSG_CA_SUNW_NULL		"CA_SUNW_NULL"		# 0
1359d29b2c44Sab@ MSG_CA_SUNW_NULL_ALT1		"null"
1360d29b2c44Sab@ MSG_CA_SUNW_HW_1		"CA_SUNW_HW_1"		# 1
1361d29b2c44Sab@ MSG_CA_SUNW_HW_1_ALT1		"hw_1"
1362d29b2c44Sab@ MSG_CA_SUNW_SF_1		"CA_SUNW_SF_1"		# 2
1363d29b2c44Sab@ MSG_CA_SUNW_SF_1_ALT1		"sf_1"
1364d29b2c44Sab
1365d29b2c44Sab# AV_386 flags used for CA_SUNW_HW_1 capabilities
1366d29b2c44Sab
1367d29b2c44Sab@ MSG_AV_386_FPU		"AV_386_FPU"		# 0x00001
1368d29b2c44Sab@ MSG_AV_386_FPU_ALT1		"fpu"
1369d29b2c44Sab@ MSG_AV_386_TSC		"AV_386_TSC"		# 0x00002
1370d29b2c44Sab@ MSG_AV_386_TSC_ALT1		"tsc"
1371d29b2c44Sab@ MSG_AV_386_CX8		"AV_386_CX8"		# 0x00004
1372d29b2c44Sab@ MSG_AV_386_CX8_ALT1		"cx8"
1373d29b2c44Sab@ MSG_AV_386_SEP		"AV_386_SEP"		# 0x00008
1374d29b2c44Sab@ MSG_AV_386_SEP_ALT1		"sep"
1375d29b2c44Sab@ MSG_AV_386_AMD_SYSC		"AV_386_AMD_SYSC"	# 0x00010
1376d29b2c44Sab@ MSG_AV_386_AMD_SYSC_ALT1	"amd_sysc"
1377d29b2c44Sab@ MSG_AV_386_CMOV		"AV_386_CMOV"		# 0x00020
1378d29b2c44Sab@ MSG_AV_386_CMOV_ALT1		"cmov"
1379d29b2c44Sab@ MSG_AV_386_MMX		"AV_386_MMX"		# 0x00040
1380d29b2c44Sab@ MSG_AV_386_MMX_ALT1		"mmx"
1381d29b2c44Sab@ MSG_AV_386_AMD_MMX		"AV_386_AMD_MMX"	# 0x00080
1382d29b2c44Sab@ MSG_AV_386_AMD_MMX_ALT1	"amd_mmx"
1383d29b2c44Sab@ MSG_AV_386_AMD_3DNOW		"AV_386_AMD_3DNow"	# 0x00100
1384d29b2c44Sab@ MSG_AV_386_AMD_3DNOW_ALT1	"amd_3dnow"
1385d29b2c44Sab@ MSG_AV_386_AMD_3DNOWX		"AV_386_AMD_3DNowx"	# 0x00200
1386d29b2c44Sab@ MSG_AV_386_AMD_3DNOWX_ALT1	"amd_3dnowx"
1387d29b2c44Sab@ MSG_AV_386_FXSR		"AV_386_FXSR"		# 0x00400
1388d29b2c44Sab@ MSG_AV_386_FXSR_ALT1		"fxsr"
1389d29b2c44Sab@ MSG_AV_386_SSE		"AV_386_SSE"		# 0x00800
1390d29b2c44Sab@ MSG_AV_386_SSE_ALT1		"sse"
1391d29b2c44Sab@ MSG_AV_386_SSE2		"AV_386_SSE2"		# 0x01000
1392d29b2c44Sab@ MSG_AV_386_SSE2_ALT1		"sse2"
1393d29b2c44Sab@ MSG_AV_386_PAUSE		"AV_386_PAUSE"		# 0x02000
1394d29b2c44Sab@ MSG_AV_386_PAUSE_ALT1		"pause"
1395d29b2c44Sab@ MSG_AV_386_SSE3		"AV_386_SSE3"		# 0x04000
1396d29b2c44Sab@ MSG_AV_386_SSE3_ALT1		"sse3"
1397d29b2c44Sab@ MSG_AV_386_MON		"AV_386_MON"		# 0x08000
1398d29b2c44Sab@ MSG_AV_386_MON_ALT1		"mon"
1399d29b2c44Sab@ MSG_AV_386_CX16		"AV_386_CX16"		# 0x10000
1400d29b2c44Sab@ MSG_AV_386_CX16_ALT1		"cx16"
1401d29b2c44Sab@ MSG_AV_386_AHF		"AV_386_AHF"		# 0x20000
1402d29b2c44Sab@ MSG_AV_386_AHF_ALT1		"ahf"
1403d29b2c44Sab@ MSG_AV_386_TSCP		"AV_386_TSCP"		# 0x40000
1404d29b2c44Sab@ MSG_AV_386_TSCP_ALT1		"tscp"
1405d29b2c44Sab@ MSG_AV_386_AMD_SSE4A		"AV_386_AMD_SSE4A"	# 0x80000
1406d29b2c44Sab@ MSG_AV_386_AMD_SSE4A_ALT1	"amd_sse4a"
1407d29b2c44Sab@ MSG_AV_386_POPCNT		"AV_386_POPCNT"		# 0x100000
1408d29b2c44Sab@ MSG_AV_386_POPCNT_ALT1	"popcnt"
1409d29b2c44Sab@ MSG_AV_386_AMD_LZCNT		"AV_386_AMD_LZCNT"	# 0x200000
1410d29b2c44Sab@ MSG_AV_386_AMD_LZCNT_ALT1	"amd_lzcnt"
1411d29b2c44Sab
1412d29b2c44Sab
1413d29b2c44Sab# AV_SPARC flags used for CA_SUNW_HW_1 capabilities
1414d29b2c44Sab
1415d29b2c44Sab@ MSG_AV_SPARC_MUL32		"AV_SPARC_MUL32"	# 0x0001
1416d29b2c44Sab@ MSG_AV_SPARC_MUL32_ALT1	"mul32"
1417d29b2c44Sab@ MSG_AV_SPARC_DIV32		"AV_SPARC_DIV32"	# 0x0002
1418d29b2c44Sab@ MSG_AV_SPARC_DIV32_ALT1	"div32"
1419d29b2c44Sab@ MSG_AV_SPARC_FSMULD		"AV_SPARC_FSMULD"	# 0x0004
1420d29b2c44Sab@ MSG_AV_SPARC_FSMULD_ALT1	"fsmuld"
1421d29b2c44Sab@ MSG_AV_SPARC_V8PLUS		"AV_SPARC_V8PLUS"	# 0x0008
1422d29b2c44Sab@ MSG_AV_SPARC_V8PLUS_ALT1	"v8plus"
1423d29b2c44Sab@ MSG_AV_SPARC_POPC		"AV_SPARC_POPC"		# 0x0010
1424d29b2c44Sab@ MSG_AV_SPARC_POPC_ALT1	"popc"
1425d29b2c44Sab@ MSG_AV_SPARC_VIS		"AV_SPARC_VIS"		# 0x0020
1426d29b2c44Sab@ MSG_AV_SPARC_VIS_ALT1		"vis"
1427d29b2c44Sab@ MSG_AV_SPARC_VIS2		"AV_SPARC_VIS2"		# 0x0040
1428d29b2c44Sab@ MSG_AV_SPARC_VIS2_ALT1	"vis2"
1429d29b2c44Sab@ MSG_AV_SPARC_ASI_BLK_INIT	"AV_SPARC_ASI_BLK_INIT"	# 0x0080
1430d29b2c44Sab@ MSG_AV_SPARC_ASI_BLK_INIT_ALT1 "asi_blk_init"
1431d29b2c44Sab@ MSG_AV_SPARC_FMAF		"AV_SPARC_FMAF"		# 0x0100
1432d29b2c44Sab@ MSG_AV_SPARC_FMAF_ALT1	"fmaf"
1433d29b2c44Sab@ MSG_AV_SPARC_FJFMAU		"AV_SPARC_FJFMAU"	# 0x4000
1434d29b2c44Sab@ MSG_AV_SPARC_FJFMAU_ALT1	"fjfmau"
1435d29b2c44Sab
1436d29b2c44Sab
1437d29b2c44Sab# SF1_SUNW flags used for CA_SUNW_SF_1 capabilities
1438d29b2c44Sab
1439d29b2c44Sab@ MSG_SF1_SUNW_FPKNWN		"SF1_SUNW_FPKNWN"	# 0x001
1440d29b2c44Sab@ MSG_SF1_SUNW_FPKNWN_ALT1	"fpknwn"
1441d29b2c44Sab@ MSG_SF1_SUNW_FPUSED		"SF1_SUNW_FPUSED"	# 0x002
1442d29b2c44Sab@ MSG_SF1_SUNW_FPUSED_ALT1	"fpused"
1443d29b2c44Sab
1444d29b2c44Sab
1445d29b2c44Sab# ISA strings. These could be separated into separate message modules
1446d29b2c44Sab# on a per-platform basis if their size became large, but this is probably
1447d29b2c44Sab# cheaper for this small set of strings.
1448d29b2c44Sab@ MSG_ISA_SPARC_32	"sparc"
1449d29b2c44Sab@ MSG_ISA_SPARC_64	"sparcv9"
1450d29b2c44Sab@ MSG_ISA_X86_32	"i386"
1451d29b2c44Sab@ MSG_ISA_X86_64	"amd64"
1452d29b2c44Sab
1453d29b2c44Sab# Format strings
1454d29b2c44Sab
1455d29b2c44Sab@ MSG_FMT_BLDPATH	"%s/%s"
1456d29b2c44Sab@ MSG_FMT_BLDSOPATH	"%s/%s.so"
1457d29b2c44Sab@ MSG_FMT_MODCMD	"%s:%s"
1458d29b2c44Sab@ MSG_FMT_SYSCMD	"[sys]:%s"
1459d29b2c44Sab@ MSG_FMT_WORDVAL	"%u"
1460d29b2c44Sab@ MSG_FMT_WRAPUSAGE	"\n%s"
1461d29b2c44Sab@ MSG_FMT_SECMSGPRE	"[%d: %s]"
1462d29b2c44Sab
1463d29b2c44Sab# Miscellaneous clutter
1464d29b2c44Sab
1465d29b2c44Sab@ MSG_STR_NULL		""
1466d29b2c44Sab@ MSG_STR_ARG		"arg"
1467d29b2c44Sab@ MSG_STR_SP_BAR_SP	" | "
1468d29b2c44Sab@ MSG_STR_ELIPSES	"..."
1469d29b2c44Sab@ MSG_STR_OPTIONS	"ade:L:o:rw"
1470d29b2c44Sab@ MSG_STR_ELFEDIT	"elfedit: "
1471d29b2c44Sab@ MSG_STR_PROMPT	"> "
1472d29b2c44Sab@ MSG_STR_NL		"\n"
1473d29b2c44Sab@ MSG_STR_TAB		"\t"
1474d29b2c44Sab@ MSG_STR_BINCP		"/bin/cp"
1475d29b2c44Sab@ MSG_STR_BINMORE	"/bin/more"
1476d29b2c44Sab@ MSG_STR_PAGER		"PAGER"
1477d29b2c44Sab@ MSG_STR_ELFEDITINIT32	"elfedit32_init"
1478d29b2c44Sab@ MSG_STR_ELFEDITINIT64	"elfedit64_init"
1479d29b2c44Sab@ MSG_STR_HLPINDENT	"   ";
1480d29b2c44Sab@ MSG_STR_HLPUSEINDENT	"        ";
1481d29b2c44Sab@ MSG_STR_HLPSUMINDENT	"              ";
1482d29b2c44Sab@ MSG_STR_HLPOPTARG	"%s";
1483d29b2c44Sab@ MSG_STR_HLPOPTARG2	"%s %s";
1484d29b2c44Sab@ MSG_STR_ENVVAR	"ELFEDIT_PATH"
1485d29b2c44Sab@ MSG_STR_MODPATH	"%r/usr/lib/elfedit/%I"
1486d29b2c44Sab@ MSG_STR_EMPTY		""
1487d29b2c44Sab@ MSG_STR_DOT		"."
1488d29b2c44Sab@ MSG_STR_COLON		":"
1489d29b2c44Sab@ MSG_STR_SPACE		" "
1490d29b2c44Sab@ MSG_STR_COMMA_SP	", "
1491d29b2c44Sab@ MSG_STR_CPAREN	")"
1492d29b2c44Sab@ MSG_STR_DOTSO		".so"
1493d29b2c44Sab@ MSG_STR_MINUS_MINUS	"--"
1494d29b2c44Sab@ MSG_STR_MINUS_A	"-a"
1495d29b2c44Sab@ MSG_STR_MINUS_AND	"-and"
1496d29b2c44Sab@ MSG_STR_MINUS_CMP	"-cmp"
1497d29b2c44Sab@ MSG_STR_MINUS_F	"-f"
1498d29b2c44Sab@ MSG_STR_MINUS_S	"-s"
1499d29b2c44Sab@ MSG_STR_MINUS_O	"-o"
1500d29b2c44Sab@ MSG_STR_MINUS_OR	"-or"
1501d29b2c44Sab@ MSG_STR_MODNAME	"modname"
1502d29b2c44Sab@ MSG_STR_TRUE		"true"
1503d29b2c44Sab@ MSG_STR_FALSE		"false"
1504d29b2c44Sab@ MSG_STR_ON		"on"
1505d29b2c44Sab@ MSG_STR_OFF		"off"
1506d29b2c44Sab@ MSG_STR_YES		"yes"
1507d29b2c44Sab@ MSG_STR_NO		"no"
1508d29b2c44Sab@ MSG_STR_0		"0"
1509d29b2c44Sab@ MSG_STR_1		"1"
1510d29b2c44Sab@ MSG_STR_A		"a"
1511d29b2c44Sab@ MSG_STR_D		"d"
1512d29b2c44Sab@ MSG_STR_F		"f"
1513d29b2c44Sab@ MSG_STR_N		"n"
1514d29b2c44Sab@ MSG_STR_O		"o"
1515d29b2c44Sab@ MSG_STR_OPTION	"option"
1516d29b2c44Sab@ MSG_STR_T		"t"
1517d29b2c44Sab@ MSG_STR_VALUE		"value"
1518d29b2c44Sab@ MSG_STR_W		"w"
1519d29b2c44Sab@ MSG_STR_Y		"y"
1520d29b2c44Sab@ MSG_STR_DEFAULT		"default"
1521d29b2c44Sab@ MSG_STR_MINUS_O_DEFAULT	"-odefault"
1522d29b2c44Sab@ MSG_STR_SIMPLE		"simple"
1523d29b2c44Sab@ MSG_STR_MINUS_O_SIMPLE	"-osimple"
1524d29b2c44Sab@ MSG_STR_NUM			"num"
1525d29b2c44Sab@ MSG_STR_MINUS_O_NUM		"-onum"
1526d29b2c44Sab@ MSG_STR_OUTSTYLE	"outstyle"
1527d29b2c44Sab
1528d29b2c44Sab
1529d29b2c44Sab# Format strings for sys:help
1530d29b2c44Sab@ MSG_HLPFMT_MULTIHDR	"::::::::::::::\n%s\n::::::::::::::\n"
1531d29b2c44Sab@ MSG_HLPFMT_NAMDSCCOL	"   %-15s%s\n"
1532d29b2c44Sab@ MSG_HLPFMT_NAMDSCHDR	"%s - %s\n"
1533d29b2c44Sab@ MSG_HLPFMT_NAMSUMHDR	"      %s - %s\n"
1534d29b2c44Sab@ MSG_HLPFMT_PATHELT	"       %s\n"
1535d29b2c44Sab@ MSG_HLPFMT_MULTNAM	"%s ("
1536d29b2c44Sab
1537d29b2c44Sab# name of builtin sys: module
1538d29b2c44Sab
1539d29b2c44Sab@ MSG_MOD_SYS		"sys"
1540d29b2c44Sab
1541d29b2c44Sab# Names of sys: builtin commands
1542d29b2c44Sab@ MSG_SYS_CMD_HELP	"help"
1543d29b2c44Sab@ MSG_SYS_CMD_HELP_A1	"?"
1544d29b2c44Sab@ MSG_SYS_CMD_HELP_A2	"man"
1545d29b2c44Sab@ MSG_SYS_CMD_LOAD	"load"
1546d29b2c44Sab@ MSG_SYS_CMD_QUIT	"quit"
1547d29b2c44Sab@ MSG_SYS_CMD_QUIT_A1	"exit"
1548d29b2c44Sab@ MSG_SYS_CMD_QUIT_A2	"bye"
1549d29b2c44Sab@ MSG_SYS_CMD_SET	"set"
1550d29b2c44Sab@ MSG_SYS_CMD_STATUS	"status"
1551d29b2c44Sab@ MSG_SYS_CMD_UNLOAD	"unload"
1552d29b2c44Sab@ MSG_SYS_CMD_WRITE	"write"
1553d29b2c44Sab@ MSG_SYS_CMD_WRITE_A1	"flush"
1554d29b2c44Sab@ MSG_SYS_CMD_WRITE_A2	"save"
1555