6066 dis: support for System/370, System/390, and z/Architecture ELF bins
[illumos-gate.git] / exception_lists / interface_cmp
blob6dd44cffe49f10294aabdfbc3679ae68205a8f15
2 # CDDL HEADER START
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]
19 # CDDL HEADER END
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:
31 #       MACH(dir)
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:
38 #       lib
39 #       lib/amd64
40 #       lib/sparcv9
41
44 ## libbsm
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
78 #   removed by:
79 #       6464344 malloc library cleanup
80 #       PSARC 2006/477 malloc library cleanup
82 DELSYM  ^(_cfree|_mallinfo|_mallopt)$   \
83         ^SUNW_1\.1$     \
84         ^usr/MACH(lib)/libmalloc\.so\.1$
85 DELSYM  ^(mallinfo|mallopt)$    \
86         ^SUNW_(0\.7|1\.1)$      \
87         ^usr/MACH(lib)/libmapmalloc\.so\.1$
88 DELSYM  ^(_cfree|_?mallinfo|_?mallopt|_memalign|_valloc)$       \
89         ^SUNW_1\.1$     \
90         ^usr/MACH(lib)/watchmalloc\.so\.1$
93 ## libc
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$
107 ## libnsl
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
116 #               not run on Nevada
118 DELSYM  ^_inet_aton$    ^SUNW_1\.9\.1$  ^MACH(lib)/libnsl\.so\.1$
119 EMPTY_TOPVERSION        ^SUNW_1\.10$    ^MACH(lib)/libnsl\.so\.1$
122 ## libnsl
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+
128 DELSYM  ^nis_add$       \
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$
173 DELSYM  ^nis_list$      \
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$
182 DELSYM  ^nis_mkdir$     \
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$
197 DELSYM  ^nis_ping$      \
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$
215 DELSYM  ^nis_rmdir$     \
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$
230 DELSYM  ^nis_stats$     \
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$
238 ## libpapi
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
242 #               (LSARC/2003/547)
244 EMPTY_TOPVERSION        ^FSG_1\.0$      ^usr/lib/libpapi.so.0$
247 ## libresolv2
249 # - Version SUNW_2.3 is empty
250 #       6689937 libresolv2's mapfile-vers needs updating to line up
251 #               with S10 changes
253 EMPTY_TOPVERSION        ^SUNW_2\.3$     ^MACH(lib)/libresolv\.so\.2$
256 ## librtld_db
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$
265 ## libtecla
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$  \
273         ^tecla_1\.[2-4]$        \
274         ^usr/MACH(lib)/libtecla\.so\.1$
275 DELSYM  ^gl_set_term_size$      \
276         ^tecla_1\.4$            \
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$