d29b2c4438482eb00488be49a1f5d6835f455546ab#
d29b2c4438482eb00488be49a1f5d6835f455546ab# CDDL HEADER START
d29b2c4438482eb00488be49a1f5d6835f455546ab#
d29b2c4438482eb00488be49a1f5d6835f455546ab# The contents of this file are subject to the terms of the
d29b2c4438482eb00488be49a1f5d6835f455546ab# Common Development and Distribution License (the "License").
d29b2c4438482eb00488be49a1f5d6835f455546ab# You may not use this file except in compliance with the License.
d29b2c4438482eb00488be49a1f5d6835f455546ab#
d29b2c4438482eb00488be49a1f5d6835f455546ab# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
d29b2c4438482eb00488be49a1f5d6835f455546ab# or http://www.opensolaris.org/os/licensing.
d29b2c4438482eb00488be49a1f5d6835f455546ab# See the License for the specific language governing permissions
d29b2c4438482eb00488be49a1f5d6835f455546ab# and limitations under the License.
d29b2c4438482eb00488be49a1f5d6835f455546ab#
d29b2c4438482eb00488be49a1f5d6835f455546ab# When distributing Covered Code, include this CDDL HEADER in each
d29b2c4438482eb00488be49a1f5d6835f455546ab# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
d29b2c4438482eb00488be49a1f5d6835f455546ab# If applicable, add the following below this CDDL HEADER, with the
d29b2c4438482eb00488be49a1f5d6835f455546ab# fields enclosed by brackets "[]" replaced with your own identifying
d29b2c4438482eb00488be49a1f5d6835f455546ab# information: Portions Copyright [yyyy] [name of copyright owner]
d29b2c4438482eb00488be49a1f5d6835f455546ab#
d29b2c4438482eb00488be49a1f5d6835f455546ab# CDDL HEADER END
d29b2c4438482eb00488be49a1f5d6835f455546ab#
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab#
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
d29b2c4438482eb00488be49a1f5d6835f455546ab# Use is subject to license terms.
d29b2c4438482eb00488be49a1f5d6835f455546ab#
d29b2c4438482eb00488be49a1f5d6835f455546ab# ident "%Z%%M% %I% %E% SMI"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ _START_
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Message file for elfedit 'dyn' module
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_ID_ELFEDIT_DYN
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Strings
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_DEPRECATED "(deprecated value)"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Debug messages
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_S_OK "[%d: %s][%d]: value unchanged: %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_S_CHG "[%d: %s][%d]: change from %s to %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_X_OK "[%d: %s][%d]: value unchanged: %#llx\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_X_CHG "[%d: %s][%d]: change from %#llx to %#llx\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_PREVRPATH "[%d: %s][%d]: Reusing existing %s entry: %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_OLDRPATHOK "[%d: %s][%d]: Existing %s already has desired \
d29b2c4438482eb00488be49a1f5d6835f455546ab value\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_CONVNULL "[%d: %s][%d]: No existing %s to modify. Converting \
d29b2c4438482eb00488be49a1f5d6835f455546ab extra DT_NULL\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_DT2NDX "[%d: %s][%d]: Dynamic entry for tag: %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_NULCLIP "[%d: %s][%d]: ELF warning: null element will cause \
d29b2c4438482eb00488be49a1f5d6835f455546ab the runtime linker to ignore the non-null \
d29b2c4438482eb00488be49a1f5d6835f455546ab elements that follow: %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_NULHIDE "[%d: %s][%d]: ELF warning: this non-null element \
d29b2c4438482eb00488be49a1f5d6835f455546ab follows the first DT_NULL element, and will be \
d29b2c4438482eb00488be49a1f5d6835f455546ab ignored by the runtime linker: %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_NULLTERM "[%d: %s][%d]: ELF warning: dynamic section is \
d29b2c4438482eb00488be49a1f5d6835f455546ab must be terminated by a DT_NULL. The runtime linker \
d29b2c4438482eb00488be49a1f5d6835f455546ab will be unable to use this object: %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DEBUG_DTNULLVALUE "[%d: %s][%d]: ELF warning: DT_NULL element value \
d29b2c4438482eb00488be49a1f5d6835f455546ab is expected to be 0: %#llx\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Errors
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_ERR_NODTELT "[%d: %s]: Dynamic section does not contain tag: %s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_ERR_NOEXTRANULL "[%d: %s]: Dynamic section does not have room to add \
d29b2c4438482eb00488be49a1f5d6835f455546ab a new element\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_ERR_NORUNPATH "[%d: %s]: no runpath (DT_RPATH or DT_RUNPATH) found\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_ERR_NODYNELT "[%d: %s]: no elements of type %s found\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_ERR_STRPADSTRVAL "[%d: %s]: -s option cannot be used with \
d29b2c4438482eb00488be49a1f5d6835f455546ab DT_SUNW_STRPAD dynamic element\n"
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_ERR_WRONGTAG "[%d: %s][%d]: expected %s dynamic element: %s\n"
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_ERR_NEEDEDNOMATCH "[%d: %s]: matching DT_NEEDED element not found: %s\n";
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Module description
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_MOD_DESC "Dynamic Section"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# 1-line description strings
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_DUMP "Dump Dynamic Section"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_TAG "Change element tag"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_VALUE "Change element value"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_DELETE "Delete elements"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_MOVE "Move elements"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_RUNPATH "Set runpath"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_POSFLAG1 "DT_POSFLAG_1 bit values"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_FLAGS "DT_FLAGS bit values"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_FLAGS1 "DT_FLAGS_1 bit values"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_FEATURE1 "DT_FEATURE_1 bit values"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_DESC_CHECKSUM "Recompute DT_CHECKSUM"
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab@ MSG_DESC_SUNW_LDMACH "Linker machine type"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Commmand option description strings
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_OPTDESC_ADD "\
d29b2c4438482eb00488be49a1f5d6835f455546ab By default, dyn:value modifies the first element of the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic section that has the specified tag type, creating\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab a new element only if no element of the specified type\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab exists, and if room exists in the file. If -add is specified,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dyn:value will always create a new element for the new value,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab leaving any existing elements with the same tag untouched.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_OPTDESC_S "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Interpret the value argument as a string rather than an\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab integer. If the specified string already exists in the dynamic\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab string table, the offset of that string is stored in the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic entry. If the string does not exist in the string table,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab but there is room to add it, the new string is added and then\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the offset is placed in the dynamic entry.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_OPTDESC_DYNNDX_ELT "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Interpret the elt argument as a direct index into the dynamic\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab section, rather than as a DT_ tag value.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_OPTDESC_DYNNDX_VAL "\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab Use the dynamic element with the specified index.\n"
55ef6355bc6375ad080b10b10660e3528e2b7e6aab
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_OPTDESC_NEEDED "\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab Select the first DT_POSFLAG_1 dynamic element that corresponds\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab to the DT_NEEDED element with a value that starts with the\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab string given by prefix. If present, the DT_POSFLAG_1 element\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab will be in the dynamic element directly in front of the\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab DT_NEEDED element.\n"
55ef6355bc6375ad080b10b10660e3528e2b7e6aab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Command argument description strings
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A1_TAG_ELT "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Dynamic element to be examined or changed. By default, this\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab is a DT_ tag value. The index of the first element in the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic section that has the specified tag value will be used.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab The value specified can be one of the well known DT_ constants,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab or any integer.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If the -dynndx option is specified, elt is instead interpreted\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab as a simple integer index into the dynamic section.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A2_TAG_VALUE "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Value to be set for d_tag field of specified dynamic\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab element. Tag values can be specified using the well known\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab DT_ symbolic constants from /usr/include/sys/link.h, or\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab as integers.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_ARGDESC_ELT "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Element within dynamic section. By default, this is a tag\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value. In this case, the index of the first dynamic element\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab with the specified tag value will be used. Tag values can\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab be specified using the well known DT_ symbolic constants from\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab /usr/include/sys/link.h, or as integers. If the -dynndx\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab option is specified, then elt is instead interpreted as a\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab direct numeric index into the dynamic section.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A2_VALUE_VALUE "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Value to set for specified dynamic section element. By\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab default, this is a numeric value which is used directly.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If the -s option is used, this is a string value, and the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic element will receive the numeric offset of the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab specified string from within the associated dynamic string\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab table.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A2_DELETE_COUNT "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Number of dynamic elements to delete, starting at the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab specified position. This value cannot exceed the number\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab of slots remaining in the table below the specified position.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If count is not supplied, a single element is deleted.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A2_MOVE_DST_INDEX "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Numeric index within dynamic section to which the element(s)\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab should be moved.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A3_MOVE_COUNT "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Number of dynamic elements to move. This value cannot\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab exceed the number of slots remaining in the table below\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the specified position. If count is not supplied, a\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab single element is moved.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A1_RUNPATH_NEWPATH "\
d29b2c4438482eb00488be49a1f5d6835f455546ab New runpath string for the ELF object.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A1_POSFLAG1_VALUE "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Position dependent state flags which are applied to the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab element immediately following. This can be an integer\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value, or any of the DF_P1_ symbolic constants defined\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab in /usr/include/sys/link.h\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A1_FLAGS_VALUE "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Flag values. This can be an integer value, or any of the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab DF_ symbolic constants defined in /usr/include/sys/link.h\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A1_FLAGS1_VALUE "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Flag values. This can be an integer value, or any of the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab DF_1_ symbolic constants defined in /usr/include/sys/link.h\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_A1_FEATURE1_VALUE "\
d29b2c4438482eb00488be49a1f5d6835f455546ab Feature values. This can be an integer value, or any of\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the DTF_1_ symbolic constants defined in\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab /usr/include/sys/link.h\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab@ MSG_A1_SUNW_LDMACH_VALUE "\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab Machine type of link-editor that built the object being edited.\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab This can be an integer value, or any of the EM_ symbolic\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab constants defined in /usr/include/elf.h\n"
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Help strings
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_DUMP " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:dump command is used to display the contents of the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic section using the same style used by the elfdump program.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_TAG " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:tag command is used to display or alter the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab type of an element in the dynamic section. This information\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab is found in the d_tag field of a dynamic element.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If dyn:tag is called without arguments, the value of d_tag\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab for every element in the dynamic section is shown. If called\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab with the elt argument, the specified elements are displayed.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If both arguments are present, the d_tag field of the specified\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic element is set to the given value.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_VALUE " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:value command is used to display or alter the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value of an element in the dynamic section, or to add\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab a new element of a desired type. The value of a dynamic\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab element is found in the d_un union of the element.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If dyn:value is called without arguments, the value of every\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab element in the dynamic section is shown. If called with the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab elt argument, the value of the specified elements are displayed.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If both arguments are present, the value of the specified\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic element is set to the given value.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_DELETE " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:delete command is used to delete one or more elements\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab in the dynamic section. The elements following the deleted\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab items move up, and new DT_NULL elements are inserted at the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab end of the dynamic section to fill the vacated space.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab Other parts of the ELF object may have dependencies on the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab position and values of existing dynamic elements. Moving or\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab deleting dynamic elements can therefore break the object,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab and should be done with caution. Among the potential issues:\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tDT_POSFLAG_1 has a positional dependency on the item that\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tfollows it. If that item is removed, the DT_POSFLAG_1 will\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tapply to the new item that moves below it.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tSyminfo sections reference DT_NEEDED elements in the dynamic\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tsection by index. Moving or deleting such elements will break\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthis dependency.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_MOVE " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:move command is used to move the position of one\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab or more elements in the dynamic section. The specified\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab number of elements are moved from elt to dst_index.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab Other parts of the ELF object may have dependencies on the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab position and values of existing dynamic elements. Moving or\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab deleting dynamic elements can therefore break the object,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab and should be done with caution. Among the potential issues:\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tDT_POSFLAG_1 has a positional dependency on the item that\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tfollows it. If that item is removed, the DT_POSFLAG_1 will\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tapply to the new item that moves below it.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tSyminfo sections reference DT_NEEDED elements in the dynamic\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tsection by index. Moving or deleting such elements will break\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthis dependency.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_RUNPATH " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:runpath command is used to display or alter the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab runpath of the ELF object.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If dyn:runpath is called without arguments, the existing runpath\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab is shown. If called with the newpath argument, the runpath is set\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab to the given string, if possible.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab Not all files can be modified to have a new runpath:\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tThe desired string must already exist in the dynamic string\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \ttable, or there must be enough room in the reserved section\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tsection at the end (DT_SUNW_STRPAD) for the new string to be\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tadded.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tThe dynamic section must already have a DT_RPATH or DT_RUNPATH\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \telement, or there must be an extra DT_NULL slot at the end\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \twhere a DT_RUNPATH can be inserted.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If the file has both DT_RPATH and DT_RUNPATH elements in\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the dynamic section, both are set to the new value. If no\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab runpath entry exists, a new DT_RUNPATH is inserted if the room\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab for it exists.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_POSFLAG1 " \
55ef6355bc6375ad080b10b10660e3528e2b7e6aab The dyn:posflag1 command is used to display or alter\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab DT_POSFLAG_1 flags values. DT_POSFLAG_1 is a positional\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab dynamic element that affects the interpretation of the item\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab that follows it. Therefore, when displaying DT_POSFLAG_1 elements\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab using the default output style, dyn:posflag1 also displays the\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab dynamic element that follows it.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If dyn:posflag1 is called without arguments, the current\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab value of all DT_POSFLAG_1 elements are shown. It is possible\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab to display the value of a single specific DT_POSFLAG_1 element\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab by using the -dynndx or -needed option to specify it.\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab If one or more value arguments are present, the default is to\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab modify the first DT_POSFLAG_1 element. The -dynndx or -needed\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab option can be used to specify a specific DT_POSFLAG_1_element\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab instead. The following steps are taken to compute the new value:\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tAll the value arguments are OR'd together.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tIf the -cmp option has been specified, the new value\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tis complemented.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
55ef6355bc6375ad080b10b10660e3528e2b7e6aab o\tThe DT_POSFLAG_1 element is updated with the new value.\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \tIf -and is specified, the new value is AND'd against the\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \texisting value. If -or is specified, the new value is OR'd\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \tagainst the existing value. If neither -and or -or are\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \tspecified, the new value replaces the existing value.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab A new DT_POSFLAG_1 element is inserted in the dynamic section\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab when all of the following are true:\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \n \
55ef6355bc6375ad080b10b10660e3528e2b7e6aab o\tOne or more value arguments are present.\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \n \
55ef6355bc6375ad080b10b10660e3528e2b7e6aab o\tThe -dynndx and -needed options are not used.\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \n \
55ef6355bc6375ad080b10b10660e3528e2b7e6aab o\tThe current dynamic section does not have a current\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \tDT_POSFLAG_1 element.\n\
55ef6355bc6375ad080b10b10660e3528e2b7e6aab \n \
55ef6355bc6375ad080b10b10660e3528e2b7e6aab o\tThere is available space at the end of the dynamic section.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_FLAGS " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:flags command is used to display or alter the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value of the DT_FLAGS dynamic element.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If dyn:flags is called without arguments, the current\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value is shown. If one or more value arguments are present,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the following steps are taken:\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tAll the value arguments are OR'd together.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tIf the -cmp option has been specified, the new value\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tis complemented.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tThe DT_FLAGS element of the dynamic section is updated\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \twith the new value. If -and is specified, the new value is\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tAND'd against the existing value. If -or is specified,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthe new value is OR'd against the existing value. If\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tneither -and or -or are specified, the new value replaces\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthe existing value.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If the current dynamic section does not have a current\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab DT_FLAGS element, and room for it exists at the end\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab of the section, a new one is inserted.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_FLAGS1 " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:flags1 command is used to display or alter the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value of the DT_FLAGS_1 dynamic element.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If dyn:flags1 is called without arguments, the current\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value is shown. If one or more value arguments are present,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the following steps are taken:\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tAll the value arguments are OR'd together.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tIf the -cmp option has been specified, the new value\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tis complemented.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tThe DT_FLAGS_1 element of the dynamic section is updated\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \twith the new value. If -and is specified, the new value is\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tAND'd against the existing value. If -or is specified,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthe new value is OR'd against the existing value. If\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tneither -and or -or are specified, the new value replaces\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthe existing value.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If the current dynamic section does not have a current\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab DT_FLAGS_1 element, and room for it exists at the end\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab of the section, a new one is inserted.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_FEATURE1 " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:feature1 command is used to display or alter the\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value of the DT_FEATURE_1 dynamic element.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If dyn:feature1 is called without arguments, the current\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab value is shown. If one or more value arguments are present,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the following steps are taken:\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tAll the value arguments are OR'd together.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tIf the -cmp option has been specified, the new value\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tis complemented.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n \
d29b2c4438482eb00488be49a1f5d6835f455546ab o\tThe DT_FEATURE_1 element of the dynamic section is updated\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \twith the new value. If -and is specified, the new value is\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tAND'd against the existing value. If -or is specified,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthe new value is OR'd against the existing value. If\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tneither -and or -or are specified, the new value replaces\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \tthe existing value.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If the current dynamic section does not have a current\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab DT_FEATURE_1 element, and room for it exists at the end\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab of the section, a new one is inserted.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_HELP_CHECKSUM " \
d29b2c4438482eb00488be49a1f5d6835f455546ab The dyn:checksum command recomputes the value of the DT_CHECKSUM\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab dynamic element. It calls the elf32_checksum() for 32-bit objects,\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab or elf64_checksum() for 64-bit objects, and then sets the value of\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab the DT_CHECKSUM element to the resulting value.\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab \n\
d29b2c4438482eb00488be49a1f5d6835f455546ab If the current dynamic section does not have a current\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab DT_CHECKSUM element, and room for it exists at the end\n\
d29b2c4438482eb00488be49a1f5d6835f455546ab of the section, a new one is inserted.\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab@ MSG_HELP_SUNW_LDMACH " \
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab The dyn:sunw_ldmach command is used to display or alter the\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab DT_SUNW_LDMACH dynamic element of the ELF object. This dynamic\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab element records the ELF machine type of the link-editor that produced\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab the object. This is of special interest if the object was built\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab by a cross link-editor instead of being linked on a machine of the\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab same type as the object.\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab \n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab If dyn:sunw_ldmach is called without arguments, the current\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab value is shown. If called with the value argument, the\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab DT_SUNW_LDMACH dynamic element is set to the specified machine type.\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab \n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab If the current dynamic section does not have a current\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab DT_SUNW_LDMACH element, and room for it exists at the end\n\
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab of the section, a new one is inserted.\n"
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ _END_
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# The following strings represent reserved words, files, pathnames and symbols.
d29b2c4438482eb00488be49a1f5d6835f455546ab# Reference to this strings is via the MSG_ORIG() macro, and thus no message
d29b2c4438482eb00488be49a1f5d6835f455546ab# translation is required.
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Strings
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_EMPTY ""
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_COUNT "count"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_ELT "elt"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_DST_INDEX "dst_index"
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_STR_INDEX "index"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_MINUS_ADD "-add"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_MINUS_DYNNDX "-dynndx"
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_STR_MINUS_NEEDED "-needed"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_MINUS_S "-s"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_NEWPATH "newpath"
55ef6355bc6375ad080b10b10660e3528e2b7e6aab@ MSG_STR_PREFIX "prefix"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_STR_VALUE "value"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Format strings
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_FMT_STRNL "%s\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_FMT_HEXXWORDNL "%#llx\n"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Module name
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_MOD_NAME "dyn"
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab# Command names
d29b2c4438482eb00488be49a1f5d6835f455546ab
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_DUMP "dump"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_TAG "tag"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_VALUE "value"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_DELETE "delete"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_MOVE "move"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_RUNPATH "runpath"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_RUNPATH_A1 "rpath"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_POSFLAG1 "posflag1"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_FLAGS "flags"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_FLAGS1 "flags1"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_FEATURE1 "feature1"
d29b2c4438482eb00488be49a1f5d6835f455546ab@ MSG_CMD_CHECKSUM "checksum"
ba2be53024c0b999e74ba9adcd7d80fec5df8c57ab@ MSG_CMD_SUNW_LDMACH "sunw_ldmach"