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
29{
30	global:
31		main;			# debuggers seem to like this.
32
33
34
35		# liblddbg dbg_print() function
36		dbg_print =		NODIRECT;
37
38
39
40		# Core API
41		elfedit_command_usage;
42		elfedit_cpl_match;
43		elfedit_cpl_module;
44		elfedit_cpl_command;
45		elfedit_elferr;
46		elfedit_flags;
47		elfedit_malloc;
48		elfedit_msg;
49		elfedit_outstyle;
50		elfedit_pager_init;
51		elfedit_printf;
52		elfedit_realloc;
53
54
55
56		# ato[u]i routines
57		elfedit_const_to_atoui;
58		elfedit_mach_sunw_hw1_to_atoui;
59
60		elfedit_atoi;
61		elfedit_atoui;
62		elfedit_atoconst;
63
64		elfedit_atoi2;
65		elfedit_atoui2;
66		elfedit_atoconst2;
67
68		elfedit_atoi_range;
69		elfedit_atoui_range;
70		elfedit_atoconst_range;
71
72		elfedit_atoi_range2;
73		elfedit_atoui_range2;
74		elfedit_atoconst_range2;
75
76		elfedit_atoi_value_to_str;
77		elfedit_atoui_value_to_str;
78		elfedit_atoconst_value_to_str;
79
80		elfedit_cpl_atoi;
81		elfedit_cpl_atoui;
82		elfedit_cpl_atoconst;
83
84
85
86		# Convenience functions built on top of the ato[u]i routines
87		elfedit_atobool;
88		elfedit_atoshndx;
89
90
91
92		# Getopt
93		elfedit_getopt_init;
94		elfedit_getopt;
95
96
97
98		# Utilities
99		elfedit_array_elts_delete;
100
101		elfedit_array_elts_move;
102
103		elfedit_bits_set;
104
105		elfedit32_dyn_elt_init;
106		elfedit64_dyn_elt_init;
107
108		elfedit32_dyn_elt_save;
109		elfedit64_dyn_elt_save;
110
111		elfedit32_dyn_offset_to_str;
112		elfedit64_dyn_offset_to_str;
113
114		elfedit32_dynstr_getpad;
115		elfedit64_dynstr_getpad;
116
117		elfedit32_dynstr_insert;
118		elfedit64_dynstr_insert;
119
120		elfedit32_modified_ehdr;
121		elfedit64_modified_ehdr;
122
123		elfedit32_modified_phdr;
124		elfedit64_modified_phdr;
125
126		elfedit32_modified_shdr;
127		elfedit64_modified_shdr;
128
129		elfedit32_modified_data;
130		elfedit64_modified_data;
131
132		elfedit32_name_to_shndx;
133		elfedit64_name_to_shndx;
134
135		elfedit32_name_to_symndx;
136		elfedit64_name_to_symndx;
137
138		elfedit32_offset_to_str;
139		elfedit64_offset_to_str;
140
141		elfedit32_sec_findstr;
142		elfedit64_sec_findstr;
143
144		elfedit32_sec_getcap;
145		elfedit64_sec_getcap;
146
147		elfedit32_sec_getdyn;
148		elfedit64_sec_getdyn;
149
150		elfedit32_sec_getstr;
151		elfedit64_sec_getstr;
152
153		elfedit32_sec_getsyminfo;
154		elfedit64_sec_getsyminfo;
155
156		elfedit32_sec_getsymtab;
157		elfedit64_sec_getsymtab;
158
159		elfedit32_sec_getversym;
160		elfedit64_sec_getversym;
161
162		elfedit32_sec_getxshndx;
163		elfedit64_sec_getxshndx;
164
165		elfedit32_sec_issymtab;
166		elfedit64_sec_issymtab;
167
168		elfedit32_shndx_to_name;
169		elfedit64_shndx_to_name;
170
171		elfedit32_sec_msgprefix;
172		elfedit64_sec_msgprefix;
173
174		elfedit32_strtab_insert;
175		elfedit64_strtab_insert;
176
177		elfedit32_strtab_insert_test;
178		elfedit64_strtab_insert_test;
179
180		elfedit32_type_to_shndx;
181		elfedit64_type_to_shndx;
182
183	local:
184		*;
185};
186