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) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
24 # Copyright 2018 Nexenta Systems, Inc.
25 # Copyright (c) 2012 by Delphix. All rights reserved.
26 # Copyright 2018 Joyent, Inc.
27 # Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved.
28 # Copyright (c) 2013 Gary Mills
29 # Copyright 2014 Garrett D'Amore <garrett@damore.org>
33 # MAPFILE HEADER START
35 # WARNING: STOP NOW. DO NOT MODIFY THIS FILE.
36 # Object versioning must comply with the rules detailed in
38 # usr/src/lib/README.mapfiles
40 # You should not be making modifications here until you've read the most current
41 # copy of that file. If you need help, contact a gatekeeper for guidance.
49 # All function names added to this or any other libc mapfile
50 # must be placed under the 'protected:' designation.
51 # The 'global:' designation is used *only* for data
52 # items and for the members of the malloc() family.
55 # Mnemonic conditional input identifiers:
57 # - amd64, i386, sparc32, sparcv9: Correspond to ISA subdirectories used to
58 # hold per-platform code. Note however that we use 'sparc32' instead of
59 # 'sparc'. Since '_sparc' is predefined to apply to, all sparc platforms,
60 # naming the 32-bit version 'sparc' would be too likely to cause errors.
62 # - lf64: Defined on platforms that offer the 32-bit largefile APIs
80 SYMBOL_VERSION ILLUMOS_0.28 {
82 pthread_attr_getname_np;
83 pthread_attr_setname_np;
90 SYMBOL_VERSION ILLUMOS_0.27 { # memset_s(3C) and set_constraint_handler_s(3C)
95 set_constraint_handler_s;
98 SYMBOL_VERSION ILLUMOS_0.26 { # fts(3) LFS
109 SYMBOL_VERSION ILLUMOS_0.25 { # inet_* moved from libnsl/libsocket
123 SYMBOL_VERSION ILLUMOS_0.24 { # openbsd compat
129 SYMBOL_VERSION ILLUMOS_0.23 { # openbsd compat
140 SYMBOL_VERSION ILLUMOS_0.22 { # endian(3C)
162 SYMBOL_VERSION ILLUMOS_0.21 {
167 SYMBOL_VERSION ILLUMOS_0.20 { # C11
200 SYMBOL_VERSION ILLUMOS_0.19 { # flock
205 SYMBOL_VERSION ILLUMOS_0.18 { # signalfd
210 SYMBOL_VERSION ILLUMOS_0.17 { # glob(3C) LFS
218 SYMBOL_VERSION ILLUMOS_0.16 { # timerfd
225 SYMBOL_VERSION ILLUMOS_0.15 { # epoll(3C)
234 SYMBOL_VERSION ILLUMOS_0.14 { # strerror_l
239 SYMBOL_VERSION ILLUMOS_0.13 { # eventfd
246 SYMBOL_VERSION ILLUMOS_0.12 { # arc4random and friends
255 SYMBOL_VERSION ILLUMOS_0.11 { # Illumos additions
261 SYMBOL_VERSION ILLUMOS_0.10 { # Illumos additions
272 SYMBOL_VERSION ILLUMOS_0.9 {
278 SYMBOL_VERSION ILLUMOS_0.8 { # POSIX 2008 newlocale and friends
360 SYMBOL_VERSION ILLUMOS_0.7 { # Illumos additions
366 SYMBOL_VERSION ILLUMOS_0.6 { # Illumos additions
373 SYMBOL_VERSION ILLUMOS_0.5 { # common C++ ABI exit handlers
379 SYMBOL_VERSION ILLUMOS_0.4 { # Illumos additions
392 SYMBOL_VERSION ILLUMOS_0.3 { # Illumos additions
397 SYMBOL_VERSION ILLUMOS_0.2 { # Illumos additions
402 SYMBOL_VERSION ILLUMOS_0.1 { # Illumos additions
407 SYMBOL_VERSION SUNW_1.23 { # SunOS 5.11 (Solaris 11)
413 dl_iterate_phdr { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
415 dl_iterate_phdr { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
417 dl_iterate_phdr { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
419 $error unknown platform
445 backtrace_symbols_fd;
446 canonicalize_file_name;
505 mq_reltimedreceive_np;
520 posix_spawn_file_actions_addclosefrom_np;
521 posix_spawnattr_getsigignore_np;
522 posix_spawnattr_setsigignore_np;
525 pthread_key_create_once_np;
526 pthread_mutexattr_getrobust;
527 pthread_mutexattr_setrobust;
528 pthread_mutex_consistent;
531 sched_get_priority_max;
532 sched_get_priority_min;
534 sched_rr_get_interval;
614 SYMBOL_VERSION SUNW_1.22.7 { # s10u10 - SunOS 5.10 (Solaris 10) patch additions
619 SYMBOL_VERSION SUNW_1.22.6 { # s10u9 - SunOS 5.10 (Solaris 10) patch additions
625 SYMBOL_VERSION SUNW_1.22.5 { # s10u8 - SunOS 5.10 (Solaris 10) patch additions
630 SYMBOL_VERSION SUNW_1.22.4 { # s10u7 - SunOS 5.10 (Solaris 10) patch additions
635 SYMBOL_VERSION SUNW_1.22.3 { # SunOS 5.10 (Solaris 10) patch additions
643 SYMBOL_VERSION SUNW_1.22.2 { # SunOS 5.10 (Solaris 10) patch additions
650 SYMBOL_VERSION SUNW_1.22.1 { # SunOS 5.10 (Solaris 10) patch additions
654 atomic_add_char { FLAGS = NODYNSORT };
655 atomic_add_char_nv { FLAGS = NODYNSORT };
656 atomic_add_int { FLAGS = NODYNSORT };
657 atomic_add_int_nv { FLAGS = NODYNSORT };
658 atomic_add_ptr { FLAGS = NODYNSORT };
659 atomic_add_ptr_nv { FLAGS = NODYNSORT };
660 atomic_add_short { FLAGS = NODYNSORT };
661 atomic_add_short_nv { FLAGS = NODYNSORT };
669 atomic_and_uchar { FLAGS = NODYNSORT };
670 atomic_and_uchar_nv { FLAGS = NODYNSORT };
671 atomic_and_uint_nv { FLAGS = NODYNSORT };
672 atomic_and_ulong { FLAGS = NODYNSORT };
673 atomic_and_ulong_nv { FLAGS = NODYNSORT };
674 atomic_and_ushort { FLAGS = NODYNSORT };
675 atomic_and_ushort_nv { FLAGS = NODYNSORT };
680 atomic_cas_ptr { FLAGS = NODYNSORT };
681 atomic_cas_uchar { FLAGS = NODYNSORT };
682 atomic_cas_uint { FLAGS = NODYNSORT };
683 atomic_cas_ulong { FLAGS = NODYNSORT };
684 atomic_cas_ushort { FLAGS = NODYNSORT };
685 atomic_clear_long_excl { FLAGS = NODYNSORT };
694 atomic_dec_uchar { FLAGS = NODYNSORT };
695 atomic_dec_uchar_nv { FLAGS = NODYNSORT };
696 atomic_dec_uint { FLAGS = NODYNSORT };
697 atomic_dec_uint_nv { FLAGS = NODYNSORT };
698 atomic_dec_ulong { FLAGS = NODYNSORT };
699 atomic_dec_ulong_nv { FLAGS = NODYNSORT };
700 atomic_dec_ushort { FLAGS = NODYNSORT };
701 atomic_dec_ushort_nv { FLAGS = NODYNSORT };
710 atomic_inc_uchar { FLAGS = NODYNSORT };
711 atomic_inc_uchar_nv { FLAGS = NODYNSORT };
712 atomic_inc_uint { FLAGS = NODYNSORT };
713 atomic_inc_uint_nv { FLAGS = NODYNSORT };
714 atomic_inc_ulong { FLAGS = NODYNSORT };
715 atomic_inc_ulong_nv { FLAGS = NODYNSORT };
716 atomic_inc_ushort { FLAGS = NODYNSORT };
717 atomic_inc_ushort_nv { FLAGS = NODYNSORT };
725 atomic_or_uchar { FLAGS = NODYNSORT };
726 atomic_or_uchar_nv { FLAGS = NODYNSORT };
727 atomic_or_uint_nv { FLAGS = NODYNSORT };
728 atomic_or_ulong { FLAGS = NODYNSORT };
729 atomic_or_ulong_nv { FLAGS = NODYNSORT };
730 atomic_or_ushort { FLAGS = NODYNSORT };
731 atomic_or_ushort_nv { FLAGS = NODYNSORT };
732 atomic_set_long_excl { FLAGS = NODYNSORT };
737 atomic_swap_ptr { FLAGS = NODYNSORT };
738 atomic_swap_uchar { FLAGS = NODYNSORT };
739 atomic_swap_uint { FLAGS = NODYNSORT };
740 atomic_swap_ulong { FLAGS = NODYNSORT };
741 atomic_swap_ushort { FLAGS = NODYNSORT };
748 enable_extended_FILE_stdio;
752 # Note: atomic_[and,dec,inc,or]_64_nv are also defined above. Here,
753 # we add the NODYNSORT attribute to them. On this platform, they are
754 # aliases for the non-_nv versions. If that is changed, these lines
756 atomic_and_64_nv { FLAGS = NODYNSORT };
757 atomic_dec_64_nv { FLAGS = NODYNSORT };
758 atomic_inc_64_nv { FLAGS = NODYNSORT };
759 atomic_or_64_nv { FLAGS = NODYNSORT };
762 # Note: atomic_OP_WIDTH_nv symbols are also defined above. Here,
763 # we add the NODYNSORT attribute to them. On this platform, they are
764 # aliases for the non-_nv versions. If that is changed, these lines
766 atomic_add_8_nv { FLAGS = NODYNSORT };
767 atomic_and_8_nv { FLAGS = NODYNSORT };
768 atomic_and_16_nv { FLAGS = NODYNSORT };
769 atomic_and_32_nv { FLAGS = NODYNSORT };
770 atomic_and_64_nv { FLAGS = NODYNSORT };
771 atomic_dec_8_nv { FLAGS = NODYNSORT };
772 atomic_dec_16_nv { FLAGS = NODYNSORT };
773 atomic_dec_32_nv { FLAGS = NODYNSORT };
774 atomic_dec_64_nv { FLAGS = NODYNSORT };
775 atomic_inc_8_nv { FLAGS = NODYNSORT };
776 atomic_inc_16_nv { FLAGS = NODYNSORT };
777 atomic_inc_32_nv { FLAGS = NODYNSORT };
778 atomic_inc_64_nv { FLAGS = NODYNSORT };
779 atomic_or_8_nv { FLAGS = NODYNSORT };
780 atomic_or_16_nv { FLAGS = NODYNSORT };
781 atomic_or_32_nv { FLAGS = NODYNSORT };
782 atomic_or_64_nv { FLAGS = NODYNSORT };
786 SYMBOL_VERSION SUNW_1.22 { # SunOS 5.10 (Solaris 10)
789 dladdr { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
790 dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
791 dlclose { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
792 dldump { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
793 dlerror { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
794 dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
795 dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
796 dlopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
797 dlsym { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
799 dladdr { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
800 dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
801 dlclose { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
802 dldump { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
803 dlerror { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
804 dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
805 dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
806 dlopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
807 dlsym { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
809 dladdr { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
810 dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
811 dlamd64getunwind { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
812 dlclose { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
813 dldump { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
814 dlerror { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
815 dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
816 dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
817 dlopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
818 dlsym { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
820 $error unknown platform
832 atomic_add_long { FLAGS = NODYNSORT };
833 atomic_add_long_nv { FLAGS = NODYNSORT };
835 atomic_and_uint { FLAGS = NODYNSORT };
837 atomic_or_uint { FLAGS = NODYNSORT };
872 posix_spawnattr_destroy;
873 posix_spawnattr_getflags;
874 posix_spawnattr_getpgroup;
875 posix_spawnattr_getschedparam;
876 posix_spawnattr_getschedpolicy;
877 posix_spawnattr_getsigdefault;
878 posix_spawnattr_getsigmask;
879 posix_spawnattr_init;
880 posix_spawnattr_setflags;
881 posix_spawnattr_setpgroup;
882 posix_spawnattr_setschedparam;
883 posix_spawnattr_setschedpolicy;
884 posix_spawnattr_setsigdefault;
885 posix_spawnattr_setsigmask;
886 posix_spawn_file_actions_addclose;
887 posix_spawn_file_actions_adddup2;
888 posix_spawn_file_actions_addopen;
889 posix_spawn_file_actions_destroy;
890 posix_spawn_file_actions_init;
949 pthread_attr_getstack;
950 pthread_attr_setstack;
951 pthread_barrierattr_destroy;
952 pthread_barrierattr_getpshared;
953 pthread_barrierattr_init;
954 pthread_barrierattr_setpshared;
955 pthread_barrier_destroy;
956 pthread_barrier_init;
957 pthread_barrier_wait;
958 pthread_condattr_getclock;
959 pthread_condattr_setclock;
960 pthread_mutexattr_getrobust_np { FLAGS = NODYNSORT };
961 pthread_mutexattr_setrobust_np { FLAGS = NODYNSORT };
962 pthread_mutex_consistent_np { FLAGS = NODYNSORT };
963 pthread_mutex_reltimedlock_np;
964 pthread_mutex_timedlock;
965 pthread_rwlock_reltimedrdlock_np;
966 pthread_rwlock_reltimedwrlock_np;
967 pthread_rwlock_timedrdlock;
968 pthread_rwlock_timedwrlock;
969 pthread_setschedprio;
970 pthread_spin_destroy;
973 pthread_spin_trylock;
975 rctlblk_set_recipient_pid;
1034 pselect_large_fdset;
1044 # Note: atomic_add_[16,32,64]_nv are also defined above. Here, we add
1045 # the NODYNSORT attribute to them. On this platform, they are aliases
1046 # for the non-_nv versions. If that is changed, these lines should be
1048 atomic_add_16_nv { FLAGS = NODYNSORT };
1049 atomic_add_32_nv { FLAGS = NODYNSORT };
1050 atomic_add_64_nv { FLAGS = NODYNSORT };
1054 # Note: atomic_add_64_nv is also defined above. Here, we add the
1055 # NODYNSORT attribute to it. On this platform, it is an aliases for
1056 # atomic_add_64. If that is changed, this line should be removed.
1057 atomic_add_64_nv { FLAGS = NODYNSORT };
1061 # Exception unwind APIs required by the amd64 ABI
1062 _SUNW_Unwind_DeleteException;
1063 _SUNW_Unwind_ForcedUnwind;
1064 _SUNW_Unwind_GetCFA;
1067 _SUNW_Unwind_GetLanguageSpecificData;
1068 _SUNW_Unwind_GetRegionStart;
1069 _SUNW_Unwind_RaiseException;
1070 _SUNW_Unwind_Resume;
1077 _Unwind_DeleteException;
1078 _Unwind_ForcedUnwind;
1082 _Unwind_GetLanguageSpecificData;
1083 _Unwind_GetRegionStart;
1084 _Unwind_RaiseException;
1091 SYMBOL_VERSION SUNW_1.21.3 { # SunOS 5.9 (Solaris 9) patch additions
1096 SYMBOL_VERSION SUNW_1.21.2 { # SunOS 5.9 (Solaris 9) patch additions
1118 SYMBOL_VERSION SUNW_1.21.1 { # SunOS 5.9 (Solaris 9) patch additions
1123 SYMBOL_VERSION SUNW_1.21 { # SunOS 5.9 (Solaris 9)
1127 bind_textdomain_codeset;
1146 _gethomelgroup { FLAGS = NODYNSORT };
1152 _lwp_cond_reltimedwait;
1165 pthread_cond_reltimedwait_np;
1166 rctlblk_get_enforced_value;
1167 rctlblk_get_firing_time;
1168 rctlblk_get_global_action;
1169 rctlblk_get_global_flags;
1170 rctlblk_get_local_action;
1171 rctlblk_get_local_flags;
1172 rctlblk_get_privilege;
1173 rctlblk_get_recipient_pid;
1175 rctlblk_set_local_action;
1176 rctlblk_set_local_flags;
1177 rctlblk_set_privilege;
1210 SYMBOL_VERSION SUNW_1.20.4 { # SunOS 5.8 (Solaris 8) patch additions
1216 SYMBOL_VERSION SUNW_1.20.1 { # SunOS 5.8 (Solaris 8) patch additions
1240 SYMBOL_VERSION SUNW_1.20 { # SunOS 5.8 (Solaris 8)
1246 SYMBOL_VERSION SUNW_1.19 {
1254 SYMBOL_VERSION SUNW_1.18.1 {
1259 SYMBOL_VERSION SUNW_1.18 { # SunOS 5.7 (Solaris 7)
1281 pthread_attr_getguardsize;
1282 pthread_attr_setguardsize;
1283 pthread_getconcurrency;
1284 pthread_mutexattr_gettype;
1285 pthread_mutexattr_settype;
1286 pthread_rwlockattr_destroy;
1287 pthread_rwlockattr_getpshared;
1288 pthread_rwlockattr_init;
1289 pthread_rwlockattr_setpshared;
1290 pthread_rwlock_destroy;
1291 pthread_rwlock_init;
1292 pthread_rwlock_rdlock;
1293 pthread_rwlock_tryrdlock;
1294 pthread_rwlock_trywrlock;
1295 pthread_rwlock_unlock;
1296 pthread_rwlock_wrlock;
1297 pthread_setconcurrency;
1321 # The empty versions SUNW_1.2 through SUNW_1.17 must be preserved because
1322 # applications built on Solaris 2.6 Beta (when they did contain symbols)
1323 # may depend on them. All symbol content for SunOS 5.6 is now in SUNW_1.1
1325 SYMBOL_VERSION SUNW_1.17 {
1330 SYMBOL_VERSION SUNW_1.16 {
1335 SYMBOL_VERSION SUNW_1.15 {
1340 SYMBOL_VERSION SUNW_1.14 {
1345 SYMBOL_VERSION SUNW_1.13 {
1350 SYMBOL_VERSION SUNW_1.12 {
1355 SYMBOL_VERSION SUNW_1.11 {
1360 SYMBOL_VERSION SUNW_1.10 {
1365 SYMBOL_VERSION SUNW_1.9 {
1370 SYMBOL_VERSION SUNW_1.8 {
1375 SYMBOL_VERSION SUNW_1.7 {
1380 SYMBOL_VERSION SUNW_1.6 {
1385 SYMBOL_VERSION SUNW_1.5 {
1390 SYMBOL_VERSION SUNW_1.4 {
1395 SYMBOL_VERSION SUNW_1.3 {
1400 SYMBOL_VERSION SUNW_1.2 {
1405 SYMBOL_VERSION SUNW_1.1 { # SunOS 5.6 (Solaris 2.6)
1476 pthread_attr_destroy;
1477 pthread_attr_getdetachstate;
1478 pthread_attr_getinheritsched;
1479 pthread_attr_getschedparam;
1480 pthread_attr_getschedpolicy;
1481 pthread_attr_getscope;
1482 pthread_attr_getstackaddr;
1483 pthread_attr_getstacksize;
1485 pthread_attr_setdetachstate;
1486 pthread_attr_setinheritsched;
1487 pthread_attr_setschedparam;
1488 pthread_attr_setschedpolicy;
1489 pthread_attr_setscope;
1490 pthread_attr_setstackaddr;
1491 pthread_attr_setstacksize;
1493 __pthread_cleanup_pop;
1494 __pthread_cleanup_push;
1499 pthread_getschedparam;
1500 pthread_getspecific;
1507 pthread_setcancelstate;
1508 pthread_setcanceltype;
1509 pthread_setschedparam;
1510 pthread_setspecific;
1520 rwlock_destroy { FLAGS = NODYNSORT };
1521 _rwlock_destroy { FLAGS = NODYNSORT };
1530 sync_instruction_memory;
1638 _s_fcntl { FLAGS = NODYNSORT };
1657 SYMBOL_VERSION SUNW_0.9 { # SunOS 5.5 (Solaris 2.5)
1676 pthread_condattr_destroy;
1677 pthread_condattr_getpshared;
1678 pthread_condattr_init;
1679 pthread_condattr_setpshared;
1680 pthread_cond_broadcast;
1681 pthread_cond_destroy;
1683 pthread_cond_signal;
1684 pthread_cond_timedwait;
1686 pthread_mutexattr_destroy;
1687 pthread_mutexattr_getprioceiling;
1688 pthread_mutexattr_getprotocol;
1689 pthread_mutexattr_getpshared;
1690 pthread_mutexattr_init;
1691 pthread_mutexattr_setprioceiling;
1692 pthread_mutexattr_setprotocol;
1693 pthread_mutexattr_setpshared;
1694 pthread_mutex_destroy;
1695 pthread_mutex_getprioceiling;
1698 pthread_mutex_setprioceiling;
1699 pthread_mutex_trylock;
1700 pthread_mutex_unlock;
1722 SYMBOL_VERSION SUNW_0.8 { # SunOS 5.4 (Solaris 2.4)
1724 __xpg4 { FLAGS = NODIRECT };
1727 cond_broadcast { FLAGS = NODYNSORT };
1728 cond_destroy { FLAGS = NODYNSORT };
1730 cond_signal { FLAGS = NODYNSORT };
1742 mutex_destroy { FLAGS = NODYNSORT };
1744 mutex_lock { FLAGS = NODYNSORT };
1745 mutex_trylock { FLAGS = NODYNSORT };
1746 mutex_unlock { FLAGS = NODYNSORT };
1753 rw_rdlock { FLAGS = NODYNSORT };
1755 rw_tryrdlock { FLAGS = NODYNSORT };
1756 rw_trywrlock { FLAGS = NODYNSORT };
1757 rw_unlock { FLAGS = NODYNSORT };
1759 rw_wrlock { FLAGS = NODYNSORT };
1778 thr_self { FLAGS = NODYNSORT };
1791 SYMBOL_VERSION SUNW_0.7 { # SunOS 5.3 (Solaris 2.3)
1795 isnanf { TYPE = FUNCTION; FILTER = libm.so.2 };
1799 memalign { FLAGS = NODIRECT };
1800 modff { TYPE = FUNCTION; FILTER = libm.so.2 };
1801 nss_default_finders;
1814 valloc { FLAGS = NODIRECT };
1845 decimal_to_extended;
1846 decimal_to_quadruple;
1860 extended_to_decimal;
1871 fork1 { FLAGS = NODYNSORT };
1929 _lwp_cond_broadcast;
1931 _lwp_cond_timedwait;
1954 _mutex_held { FLAGS = NODYNSORT };
1955 _mutex_lock { FLAGS = NODYNSORT };
1958 _nss_XbyY_buf_alloc;
1960 __nsw_extended_action;
1984 quadruple_to_decimal;
2041 # Note: _syscall is also defined above. Here, we add the NODYNSORT
2042 # attribute to it. On this platform, it is an alias to syscall.
2043 # If that is changed, this lines should be removed.
2044 _syscall { FLAGS = NODYNSORT };
2047 # The 32-bit sparc ABI requires SISCD_2.3. On other platforms, those symbols
2048 # go directly into SUNW_0.7.
2052 SYMBOL_VERSION SISCD_2.3 {
2056 errno { FLAGS = NODIRECT };
2128 __umul64 { FLAGS = NODYNSORT }; # Same address as __mul64
2131 # On 32-bit platforms, the following symbols go into SYSVABI_1.3, but on
2132 # other platforms they go directly into the current version (which will be
2133 # either SUNW_0.7, or SISCD_2.3, depending on the similar issue described above.
2137 SYMBOL_VERSION SYSVABI_1.3 {
2142 calloc { FLAGS = NODIRECT };
2146 environ { FLAGS = NODIRECT };
2147 _environ { FLAGS = NODIRECT };
2148 free { FLAGS = NODIRECT };
2149 frexp { TYPE = FUNCTION; FILTER = libm.so.2 };
2155 isnan { TYPE = FUNCTION; FILTER = libm.so.2 };
2156 _isnan { TYPE = FUNCTION; FILTER = libm.so.2 };
2157 isnand { TYPE = FUNCTION; FILTER = libm.so.2 };
2158 _isnand { TYPE = FUNCTION; FILTER = libm.so.2 };
2159 ldexp { TYPE = FUNCTION; FILTER = libm.so.2 };
2160 logb { TYPE = FUNCTION; FILTER = libm.so.2 };
2161 malloc { FLAGS = NODIRECT };
2166 modf { TYPE = FUNCTION; FILTER = libm.so.2 };
2167 _modf { TYPE = FUNCTION; FILTER = libm.so.2 };
2168 nextafter { TYPE = FUNCTION; FILTER = libm.so.2 };
2169 _nextafter { TYPE = FUNCTION; FILTER = libm.so.2 };
2175 realloc { FLAGS = NODIRECT };
2176 scalb { TYPE = FUNCTION; FILTER = libm.so.2 };
2177 _scalb { TYPE = FUNCTION; FILTER = libm.so.2 };
2520 _setcontext { FLAGS = NODYNSORT };
2548 _sigaction { FLAGS = NODYNSORT };
2583 _sigsetjmp { FLAGS = NODYNSORT };
2740 # .stret4 and .stret8 are the same thing
2741 .stret8 { FLAGS = NODYNSORT };
2770 # __align_cpy_1 is an alias for memcpy. Filter it out of
2771 # the .SUNW_dynsymsort section
2772 __align_cpy_1 { FLAGS = NODYNSORT };
2776 # __align_cpy_8 is same as __align_cpy_16
2777 __align_cpy_8 { FLAGS = NODYNSORT };
2806 __sparc_utrap_install;
2809 # On amd64, we also have SYSVABI_1.3, but it contains a small subset of
2810 # the symbols put in that version on other platforms.
2814 SYMBOL_VERSION SYSVABI_1.3 {
2842 # There should never be more than one SUNWprivate version.
2843 # Don't add any more. Add new private symbols to SUNWprivate_1.1
2845 SYMBOL_VERSION SUNWprivate_1.1 {
2847 ___Argv { FLAGS = NODIRECT };
2848 cfree { FLAGS = NODIRECT };
2851 __environ_lock { FLAGS = NODIRECT };
2855 _isnanf { TYPE = FUNCTION; FILTER = libm.so.2 };
2858 _lib_version { FLAGS = NODIRECT };
2859 _logb { TYPE = FUNCTION; FILTER = libm.so.2 };
2860 _lone { FLAGS = NODYNSORT };
2861 _lten { FLAGS = NODYNSORT };
2862 _lzero { FLAGS = NODYNSORT };
2865 _memcpy { FLAGS = NODYNSORT };
2868 _modff { TYPE = FUNCTION; FILTER = libm.so.2 };
2879 _nss_default_finders;
2880 __progname { FLAGS = NODIRECT };
2883 __strdupa_str { FLAGS = NODIRECT };
2884 __strdupa_len { FLAGS = NODIRECT };
2887 thr_probe_getfunc_addr;
2891 __xpg6 { FLAGS = NODIRECT };
2894 _dladdr { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2895 _dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2896 _dlclose { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2897 _dldump { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2898 _dlerror { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2899 _dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2900 _dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2901 _dlopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2902 _dlsym { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2903 _ld_libc { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
2907 _sys_nerr { FLAGS = NODYNSORT };
2910 _dladdr { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2911 _dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2912 _dlclose { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2913 _dldump { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2914 _dlerror { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2915 _dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2916 _dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2917 _dlopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2918 _dlsym { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2919 _ld_libc { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
2921 _dladdr { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2922 _dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2923 _dlamd64getunwind { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2924 _dlclose { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2925 _dldump { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2926 _dlerror { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2927 _dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2928 _dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2929 _dlopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2930 _dlsym { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2931 _ld_libc { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
2933 $error unknown platform
2960 core_get_default_content;
2961 core_get_default_path;
2962 core_get_global_content;
2963 core_get_global_path;
2965 core_get_process_content;
2966 core_get_process_path;
2967 core_set_default_content;
2968 core_set_default_path;
2969 core_set_global_content;
2970 core_set_global_path;
2972 core_set_process_content;
2973 core_set_process_path;
3005 _fork1 { FLAGS = NODYNSORT };
3006 _forkall { FLAGS = NODYNSORT };
3022 _get_exit_frame_monitor;
3033 __idmap_flush_kcache;
3049 _lgrp_home_fast { FLAGS = NODYNSORT };
3065 _mutex_destroy { FLAGS = NODYNSORT };
3069 _mutex_init { FLAGS = NODYNSORT };
3070 _mutex_unlock { FLAGS = NODYNSORT };
3075 __nis_get_environment;
3076 _nss_db_state_destr;
3077 nss_default_key2str;
3082 _nss_initf_netgroup;
3085 nss_packed_arg_init;
3086 nss_packed_context_init;
3088 nss_packed_set_status;
3093 __nsw_extended_action_v1;
3094 __nsw_freeconfig_v1;
3105 pthread_attr_getdaemonstate_np;
3106 pthread_attr_setdaemonstate_np;
3107 _pthread_setcleanupinit;
3121 secflags_difference;
3123 secflags_intersection;
3127 secflags_issuperset;
3132 psecflags_validate_delta;
3140 set_setcontext_enforcement;
3174 __strptime_dontzero;
3179 thr_continue_allmutators;
3180 _thr_continue_allmutators;
3181 thr_continue_mutator;
3182 _thr_continue_mutator;
3185 thr_mutators_barrier;
3186 _thr_mutators_barrier;
3196 thr_suspend_allmutators;
3197 _thr_suspend_allmutators;
3198 thr_suspend_mutator;
3199 _thr_suspend_mutator;
3225 _uncached_getgrgid_r;
3226 _uncached_getgrnam_r;
3227 _uncached_getpwnam_r;
3228 _uncached_getpwuid_r;
3248 zone_check_datalink;
3257 zone_remove_datalink;
3363 # The following functions should not be exported from libc,
3364 # but /lib/libm.so.2, some older versions of the Studio
3365 # compiler/debugger components, and some ancient programs
3366 # found in /usr/dist reference them. When we no longer
3367 # care about these old and broken binary objects, these
3368 # symbols should be deleted.
3369 _brk { FLAGS = NODYNSORT };
3370 _cond_broadcast { FLAGS = NODYNSORT };
3371 _cond_init { FLAGS = NODYNSORT };
3372 _cond_signal { FLAGS = NODYNSORT };
3373 _cond_wait { FLAGS = NODYNSORT };
3374 _ecvt { FLAGS = NODYNSORT };
3375 _fcvt { FLAGS = NODYNSORT };
3376 _getc_unlocked { FLAGS = NODYNSORT };
3377 _llseek { FLAGS = NODYNSORT };
3378 _pthread_attr_getdetachstate { FLAGS = NODYNSORT };
3379 _pthread_attr_getinheritsched { FLAGS = NODYNSORT };
3380 _pthread_attr_getschedparam { FLAGS = NODYNSORT };
3381 _pthread_attr_getschedpolicy { FLAGS = NODYNSORT };
3382 _pthread_attr_getscope { FLAGS = NODYNSORT };
3383 _pthread_attr_getstackaddr { FLAGS = NODYNSORT };
3384 _pthread_attr_getstacksize { FLAGS = NODYNSORT };
3385 _pthread_attr_init { FLAGS = NODYNSORT };
3386 _pthread_condattr_getpshared { FLAGS = NODYNSORT };
3387 _pthread_condattr_init { FLAGS = NODYNSORT };
3388 _pthread_cond_init { FLAGS = NODYNSORT };
3389 _pthread_create { FLAGS = NODYNSORT };
3390 _pthread_getschedparam { FLAGS = NODYNSORT };
3391 _pthread_join { FLAGS = NODYNSORT };
3392 _pthread_key_create { FLAGS = NODYNSORT };
3393 _pthread_mutexattr_getprioceiling { FLAGS = NODYNSORT };
3394 _pthread_mutexattr_getprotocol { FLAGS = NODYNSORT };
3395 _pthread_mutexattr_getpshared { FLAGS = NODYNSORT };
3396 _pthread_mutexattr_init { FLAGS = NODYNSORT };
3397 _pthread_mutex_getprioceiling { FLAGS = NODYNSORT };
3398 _pthread_mutex_init { FLAGS = NODYNSORT };
3399 _pthread_sigmask { FLAGS = NODYNSORT };
3400 _rwlock_init { FLAGS = NODYNSORT };
3401 _rw_rdlock { FLAGS = NODYNSORT };
3402 _rw_unlock { FLAGS = NODYNSORT };
3403 _rw_wrlock { FLAGS = NODYNSORT };
3404 _sbrk_unlocked { FLAGS = NODYNSORT };
3405 _select { FLAGS = NODYNSORT };
3406 _sema_init { FLAGS = NODYNSORT };
3407 _sema_post { FLAGS = NODYNSORT };
3408 _sema_trywait { FLAGS = NODYNSORT };
3409 _sema_wait { FLAGS = NODYNSORT };
3410 _sysfs { FLAGS = NODYNSORT };
3411 _thr_create { FLAGS = NODYNSORT };
3412 _thr_exit { FLAGS = NODYNSORT };
3413 _thr_getprio { FLAGS = NODYNSORT };
3414 _thr_getspecific { FLAGS = NODYNSORT };
3415 _thr_join { FLAGS = NODYNSORT };
3416 _thr_keycreate { FLAGS = NODYNSORT };
3417 _thr_kill { FLAGS = NODYNSORT };
3418 _thr_main { FLAGS = NODYNSORT };
3419 _thr_self { FLAGS = NODYNSORT };
3420 _thr_setspecific { FLAGS = NODYNSORT };
3421 _thr_sigsetmask { FLAGS = NODYNSORT };
3422 _thr_stksegment { FLAGS = NODYNSORT };
3423 _ungetc_unlocked { FLAGS = NODYNSORT };
3426 __imax_lldiv { FLAGS = NODYNSORT };
3427 _ti_thr_self { FLAGS = NODYNSORT };
3431 _seekdir64 { FLAGS = NODYNSORT };
3432 _telldir64 { FLAGS = NODYNSORT };
3436 __cerror { FLAGS = NODYNSORT };
3440 __cerror64 { FLAGS = NODYNSORT };
3444 __cleanup { FLAGS = NODYNSORT };
3448 _syscall6 { FLAGS = NODYNSORT };
3449 __systemcall6 { FLAGS = NODYNSORT };
3453 ___tls_get_addr { FLAGS = NODYNSORT };