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.
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.
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]
23 # Copyright (c) 2009, 2010, Oracle and/or its affiliates. All rights reserved.
26 # This file provides exceptions to the usual rules applied to shared
27 # objects by interface_cmp. All strings are Perl regular expressions
28 # that are compared to file, version, and symbol names. In addition
29 # to the standard Perl syntax, there is one extension:
33 # is expanded into a regular expression that matches the given
34 # directory, or a 64-bit subdirectory of the directory with the
35 # name of a 64-bit architecture. For example, MACH(lib) will match
36 # any of the following:
46 # - Removed interfaces: setauclassfile, setaueventfile setauuserfile testac
47 # 4686423 undocumented interfaces are not used
48 # - Removed interfaces: auditsvc
49 # 6638707 implement the removal of auditsvc(2) as noted in PSARC/2002/665
51 DELSYM ^(auditsvc|setauclassfile|setaueventfile|setauuserfile|testac)$ \
52 ^SUNW_(0\.[7-8]|1\.[1-2])$ \
53 ^MACH(lib)/libbsm\.so\.1$
55 # - Removed interfaces: getauusernam(3bsm)
56 # 6914742 remove audit_user phase 1
57 # PSARC/2010/003 EOL and removal of audit_user(4) and getauusernam(3bsm)
59 DELSYM ^(getauuserent_r|getauusernam_r)$ \
60 ^SUNW_(0\.8|1\.[1-2])$ \
61 ^MACH(lib)/libbsm\.so\.1$
62 DELSYM ^(endauuser|getauuserent|getauusernam|setauuser)$ \
63 ^SUNW_(0\.[7-8]|1\.[1-2])$ \
64 ^MACH(lib)/libbsm\.so\.1$
66 # - Removed interfaces: setac, getacna, getacmin, getacflg, getacdir, endac
67 # 6875456 Solaris Audit configuration in SMF - phase 2
68 # (PSARC/2009/636, PSARC/2009/642)
70 DELSYM ^(setac|getacna|getacmin|getacflg|getacdir|endac)$ \
71 ^SUNW_(0\.[7-8]|1\.[1-2])$ \
72 ^MACH(lib)/libbsm\.so\.1$
75 ## libmalloc / libmapmalloc
77 # - Objects that provide malloc implementations had functions intentionally
79 # 6464344 malloc library cleanup
80 # PSARC 2006/477 malloc library cleanup
82 DELSYM ^(_cfree|_mallinfo|_mallopt)$ \
84 ^usr/MACH(lib)/libmalloc\.so\.1$
85 DELSYM ^(mallinfo|mallopt)$ \
87 ^usr/MACH(lib)/libmapmalloc\.so\.1$
88 DELSYM ^(_cfree|_?mallinfo|_?mallopt|_memalign|_valloc)$ \
90 ^usr/MACH(lib)/watchmalloc\.so\.1$
95 # - In Solaris 10, libc version SUNW_1.23 was incorrectly defined. In a
96 # subsequent update, those symbols were properly transfered to SUNW_1.22.4.
97 # However, SUNW_1.23 had to remain in place as an empty version to satisfy
98 # executables already in the field that were bound to it.
99 # 6763000 libc versioning needs a little tlc in Solaris 10
100 # The following excludes an empty top version SUNW_1.23 from triggering
101 # a flood of "added interface" errors.
103 EMPTY_TOPVERSION ^SUNW_1\.23$ ^MACH(lib)/libc\.so\.1$
104 EMPTY_TOPVERSION ^SUNW_1\.23$ ^usr/lib/libc/libc_hwcap\d+\.so\.1$
109 # - The function _inet_aton was removed from libnsl.so.1 as part of
110 # 6700179 expunge synonyms.h
111 # PSARC 2008/309 expunge synonyms.h
112 # - Version SUN_1.10 was vacated when inet_aton was backported into SUNW_1.9.1
113 # 4944187 getaddrinfo doesn't convert broadcast address if dns
114 # isn't in nsswitch.conf
115 # 6747055 Solaris 10 apps using recent version of libnsl.so do
118 DELSYM ^_inet_aton$ ^SUNW_1\.9\.1$ ^MACH(lib)/libnsl\.so\.1$
119 EMPTY_TOPVERSION ^SUNW_1\.10$ ^MACH(lib)/libnsl\.so\.1$
124 # The following functions are removed from libnsl.so.1 as part of
125 # 6874309 Remove NIS+ from Solaris
126 # PSARC 2009/530 Removal of NIS+
129 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
130 ^MACH(lib)/libnsl\.so\.1$
131 DELSYM ^nis_add_entry$ \
132 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
133 ^MACH(lib)/libnsl\.so\.1$
134 DELSYM ^nis_addmember$ \
135 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
136 ^MACH(lib)/libnsl\.so\.1$
137 DELSYM ^nis_checkpoint$ \
138 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
139 ^MACH(lib)/libnsl\.so\.1$
140 DELSYM ^nis_creategroup$ \
141 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
142 ^MACH(lib)/libnsl\.so\.1$
143 DELSYM ^nis_destroygroup$ \
144 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
145 ^MACH(lib)/libnsl\.so\.1$
146 DELSYM ^nis_first_entry$ \
147 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
148 ^MACH(lib)/libnsl\.so\.1$
149 DELSYM ^nis_freenames$ \
150 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
151 ^MACH(lib)/libnsl\.so\.1$
152 DELSYM ^nis_freeresult$ \
153 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
154 ^MACH(lib)/libnsl\.so\.1$
155 DELSYM ^nis_freeservlist$ \
156 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
157 ^MACH(lib)/libnsl\.so\.1$
158 DELSYM ^nis_freetags$ \
159 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
160 ^MACH(lib)/libnsl\.so\.1$
161 DELSYM ^nis_getnames$ \
162 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
163 ^MACH(lib)/libnsl\.so\.1$
164 DELSYM ^nis_getservlist$ \
165 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
166 ^MACH(lib)/libnsl\.so\.1$
167 DELSYM ^nis_ismember$ \
168 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
169 ^MACH(lib)/libnsl\.so\.1$
170 DELSYM ^nis_lerror$ \
171 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
172 ^MACH(lib)/libnsl\.so\.1$
174 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
175 ^MACH(lib)/libnsl\.so\.1$
176 DELSYM ^nis_local_principal$ \
177 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
178 ^MACH(lib)/libnsl\.so\.1$
179 DELSYM ^nis_lookup$ \
180 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
181 ^MACH(lib)/libnsl\.so\.1$
183 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
184 ^MACH(lib)/libnsl\.so\.1$
185 DELSYM ^nis_modify$ \
186 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
187 ^MACH(lib)/libnsl\.so\.1$
188 DELSYM ^nis_modify_entry$ \
189 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
190 ^MACH(lib)/libnsl\.so\.1$
191 DELSYM ^nis_next_entry$ \
192 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
193 ^MACH(lib)/libnsl\.so\.1$
194 DELSYM ^nis_perror$ \
195 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
196 ^MACH(lib)/libnsl\.so\.1$
198 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
199 ^MACH(lib)/libnsl\.so\.1$
200 DELSYM ^nis_print_group_entry$ \
201 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
202 ^MACH(lib)/libnsl\.so\.1$
203 DELSYM ^nis_print_object$ \
204 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
205 ^MACH(lib)/libnsl\.so\.1$
206 DELSYM ^nis_remove$ \
207 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
208 ^MACH(lib)/libnsl\.so\.1$
209 DELSYM ^nis_remove_entry$ \
210 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
211 ^MACH(lib)/libnsl\.so\.1$
212 DELSYM ^nis_removemember$ \
213 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
214 ^MACH(lib)/libnsl\.so\.1$
216 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
217 ^MACH(lib)/libnsl\.so\.1$
218 DELSYM ^nis_servstate$ \
219 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
220 ^MACH(lib)/libnsl\.so\.1$
221 DELSYM ^nis_sperrno$ \
222 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
223 ^MACH(lib)/libnsl\.so\.1$
224 DELSYM ^nis_sperror$ \
225 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
226 ^MACH(lib)/libnsl\.so\.1$
227 DELSYM ^nis_sperror_r$ \
228 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
229 ^MACH(lib)/libnsl\.so\.1$
231 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
232 ^MACH(lib)/libnsl\.so\.1$
233 DELSYM ^nis_verifygroup$ \
234 ^SUNW_(0\.[7-9])|(1\.[1-9](\.1)?)$ \
235 ^MACH(lib)/libnsl\.so\.1$
240 # - FSG_1.0 is a label for the Free Standards Group, version 1 of this library
241 # 6346505 print commands should use PAPI for service interaction
244 EMPTY_TOPVERSION ^FSG_1\.0$ ^usr/lib/libpapi.so.0$
249 # - Version SUNW_2.3 is empty
250 # 6689937 libresolv2's mapfile-vers needs updating to line up
253 EMPTY_TOPVERSION ^SUNW_2\.3$ ^MACH(lib)/libresolv\.so\.2$
258 # - rd_fix_phdrs() was introduced into Solaris 10 to support branded zones,
259 # and was removed as part of:
260 # 6599700 librtld_db needs better plugin support
262 DELSYM ^rd_fix_phdrs$ ^SUNW_1\.1$ ^MACH(lib)/librtld_db\.so\.1$
267 # - gl_completion_action() was renamed pca_path_completions()
268 # - gl_set_term_size was moved from tecla_1.4 to tecla_l.5
269 # - The version tecla_l.5 (note the "el" (l) instead of a one (1) is
270 # intentional. See the libtecla mapfile for details.
272 DELSYM ^gl_completion_action$ \
274 ^usr/MACH(lib)/libtecla\.so\.1$
275 DELSYM ^gl_set_term_size$ \
277 ^usr/MACH(lib)/libtecla\.so\.1$
278 ADDSYM ^pca_path_completions$ \
279 ^(tecla_1\.[2346]|tecla_l\.5)$ \
280 ^usr/MACH(lib)/libtecla\.so\.1$