1#
2# CDDL HEADER START
3#
4# The contents of this file are subject to the terms of the
5# Common Development and Distribution License (the "License").
6# You may not use this file except in compliance with the License.
7#
8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9# or http://www.opensolaris.org/os/licensing.
10# See the License for the specific language governing permissions
11# and limitations under the License.
12#
13# When distributing Covered Code, include this CDDL HEADER in each
14# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15# If applicable, add the following below this CDDL HEADER, with the
16# fields enclosed by brackets "[]" replaced with your own identifying
17# information: Portions Copyright [yyyy] [name of copyright owner]
18#
19# CDDL HEADER END
20#
21
22#
23# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26# ident	"%Z%%M%	%I%	%E% SMI"
27
28@ _START_
29
30# Message file for elfedit 'syminfo' module
31
32@ MSG_ID_ELFEDIT_SYMINFO
33
34
35# Debug messages
36
37@ MSG_DEBUG_S_OK	"[%d: %s][%d].%s: value unchanged: %s\n"
38@ MSG_DEBUG_S_CHG	"[%d: %s][%d].%s: change from %s to %s\n"
39@ MSG_DEBUG_X_OK	"[%d: %s][%d].%s: value unchanged: %#x\n"
40@ MSG_DEBUG_X_CHG	"[%d: %s][%d].%s: change from %#x to %#x\n"
41@ MSG_DEBUG_FNDNEEDED	"[%d: %s][%d]: DT_NEEDED element for si_boundto: %s\n"
42@ MSG_DEBUG_CONVNULL	"[%d: %s][%d]: No existing %s to modify. Converting \
43			 extra DT_NULL\n"
44@ MSG_DEBUG_CHGSYMINFO0	"[%d: %s][%d]: ELF warning: element [0] is expected to \
45			 contain SYMINFO_VERSION, and should not be altered\n"
46
47# Errors
48
49@ MSG_ERR_NOEXTRANULL	"[%d: %s]: Dynamic section does not have room to add \
50			 a new element\n"
51
52
53
54# Module description
55
56@ MSG_MOD_DESC		"Syminfo Section"
57
58
59# 1-line description strings
60
61@ MSG_DESC_DUMP		"Dump Syminfo Section"
62@ MSG_DESC_SI_BOUNDTO	"Symbol to Object Binding"
63@ MSG_DESC_SI_FLAGS	"Binding Flags"
64
65
66# Command option description strings
67
68@ MSG_OPTDESC_NEEDED		"\
69   The value argument is a string giving the name of an ELF\n\
70   object. The si_boundto field will be set to the index of the\n\
71   corresponding DT_NEEDED entry of the dynamic section. If no\n\
72   such DT_NEEDED entry exists in the dynamic section and there\n\
73   is sufficient room, it will be added in order to satisfy this\n\
74   request\n"
75
76@ MSG_OPTDESC_SYMNDX		"\
77   The sym argument supplies a numeric index into the syminfo\n\
78   section instead of the name of the symbol.\n".
79
80
81# Command argument descriptions
82
83@ MSG_A1_SYM		"Name of desired symbol within symbol table.\n"
84
85@ MSG_A2_DESC_SI_BOUNDTO	"\
86   An integer value that describes the object this symbol is\n\
87   bound to. SYMINFO_BT_ symbolic constants are accepted to\n\
88   represent special values (self, parent, none), or the value\n\
89   can be the index of a dynamic section element.\n"
90
91@ MSG_A2_DESC_SI_FLAGS	"\
92   New value for symbol binding flags. SYMINFO_FLG_ symbolic\n\
93   constants are accepted, as is any integer.\n"
94
95
96
97# Help strings
98
99@ MSG_HELP_DUMP	"   \
100   The syminfo:dump command is used to display information\n\
101   from the syminfo section using the same style used by the\n\
102   elfdump program.\n\
103   \n\
104   The syminfo section augments the information found in the\n\
105   dynamic symbol table.\n\
106   \n\
107   If syminfo:dump is called without arguments, syminfo information\n\
108   for every symbol in the symbol table is shown. If called with\n\
109   the sym argument, the information for that symbol is\n\
110   displayed.\n"
111
112@ MSG_HELP_SI_BOUNDTO	"   \
113   The syminfo:si_boundto command is used to display or alter\n\
114   the external object the symbol is bound to. This information\n\
115   is found in the si_boundto field of a syminfo structure. It is\n\
116   an integer that contains one of the special SYMINFO_BT_ values,\n\
117   or alternaltively, an index into the dynamic section of the\n\
118   ELF object.\n\
119   \n\
120   If syminfo:si_boundto is called without arguments, the value of\n\
121   si_boundto for every symbol in the symbol table is shown. If\n\
122   called with the sym argument, the si_boundto information for\n\
123   that is displayed. If both arguments are present, the second\n\
124   argument supplies a new value for si_boundto.\n\
125   \n\
126   By default, value is an integer, which will have one of the\n\
127   special SYMINFO_BT_ values, or which will be the index of an\n\
128   element in the dynamic section. Alternatively, the -needed\n\
129   option can be used to specify a string with the name of an\n\
130   object. If -needed is is used, si_boundto will be set to the\n\
131   index of the DT_NEEDED entry in the dynamic section that\n\
132   corresponds to the given name. If no such DT_NEEDED element\n\
133   exists, and room is available to add it, it will be added in\n\
134   order to faciliate this operation.\n"
135
136@ MSG_HELP_SI_FLAGS	"   \
137   Examine or modify the syminfo binding flags associated\n\
138   with a given symbol. This information is found in the\n\
139   si_flags field of the syminfo structure.\n\
140   \n\
141   If syminfo:si_flags is called without arguments, the value\n\
142   of si_flags for every symbol in the symbol table is shown.\n\
143   If called with the sym argument, the si_flags information\n\
144   for that symbol is displayed. If one or more value arguments\n\
145   are present, the the following steps are taken:\n\
146   \n   \
147   o\tAll the value arguments are OR'd together.\n\
148   \n   \
149   o\tIf the -cmp option has been specified, the new value\n\
150   \tis complemented.\n\
151   \n   \
152   o\tThe si_flags field of the syminfo structure is updated\n\
153   \twith the new value. If -and is specified, the new value is\n\
154   \tAND'd against the existing value. If -or is specified,\n\
155   \tthe new value is OR'd against the existing value. If\n\
156   \tneither -and or -or are specified, the new value replaces\n\
157   \tthe existing value.\n"
158
159
160@ _END_
161
162
163# The following strings represent reserved words, files, pathnames and symbols.
164# Reference to this strings is via the MSG_ORIG() macro, and thus no message
165# translation is required.
166
167
168# Miscellaneous clutter
169@ MSG_STR_EMPTY			""
170@ MSG_STR_MINUS_NEEDED		"-needed"
171@ MSG_STR_MINUS_SYMNDX		"-symndx"
172@ MSG_STR_SYM			"sym"
173@ MSG_STR_VALUE			"value"
174
175
176# Format strings
177
178@ MSG_FMT_WORDVALNL		"%u\n"
179@ MSG_FMT_HEXNUMNL		"%#x\n"
180@ MSG_FMT_STRNL			"%s\n"
181
182
183# Module name
184
185@ MSG_MOD_NAME		"syminfo"
186
187
188# Command names
189
190@ MSG_CMD_DUMP		"dump"
191@ MSG_CMD_SI_BOUNDTO	"si_boundto"
192@ MSG_CMD_SI_FLAGS	"si_flags"
193