interface_cmp revision 36e852a172cba914383d7341c988128b2c667fbd
c25356d5978632df6203437e1953bcb29e0c736fTimo Sirainen#
c25356d5978632df6203437e1953bcb29e0c736fTimo Sirainen# CDDL HEADER START
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen#
419cf63077e755935ce105747d6ebc67b7d38a7fTimo Sirainen# The contents of this file are subject to the terms of the
419cf63077e755935ce105747d6ebc67b7d38a7fTimo Sirainen# Common Development and Distribution License (the "License").
4073f0dbf3277f981a8fcee3b89ea15aaf380a7fTimo Sirainen# You may not use this file except in compliance with the License.
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen#
92d1458b00f4f236c4cec96a696253d3bbf8b05aTimo Sirainen# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# or http://www.opensolaris.org/os/licensing.
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# See the License for the specific language governing permissions
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# and limitations under the License.
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen#
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# When distributing Covered Code, include this CDDL HEADER in each
92d1458b00f4f236c4cec96a696253d3bbf8b05aTimo Sirainen# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# If applicable, add the following below this CDDL HEADER, with the
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# fields enclosed by brackets "[]" replaced with your own identifying
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# information: Portions Copyright [yyyy] [name of copyright owner]
92d1458b00f4f236c4cec96a696253d3bbf8b05aTimo Sirainen#
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# CDDL HEADER END
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen#
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen
03b10bd68ecd2307c7f505ddbdeee2d40a5d1441Timo Sirainen#
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# Use is subject to license terms.
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen#
92d1458b00f4f236c4cec96a696253d3bbf8b05aTimo Sirainen
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# This file provides exceptions to the usual rules applied to sharable
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# objects by intf_cmp. All strings are Perl regular expressions that
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# are compared to file, version, and symbol names. In addition to the
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# standard Perl syntax, there is one extension:
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen#
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# MACH(dir)
3954326e793bdef1e94e0ad781ed6cc7e48beebbTimo Sirainen#
3954326e793bdef1e94e0ad781ed6cc7e48beebbTimo Sirainen# is expanded into a regular expression that matches the given
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# directory, or a 64-bit subdirectory of the directory with the
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# name of a 64-bit architecture. For example, MACH(lib) will match
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# any of the following:
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen#
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# lib
ff52f5c52ee6a4c8a9c79964d32b5d0ff0ae92e6Timo Sirainen# lib/amd64
# lib/sparcv9
#
## libbsm
#
# - Removed interfaces: setauclassfile, setaueventfile setauuserfile testac
# 4686423 undocumented interfaces are not used
# - Removed interfaces: auditsvc
# 6638707 implement the removal of auditsvc(2) as noted in PSARC/2002/665
#
DELSYM ^(auditsvc|setauclassfile|setaueventfile|setauuserfile|testac)$ \
^SUNW_(0\.[7-8]|1\.[1-2])$ \
^MACH(lib)/libbsm\.so\.1$
## libmalloc / libmapmalloc
#
# - Objects that provide malloc implementations had functions intentionally
# removed by:
# 6464344 malloc library cleanup
# PSARC 2006/477 malloc library cleanup
#
DELSYM ^(_cfree|_mallinfo|_mallopt)$ \
^SUNW_1\.1$ \
^usr/MACH(lib)/libmalloc\.so\.1$
DELSYM ^(mallinfo|mallopt)$ \
^SUNW_(0\.7|1\.1)$ \
^usr/MACH(lib)/libmapmalloc\.so\.1$
DELSYM ^(_cfree|_?mallinfo|_?mallopt|_memalign|_valloc)$ \
^SUNW_1\.1$ \
^usr/MACH(lib)/watchmalloc\.so\.1$
## libc
#
# - In Solaris 10, libc version SUNW_1.23 was incorrectly defined. In a
# subsequent update, those symbols were properly transfered to SUNW_1.22.4.
# However, SUNW_1.23 had to remain in place as an empty version to satisfy
# executables already in the field that were bound to it.
# 6763000 libc versioning needs a little tlc in Solaris 10
# The following excludes an empty top version SUNW_1.23 from triggering
# a flood of "added interface" errors.
#
EMPTY_TOPVERSION ^SUNW_1\.23$ ^MACH(lib)/libc\.so\.1$
EMPTY_TOPVERSION ^SUNW_1\.23$ ^usr/lib/libc/libc_hwcap\d+\.so\.1$
## libnsl
#
# - The function _inet_aton was removed from libnsl.so.1 as part of
# 6700179 expunge synonyms.h
# PSARC 2008/309 expunge synonyms.h
# - Version SUN_1.10 was vacated when inet_aton was backported into SUNW_1.9.1
# 4944187 getaddrinfo doesn't convert broadcast address if dns
# isn't in nsswitch.conf
# 6747055 Solaris 10 apps using recent version of libnsl.so do
# not run on Nevada
#
DELSYM ^_inet_aton$ ^SUNW_1\.9\.1$ ^MACH(lib)/libnsl\.so\.1$
EMPTY_TOPVERSION ^SUNW_1\.10$ ^MACH(lib)/libnsl\.so\.1$
## libnsl
#
# The following functions are removed from libnsl.so.1 as part of
# 6874309 Remove NIS+ from Solaris
# PSARC 2009/530 Removal of NIS+
#
DELSYM ^nis_add$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_add_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_addmember$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_checkpoint$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_creategroup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_destroygroup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_first_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_freenames$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_freeresult$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_freeservlist$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_freetags$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_getnames$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_getservlist$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_ismember$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_lerror$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_list$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_local_principal$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_lookup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_mkdir$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_modify$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_modify_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_next_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_perror$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_ping$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_print_group_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_print_object$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_remove$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_remove_entry$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_removemember$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_rmdir$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_servstate$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_sperrno$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_sperror$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_sperror_r$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_stats$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
DELSYM ^nis_verifygroup$ ^SUNW_0\.7\.1$ ^MACH(lib)/libnsl\.so\.1$
## libpapi
#
# - FSG_1.0 is a label for the Free Standards Group, version 1 of this library
# 6346505 print commands should use PAPI for service interaction
# (LSARC/2003/547)
#
EMPTY_TOPVERSION ^FSG_1\.0$ ^usr/lib/libpapi.so.0$
## libresolv2
#
# - Version SUNW_2.3 is empty
# 6689937 libresolv2's mapfile-vers needs updating to line up
# with S10 changes
#
EMPTY_TOPVERSION ^SUNW_2\.3$ ^MACH(lib)/libresolv\.so\.2$
## librtld_db
#
# - rd_fix_phdrs() was introduced into Solaris 10 to support branded zones,
# and was removed as part of:
# 6599700 librtld_db needs better plugin support
#
DELSYM ^rd_fix_phdrs$ ^SUNW_1\.1$ ^MACH(lib)/librtld_db\.so\.1$
## libtecla
#
# - gl_completion_action() was renamed pca_path_completions()
# - gl_set_term_size was moved from tecla_1.4 to tecla_l.5
# - The version tecla_l.5 (note the "el" (l) instead of a one (1) is
# intentional. See the libtecla mapfile for details.
#
DELSYM ^gl_completion_action$ \
^tecla_1\.[2-4]$ \
^usr/MACH(lib)/libtecla\.so\.1$
DELSYM ^gl_set_term_size$ \
^tecla_1\.4$ \
^usr/MACH(lib)/libtecla\.so\.1$
ADDSYM ^pca_path_completions$ \
^(tecla_1\.[2346]|tecla_l\.5)$ \
^usr/MACH(lib)/libtecla\.so\.1$