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 2009 Sun Microsystems, Inc. All rights reserved. 24# Use is subject to license terms. 25# 26 27# This file provides exceptions to the usual rules applied to sharable 28# objects by intf_cmp. All strings are Perl regular expressions that 29# are compared to file, version, and symbol names. In addition to the 30# standard Perl syntax, there is one extension: 31# 32# MACH(dir) 33# 34# is expanded into a regular expression that matches the given 35# directory, or a 64-bit subdirectory of the directory with the 36# name of a 64-bit architecture. For example, MACH(lib) will match 37# any of the following: 38# 39# lib 40# lib/amd64 41# lib/sparcv9 42# 43 44 45## libbsm 46# 47# - Removed interfaces: setauclassfile, setaueventfile setauuserfile testac 48# 4686423 undocumented interfaces are not used 49# - Removed interfaces: auditsvc 50# 6638707 implement the removal of auditsvc(2) as noted in PSARC/2002/665 51# 52DELSYM ^(auditsvc|setauclassfile|setaueventfile|setauuserfile|testac)$ \ 53 ^SUNW_(0\.[7-8]|1\.[1-2])$ \ 54 ^MACH(lib)/libbsm\.so\.1$ 55 56 57## libmalloc / libmapmalloc 58# 59# - Objects that provide malloc implementations had functions intentionally 60# removed by: 61# 6464344 malloc library cleanup 62# PSARC 2006/477 malloc library cleanup 63# 64DELSYM ^(_cfree|_mallinfo|_mallopt)$ \ 65 ^SUNW_1\.1$ \ 66 ^usr/MACH(lib)/libmalloc\.so\.1$ 67DELSYM ^(mallinfo|mallopt)$ \ 68 ^SUNW_(0\.7|1\.1)$ \ 69 ^usr/MACH(lib)/libmapmalloc\.so\.1$ 70DELSYM ^(_cfree|_?mallinfo|_?mallopt|_memalign|_valloc)$ \ 71 ^SUNW_1\.1$ \ 72 ^usr/MACH(lib)/watchmalloc\.so\.1$ 73 74 75## libc 76# 77# - In Solaris 10, libc version SUNW_1.23 was incorrectly defined. In a 78# subsequent update, those symbols were properly transfered to SUNW_1.22.4. 79# However, SUNW_1.23 had to remain in place as an empty version to satisfy 80# executables already in the field that were bound to it. 81# 6763000 libc versioning needs a little tlc in Solaris 10 82# The following excludes an empty top version SUNW_1.23 from triggering 83# a flood of "added interface" errors. 84# 85EMPTY_TOPVERSION ^SUNW_1\.23$ ^MACH(lib)/libc\.so\.1$ 86EMPTY_TOPVERSION ^SUNW_1\.23$ ^usr/lib/libc/libc_hwcap\d+\.so\.1$ 87 88 89## libnsl 90# 91# - The function _inet_aton was removed from libnsl.so.1 as part of 92# 6700179 expunge synonyms.h 93# PSARC 2008/309 expunge synonyms.h 94# - Version SUN_1.10 was vacated when inet_aton was backported into SUNW_1.9.1 95# 4944187 getaddrinfo doesn't convert broadcast address if dns 96# isn't in nsswitch.conf 97# 6747055 Solaris 10 apps using recent version of libnsl.so do 98# not run on Nevada 99# 100DELSYM ^_inet_aton$ ^SUNW_1\.9\.1$ ^MACH(lib)/libnsl\.so\.1$ 101EMPTY_TOPVERSION ^SUNW_1\.10$ ^MACH(lib)/libnsl\.so\.1$ 102 103 104## libnsl 105# 106# The following functions are removed from libnsl.so.1 as part of 107# 6874309 Remove NIS+ from Solaris 108# PSARC 2009/530 Removal of NIS+ 109# 110DELSYM ^nis_add$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 111DELSYM ^nis_add_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 112DELSYM ^nis_addmember$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 113DELSYM ^nis_checkpoint$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 114DELSYM ^nis_creategroup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 115DELSYM ^nis_destroygroup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 116DELSYM ^nis_first_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 117DELSYM ^nis_freenames$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 118DELSYM ^nis_freeresult$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 119DELSYM ^nis_freeservlist$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 120DELSYM ^nis_freetags$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 121DELSYM ^nis_getnames$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 122DELSYM ^nis_getservlist$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 123DELSYM ^nis_ismember$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 124DELSYM ^nis_lerror$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 125DELSYM ^nis_list$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 126DELSYM ^nis_local_principal$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 127DELSYM ^nis_lookup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 128DELSYM ^nis_mkdir$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 129DELSYM ^nis_modify$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 130DELSYM ^nis_modify_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 131DELSYM ^nis_next_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 132DELSYM ^nis_perror$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 133DELSYM ^nis_ping$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 134DELSYM ^nis_print_group_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 135DELSYM ^nis_print_object$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 136DELSYM ^nis_remove$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 137DELSYM ^nis_remove_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 138DELSYM ^nis_removemember$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 139DELSYM ^nis_rmdir$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 140DELSYM ^nis_servstate$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 141DELSYM ^nis_sperrno$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 142DELSYM ^nis_sperror$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 143DELSYM ^nis_sperror_r$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 144DELSYM ^nis_stats$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 145DELSYM ^nis_verifygroup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$ 146 147## libpapi 148# 149# - FSG_1.0 is a label for the Free Standards Group, version 1 of this library 150# 6346505 print commands should use PAPI for service interaction 151# (LSARC/2003/547) 152# 153EMPTY_TOPVERSION ^FSG_1\.0$ ^usr/lib/libpapi.so.0$ 154 155 156## libresolv2 157# 158# - Version SUNW_2.3 is empty 159# 6689937 libresolv2's mapfile-vers needs updating to line up 160# with S10 changes 161# 162EMPTY_TOPVERSION ^SUNW_2\.3$ ^MACH(lib)/libresolv\.so\.2$ 163 164 165## librtld_db 166# 167# - rd_fix_phdrs() was introduced into Solaris 10 to support branded zones, 168# and was removed as part of: 169# 6599700 librtld_db needs better plugin support 170# 171DELSYM ^rd_fix_phdrs$ ^SUNW_1\.1$ ^MACH(lib)/librtld_db\.so\.1$ 172 173 174## libtecla 175# 176# - gl_completion_action() was renamed pca_path_completions() 177# - gl_set_term_size was moved from tecla_1.4 to tecla_l.5 178# - The version tecla_l.5 (note the "el" (l) instead of a one (1) is 179# intentional. See the libtecla mapfile for details. 180# 181DELSYM ^gl_completion_action$ \ 182 ^tecla_1\.[2-4]$ \ 183 ^usr/MACH(lib)/libtecla\.so\.1$ 184DELSYM ^gl_set_term_size$ \ 185 ^tecla_1\.4$ \ 186 ^usr/MACH(lib)/libtecla\.so\.1$ 187ADDSYM ^pca_path_completions$ \ 188 ^(tecla_1\.[2346]|tecla_l\.5)$ \ 189 ^usr/MACH(lib)/libtecla\.so\.1$ 190