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 (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 2020 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> 30# Copyright 2020 OmniOS Community Edition (OmniOSce) Association. 31# 32 33# 34# MAPFILE HEADER START 35# 36# WARNING: STOP NOW. DO NOT MODIFY THIS FILE. 37# Object versioning must comply with the rules detailed in 38# 39# usr/src/lib/README.mapfiles 40# 41# You should not be making modifications here until you've read the most current 42# copy of that file. If you need help, contact a gatekeeper for guidance. 43# 44# MAPFILE HEADER END 45# 46 47$mapfile_version 2 48 49# 50# All function names added to this or any other libc mapfile 51# must be placed under the 'protected:' designation. 52# The 'global:' designation is used *only* for data 53# items and for the members of the malloc() family. 54# 55 56# Mnemonic conditional input identifiers: 57# 58# - amd64, i386, sparc32, sparcv9: Correspond to ISA subdirectories used to 59# hold per-platform code. Note however that we use 'sparc32' instead of 60# 'sparc'. Since '_sparc' is predefined to apply to, all sparc platforms, 61# naming the 32-bit version 'sparc' would be too likely to cause errors. 62# 63# - lf64: Defined on platforms that offer the 32-bit largefile APIs 64# 65$if _ELF32 66$add lf64 67$endif 68$if _sparc && _ELF32 69$add sparc32 70$endif 71$if _sparc && _ELF64 72$add sparcv9 73$endif 74$if _x86 && _ELF32 75$add i386 76$endif 77$if _x86 && _ELF64 78$add amd64 79$endif 80 81SYMBOL_VERSION ILLUMOS_0.38 { 82 protected: 83 getgrouplist; 84} ILLUMOS_0.37; 85 86SYMBOL_VERSION ILLUMOS_0.37 { 87 global: 88 __stack_chk_guard { 89 ASSERT = { 90 TYPE = OBJECT; 91 SIZE = addrsize; 92 }; 93 }; 94 protected: 95 __stack_chk_fail; 96} ILLUMOS_0.36; 97 98SYMBOL_VERSION ILLUMOS_0.36 { 99 protected: 100 upanic; 101} ILLUMOS_0.35; 102 103SYMBOL_VERSION ILLUMOS_0.35 { 104 protected: 105 qsort_r; 106} ILLUMOS_0.34; 107 108SYMBOL_VERSION ILLUMOS_0.34 { 109 protected: 110 futimes; 111 lutimes; 112} ILLUMOS_0.33; 113 114SYMBOL_VERSION ILLUMOS_0.33 { 115 protected: 116 c16rtomb; 117 c32rtomb; 118 mbrtoc16; 119 mbrtoc32; 120} ILLUMOS_0.32; 121 122SYMBOL_VERSION ILLUMOS_0.32 { 123 protected: 124 fmemopen; 125 open_memstream; 126 open_wmemstream; 127} ILLUMOS_0.31; 128 129SYMBOL_VERSION ILLUMOS_0.31 { 130 protected: 131 __unlockpt_xpg4; 132} ILLUMOS_0.30; 133 134SYMBOL_VERSION ILLUMOS_0.30 { 135 protected: 136 reallocf; 137} ILLUMOS_0.29; 138 139SYMBOL_VERSION ILLUMOS_0.29 { 140 protected: 141 getrandom; 142} ILLUMOS_0.28; 143 144SYMBOL_VERSION ILLUMOS_0.28 { 145 protected: 146 pthread_attr_getname_np; 147 pthread_attr_setname_np; 148 pthread_getname_np; 149 pthread_setname_np; 150 thr_getname; 151 thr_setname; 152} ILLUMOS_0.27; 153 154SYMBOL_VERSION ILLUMOS_0.27 { # memset_s(3C) and set_constraint_handler_s(3C) 155 protected: 156 abort_handler_s; 157 ignore_handler_s; 158 memset_s; 159 set_constraint_handler_s; 160} ILLUMOS_0.26; 161 162SYMBOL_VERSION ILLUMOS_0.26 { # fts(3) LFS 163$if lf64 164 protected: 165 fts_children64; 166 fts_close64; 167 fts_open64; 168 fts_read64; 169 fts_set64; 170$endif 171} ILLUMOS_0.25; 172 173SYMBOL_VERSION ILLUMOS_0.25 { # inet_* moved from libnsl/libsocket 174 protected: 175 inet_addr; 176 inet_aton; 177 inet_lnaof; 178 inet_makeaddr; 179 inet_netof; 180 inet_network; 181 inet_ntoa; 182 inet_ntoa_r; 183 inet_ntop; 184 inet_pton; 185} ILLUMOS_0.24; 186 187SYMBOL_VERSION ILLUMOS_0.24 { # openbsd compat 188 protected: 189 freezero; 190 recallocarray; 191} ILLUMOS_0.23; 192 193SYMBOL_VERSION ILLUMOS_0.23 { # openbsd compat 194 protected: 195 fts_children; 196 fts_close; 197 fts_open; 198 fts_read; 199 fts_set; 200 reallocarray; 201 strtonum; 202} ILLUMOS_0.22; 203 204SYMBOL_VERSION ILLUMOS_0.22 { # endian(3C) 205 protected: 206 htobe16; 207 htobe32; 208 htobe64; 209 htole16; 210 htole32; 211 htole64; 212 betoh16; 213 letoh16; 214 be16toh; 215 le16toh; 216 betoh32; 217 letoh32; 218 be32toh; 219 le32toh; 220 betoh64; 221 letoh64; 222 be64toh; 223 le64toh; 224} ILLUMOS_0.21; 225 226SYMBOL_VERSION ILLUMOS_0.21 { 227 protected: 228 pthread_attr_get_np; 229} ILLUMOS_0.20; 230 231SYMBOL_VERSION ILLUMOS_0.20 { # C11 232 protected: 233 aligned_alloc; 234 at_quick_exit; 235 call_once; 236 cnd_broadcast; 237 cnd_destroy; 238 cnd_init; 239 cnd_signal; 240 cnd_timedwait; 241 cnd_wait; 242 mtx_destroy; 243 mtx_init; 244 mtx_lock; 245 mtx_timedlock; 246 mtx_trylock; 247 mtx_unlock; 248 quick_exit; 249 thrd_create; 250 thrd_current; 251 thrd_detach; 252 thrd_equal; 253 thrd_exit; 254 thrd_join; 255 thrd_sleep; 256 thrd_yield; 257 timespec_get; 258 tss_create; 259 tss_delete; 260 tss_get; 261 tss_set; 262} ILLUMOS_0.19; 263 264SYMBOL_VERSION ILLUMOS_0.19 { # flock 265 protected: 266 flock; 267} ILLUMOS_0.18; 268 269SYMBOL_VERSION ILLUMOS_0.18 { # signalfd 270 protected: 271 signalfd; 272} ILLUMOS_0.17; 273 274SYMBOL_VERSION ILLUMOS_0.17 { # glob(3C) LFS 275$if lf64 276 protected: 277 _glob_ext64; 278 _globfree_ext64; 279$endif 280} ILLUMOS_0.16; 281 282SYMBOL_VERSION ILLUMOS_0.16 { # timerfd 283 protected: 284 timerfd_create; 285 timerfd_gettime; 286 timerfd_settime; 287} ILLUMOS_0.15; 288 289SYMBOL_VERSION ILLUMOS_0.15 { # epoll(3C) 290 protected: 291 epoll_create; 292 epoll_create1; 293 epoll_ctl; 294 epoll_wait; 295 epoll_pwait; 296} ILLUMOS_0.14; 297 298SYMBOL_VERSION ILLUMOS_0.14 { # strerror_l 299 protected: 300 strerror_l; 301} ILLUMOS_0.13; 302 303SYMBOL_VERSION ILLUMOS_0.13 { # eventfd 304 protected: 305 eventfd; 306 eventfd_read; 307 eventfd_write; 308} ILLUMOS_0.12; 309 310SYMBOL_VERSION ILLUMOS_0.12 { # arc4random and friends 311 protected: 312 arc4random; 313 arc4random_buf; 314 arc4random_uniform; 315 explicit_bzero; 316 getentropy; 317} ILLUMOS_0.11; 318 319SYMBOL_VERSION ILLUMOS_0.11 { # Illumos additions 320 protected: 321 iswxdigit_l; 322 isxdigit_l; 323} ILLUMOS_0.10; 324 325SYMBOL_VERSION ILLUMOS_0.10 { # Illumos additions 326 protected: 327 preadv; 328 pwritev; 329 330$if lf64 331 preadv64; 332 pwritev64; 333$endif 334} ILLUMOS_0.9; 335 336SYMBOL_VERSION ILLUMOS_0.9 { 337 protected: 338 wcsnrtombs; 339 wcsnrtombs_l; 340} ILLUMOS_0.8; 341 342SYMBOL_VERSION ILLUMOS_0.8 { # POSIX 2008 newlocale and friends 343 protected: 344 __global_locale; 345 __mb_cur_max; 346 __mb_cur_max_l; 347 btowc_l; 348 duplocale; 349 fgetwc_l; 350 freelocale; 351 getwc_l; 352 isalnum_l; 353 isalpha_l; 354 isblank_l; 355 iscntrl_l; 356 isdigit_l; 357 isgraph_l; 358 islower_l; 359 isprint_l; 360 ispunct_l; 361 isspace_l; 362 isupper_l; 363 iswideogram; 364 iswideogram_l; 365 iswnumber; 366 iswnumber_l; 367 iswhexnumber; 368 iswhexnumber_l; 369 iswphonogram; 370 iswphonogram_l; 371 iswspecial; 372 iswspecial_l; 373 iswalnum_l; 374 iswalpha_l; 375 iswblank_l; 376 iswcntrl_l; 377 iswctype_l; 378 iswdigit_l; 379 iswgraph_l; 380 iswlower_l; 381 iswprint_l; 382 iswpunct_l; 383 iswspace_l; 384 iswupper_l; 385 mblen_l; 386 mbrlen_l; 387 mbsinit_l; 388 mbsnrtowcs; 389 mbsnrtowcs_l; 390 mbsrtowcs_l; 391 mbstowcs_l; 392 mbtowc_l; 393 newlocale; 394 nl_langinfo_l; 395 strcasecmp_l; 396 strcasestr_l; 397 strcoll_l; 398 strfmon_l; 399 strftime_l; 400 strncasecmp_l; 401 strptime_l; 402 strxfrm_l; 403 tolower_l; 404 toupper_l; 405 towlower_l; 406 towupper_l; 407 towctrans_l; 408 uselocale; 409 wcrtomb_l; 410 wcscasecmp_l; 411 wcscoll_l; 412 wcsncasecmp_l; 413 wcsrtombs_l; 414 wcstombs_l; 415 wcswidth_l; 416 wcsxfrm_l; 417 wctob_l; 418 wctomb_l; 419 wctrans_l; 420 wctype_l; 421 wcwidth_l; 422} ILLUMOS_0.7; 423 424SYMBOL_VERSION ILLUMOS_0.7 { # Illumos additions 425 protected: 426 _glob_ext; 427 _globfree_ext; 428} ILLUMOS_0.6; 429 430SYMBOL_VERSION ILLUMOS_0.6 { # Illumos additions 431 protected: 432 getloginx; 433 getloginx_r; 434 __posix_getloginx_r; 435} ILLUMOS_0.5; 436 437SYMBOL_VERSION ILLUMOS_0.5 { # common C++ ABI exit handlers 438 protected: 439 __cxa_atexit; 440 __cxa_finalize; 441} ILLUMOS_0.4; 442 443SYMBOL_VERSION ILLUMOS_0.4 { # Illumos additions 444 protected: 445 pipe2; 446 dup3; 447 mkostemp; 448 mkostemps; 449 450$if lf64 451 mkostemp64; 452 mkostemps64; 453$endif 454} ILLUMOS_0.3; 455 456SYMBOL_VERSION ILLUMOS_0.3 { # Illumos additions 457 protected: 458 assfail3; 459} ILLUMOS_0.2; 460 461SYMBOL_VERSION ILLUMOS_0.2 { # Illumos additions 462 protected: 463 posix_spawn_pipe_np; 464} ILLUMOS_0.1; 465 466SYMBOL_VERSION ILLUMOS_0.1 { # Illumos additions 467 protected: 468 timegm; 469} SUNW_1.23; 470 471SYMBOL_VERSION SUNW_1.23 { # SunOS 5.11 (Solaris 11) 472 global: 473 _nl_domain_bindings { 474 ASSERT = { 475 TYPE = OBJECT; 476 SIZE = addrsize; 477 }; 478 }; 479 _nl_msg_cat_cntr { 480 ASSERT = { 481 TYPE = OBJECT; 482 SIZE = 4; 483 }; 484 }; 485 486$if _ELF32 487 dl_iterate_phdr { 488 TYPE = FUNCTION; 489 FILTER = /usr/lib/ld.so.1; 490 }; 491$elif sparcv9 492 dl_iterate_phdr { 493 TYPE = FUNCTION; 494 FILTER = /usr/lib/sparcv9/ld.so.1; 495 }; 496$elif amd64 497 dl_iterate_phdr { 498 TYPE = FUNCTION; 499 FILTER = /usr/lib/amd64/ld.so.1; 500 }; 501$else 502$error unknown platform 503$endif 504 505 protected: 506 507$if sparc32 508 __align_cpy_1; 509$endif 510 511 addrtosymstr; 512 aio_cancel; 513 aiocancel; 514 aio_error; 515 aio_fsync; 516 aio_read; 517 aioread; 518 aio_return; 519 aio_suspend; 520 aiowait; 521 aio_waitn; 522 aio_write; 523 aiowrite; 524 asprintf; 525 assfail; 526 backtrace; 527 backtrace_symbols; 528 backtrace_symbols_fd; 529 canonicalize_file_name; 530 clearenv; 531 clock_getres; 532 clock_gettime; 533 clock_nanosleep; 534 clock_settime; 535 daemon; 536 dirfd; 537 door_bind; 538 door_call; 539 door_create; 540 door_cred; 541 door_getparam; 542 door_info; 543 door_return; 544 door_revoke; 545 door_server_create; 546 door_setparam; 547 door_ucred; 548 door_unbind; 549 door_xcreate; 550 err; 551 errx; 552 faccessat; 553 fchmodat; 554 fcloseall; 555 fdatasync; 556 ffsl; 557 ffsll; 558 fgetattr; 559 fls; 560 flsl; 561 flsll; 562 forkallx; 563 forkx; 564 fsetattr; 565 getattrat; 566 getdelim; 567 getline; 568 get_nprocs; 569 get_nprocs_conf; 570 getprogname; 571 htonl; 572 htonll; 573 htons; 574 linkat; 575 lio_listio; 576 memmem; 577 mkdirat; 578 mkdtemp; 579 mkfifoat; 580 mknodat; 581 mkstemps; 582 mmapobj; 583 mq_close; 584 mq_getattr; 585 mq_notify; 586 mq_open; 587 mq_receive; 588 mq_reltimedreceive_np; 589 mq_reltimedsend_np; 590 mq_send; 591 mq_setattr; 592 mq_timedreceive; 593 mq_timedsend; 594 mq_unlink; 595 nanosleep; 596 ntohl; 597 ntohll; 598 ntohs; 599 posix_fadvise; 600 posix_fallocate; 601 posix_madvise; 602 posix_memalign; 603 posix_spawn_file_actions_addclosefrom_np; 604 posix_spawnattr_getsigignore_np; 605 posix_spawnattr_setsigignore_np; 606 ppoll; 607 priv_basicset; 608 pthread_key_create_once_np; 609 pthread_mutexattr_getrobust; 610 pthread_mutexattr_setrobust; 611 pthread_mutex_consistent; 612 readlinkat; 613 sched_getparam; 614 sched_get_priority_max; 615 sched_get_priority_min; 616 sched_getscheduler; 617 sched_rr_get_interval; 618 sched_setparam; 619 sched_setscheduler; 620 sched_yield; 621 sem_close; 622 sem_destroy; 623 sem_getvalue; 624 sem_init; 625 sem_open; 626 sem_post; 627 sem_reltimedwait_np; 628 sem_timedwait; 629 sem_trywait; 630 sem_unlink; 631 sem_wait; 632 setattrat; 633 setprogname; 634 _sharefs; 635 shm_open; 636 shm_unlink; 637 sigqueue; 638 sigtimedwait; 639 sigwaitinfo; 640 smt_pause; 641 stpcpy; 642 stpncpy; 643 strcasestr; 644 strchrnul; 645 strndup; 646 strnlen; 647 strnstr; 648 strsep; 649 symlinkat; 650 thr_keycreate_once; 651 timer_create; 652 timer_delete; 653 timer_getoverrun; 654 timer_gettime; 655 timer_settime; 656 u8_strcmp; 657 u8_validate; 658 uconv_u16tou32; 659 uconv_u16tou8; 660 uconv_u32tou16; 661 uconv_u32tou8; 662 uconv_u8tou16; 663 uconv_u8tou32; 664 vasprintf; 665 verr; 666 verrx; 667 vforkx; 668 vwarn; 669 vwarnx; 670 warn; 671 warnx; 672 wcpcpy; 673 wcpncpy; 674 wcscasecmp; 675 wcsdup; 676 wcsncasecmp; 677 wcsnlen; 678 679$if lf64 680 aio_cancel64; 681 aio_error64; 682 aio_fsync64; 683 aio_read64; 684 aioread64; 685 aio_return64; 686 aio_suspend64; 687 aio_waitn64; 688 aio_write64; 689 aiowrite64; 690 lio_listio64; 691 mkstemps64; 692 posix_fadvise64; 693 posix_fallocate64; 694$endif 695} SUNW_1.22.7; 696 697SYMBOL_VERSION SUNW_1.22.7 { # s10u10 - SunOS 5.10 (Solaris 10) patch additions 698 protected: 699 SUNW_1.22.7; 700} SUNW_1.22.6; 701 702SYMBOL_VERSION SUNW_1.22.6 { # s10u9 - SunOS 5.10 (Solaris 10) patch additions 703 protected: 704 futimens; 705 utimensat; 706} SUNW_1.22.5; 707 708SYMBOL_VERSION SUNW_1.22.5 { # s10u8 - SunOS 5.10 (Solaris 10) patch additions 709 protected: 710 getpagesizes2; 711} SUNW_1.22.4; 712 713SYMBOL_VERSION SUNW_1.22.4 { # s10u7 - SunOS 5.10 (Solaris 10) patch additions 714 protected: 715 SUNW_1.22.4; 716} SUNW_1.22.3; 717 718SYMBOL_VERSION SUNW_1.22.3 { # SunOS 5.10 (Solaris 10) patch additions 719 protected: 720 mutex_consistent; 721 u8_textprep_str; 722 uucopy; 723 uucopystr; 724} SUNW_1.22.2; 725 726SYMBOL_VERSION SUNW_1.22.2 { # SunOS 5.10 (Solaris 10) patch additions 727 protected: 728 is_system_labeled; 729 ucred_getlabel; 730 _ucred_getlabel; 731} SUNW_1.22.1; 732 733SYMBOL_VERSION SUNW_1.22.1 { # SunOS 5.10 (Solaris 10) patch additions 734 protected: 735 atomic_add_8; 736 atomic_add_8_nv; 737 atomic_add_char { FLAGS = NODYNSORT; }; 738 atomic_add_char_nv { FLAGS = NODYNSORT; }; 739 atomic_add_int { FLAGS = NODYNSORT; }; 740 atomic_add_int_nv { FLAGS = NODYNSORT; }; 741 atomic_add_ptr { FLAGS = NODYNSORT; }; 742 atomic_add_ptr_nv { FLAGS = NODYNSORT; }; 743 atomic_add_short { FLAGS = NODYNSORT; }; 744 atomic_add_short_nv { FLAGS = NODYNSORT; }; 745 atomic_and_16; 746 atomic_and_16_nv; 747 atomic_and_32_nv; 748 atomic_and_64; 749 atomic_and_64_nv; 750 atomic_and_8; 751 atomic_and_8_nv; 752 atomic_and_uchar { FLAGS = NODYNSORT; }; 753 atomic_and_uchar_nv { FLAGS = NODYNSORT; }; 754 atomic_and_uint_nv { FLAGS = NODYNSORT; }; 755 atomic_and_ulong { FLAGS = NODYNSORT; }; 756 atomic_and_ulong_nv { FLAGS = NODYNSORT; }; 757 atomic_and_ushort { FLAGS = NODYNSORT; }; 758 atomic_and_ushort_nv { FLAGS = NODYNSORT; }; 759 atomic_cas_16; 760 atomic_cas_32; 761 atomic_cas_64; 762 atomic_cas_8; 763 atomic_cas_ptr { FLAGS = NODYNSORT; }; 764 atomic_cas_uchar { FLAGS = NODYNSORT; }; 765 atomic_cas_uint { FLAGS = NODYNSORT; }; 766 atomic_cas_ulong { FLAGS = NODYNSORT; }; 767 atomic_cas_ushort { FLAGS = NODYNSORT; }; 768 atomic_clear_long_excl { FLAGS = NODYNSORT; }; 769 atomic_dec_16; 770 atomic_dec_16_nv; 771 atomic_dec_32; 772 atomic_dec_32_nv; 773 atomic_dec_64; 774 atomic_dec_64_nv; 775 atomic_dec_8; 776 atomic_dec_8_nv; 777 atomic_dec_uchar { FLAGS = NODYNSORT; }; 778 atomic_dec_uchar_nv { FLAGS = NODYNSORT; }; 779 atomic_dec_uint { FLAGS = NODYNSORT; }; 780 atomic_dec_uint_nv { FLAGS = NODYNSORT; }; 781 atomic_dec_ulong { FLAGS = NODYNSORT; }; 782 atomic_dec_ulong_nv { FLAGS = NODYNSORT; }; 783 atomic_dec_ushort { FLAGS = NODYNSORT; }; 784 atomic_dec_ushort_nv { FLAGS = NODYNSORT; }; 785 atomic_inc_16; 786 atomic_inc_16_nv; 787 atomic_inc_32; 788 atomic_inc_32_nv; 789 atomic_inc_64; 790 atomic_inc_64_nv; 791 atomic_inc_8; 792 atomic_inc_8_nv; 793 atomic_inc_uchar { FLAGS = NODYNSORT; }; 794 atomic_inc_uchar_nv { FLAGS = NODYNSORT; }; 795 atomic_inc_uint { FLAGS = NODYNSORT; }; 796 atomic_inc_uint_nv { FLAGS = NODYNSORT; }; 797 atomic_inc_ulong { FLAGS = NODYNSORT; }; 798 atomic_inc_ulong_nv { FLAGS = NODYNSORT; }; 799 atomic_inc_ushort { FLAGS = NODYNSORT; }; 800 atomic_inc_ushort_nv { FLAGS = NODYNSORT; }; 801 atomic_or_16; 802 atomic_or_16_nv; 803 atomic_or_32_nv; 804 atomic_or_64; 805 atomic_or_64_nv; 806 atomic_or_8; 807 atomic_or_8_nv; 808 atomic_or_uchar { FLAGS = NODYNSORT; }; 809 atomic_or_uchar_nv { FLAGS = NODYNSORT; }; 810 atomic_or_uint_nv { FLAGS = NODYNSORT; }; 811 atomic_or_ulong { FLAGS = NODYNSORT; }; 812 atomic_or_ulong_nv { FLAGS = NODYNSORT; }; 813 atomic_or_ushort { FLAGS = NODYNSORT; }; 814 atomic_or_ushort_nv { FLAGS = NODYNSORT; }; 815 atomic_set_long_excl { FLAGS = NODYNSORT; }; 816 atomic_swap_16; 817 atomic_swap_32; 818 atomic_swap_64; 819 atomic_swap_8; 820 atomic_swap_ptr { FLAGS = NODYNSORT; }; 821 atomic_swap_uchar { FLAGS = NODYNSORT; }; 822 atomic_swap_uint { FLAGS = NODYNSORT; }; 823 atomic_swap_ulong { FLAGS = NODYNSORT; }; 824 atomic_swap_ushort { FLAGS = NODYNSORT; }; 825 membar_consumer; 826 membar_enter; 827 membar_exit; 828 membar_producer; 829 830$if _ELF32 831 enable_extended_FILE_stdio; 832$endif 833 834$if i386 835 # Note: atomic_[and,dec,inc,or]_64_nv are also defined above. Here, 836 # we add the NODYNSORT attribute to them. On this platform, they are 837 # aliases for the non-_nv versions. If that is changed, these lines 838 # should be removed. 839 atomic_and_64_nv { FLAGS = NODYNSORT; }; 840 atomic_dec_64_nv { FLAGS = NODYNSORT; }; 841 atomic_inc_64_nv { FLAGS = NODYNSORT; }; 842 atomic_or_64_nv { FLAGS = NODYNSORT; }; 843$endif 844$if _sparc 845 # Note: atomic_OP_WIDTH_nv symbols are also defined above. Here, 846 # we add the NODYNSORT attribute to them. On this platform, they are 847 # aliases for the non-_nv versions. If that is changed, these lines 848 # should be removed. 849 atomic_add_8_nv { FLAGS = NODYNSORT; }; 850 atomic_and_8_nv { FLAGS = NODYNSORT; }; 851 atomic_and_16_nv { FLAGS = NODYNSORT; }; 852 atomic_and_32_nv { FLAGS = NODYNSORT; }; 853 atomic_and_64_nv { FLAGS = NODYNSORT; }; 854 atomic_dec_8_nv { FLAGS = NODYNSORT; }; 855 atomic_dec_16_nv { FLAGS = NODYNSORT; }; 856 atomic_dec_32_nv { FLAGS = NODYNSORT; }; 857 atomic_dec_64_nv { FLAGS = NODYNSORT; }; 858 atomic_inc_8_nv { FLAGS = NODYNSORT; }; 859 atomic_inc_16_nv { FLAGS = NODYNSORT; }; 860 atomic_inc_32_nv { FLAGS = NODYNSORT; }; 861 atomic_inc_64_nv { FLAGS = NODYNSORT; }; 862 atomic_or_8_nv { FLAGS = NODYNSORT; }; 863 atomic_or_16_nv { FLAGS = NODYNSORT; }; 864 atomic_or_32_nv { FLAGS = NODYNSORT; }; 865 atomic_or_64_nv { FLAGS = NODYNSORT; }; 866$endif 867} SUNW_1.22; 868 869SYMBOL_VERSION SUNW_1.22 { # SunOS 5.10 (Solaris 10) 870 global: 871$if _ELF32 872 dladdr { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 873 dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 874 dlclose { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 875 dldump { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 876 dlerror { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 877 dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 878 dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 879 dlopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 880 dlsym { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1; }; 881$elif sparcv9 882 dladdr { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 883 dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 884 dlclose { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 885 dldump { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 886 dlerror { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 887 dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 888 dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 889 dlopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 890 dlsym { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1; }; 891$elif amd64 892 dladdr { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 893 dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 894 dlamd64getunwind { 895 TYPE = FUNCTION; 896 FILTER = /usr/lib/amd64/ld.so.1; 897 }; 898 dlclose { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 899 dldump { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 900 dlerror { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 901 dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 902 dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 903 dlopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 904 dlsym { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1; }; 905$else 906$error unknown platform 907$endif 908 909 protected: 910 alphasort; 911 _alphasort; 912 atomic_add_16; 913 atomic_add_16_nv; 914 atomic_add_32; 915 atomic_add_32_nv; 916 atomic_add_64; 917 atomic_add_64_nv; 918 atomic_add_long { FLAGS = NODYNSORT; }; 919 atomic_add_long_nv { FLAGS = NODYNSORT; }; 920 atomic_and_32; 921 atomic_and_uint { FLAGS = NODYNSORT; }; 922 atomic_or_32; 923 atomic_or_uint { FLAGS = NODYNSORT; }; 924 _Exit; 925 getisax; 926 _getisax; 927 getopt_clip; 928 _getopt_clip; 929 getopt_long; 930 _getopt_long; 931 getopt_long_only; 932 _getopt_long_only; 933 getpeerucred; 934 _getpeerucred; 935 getpflags; 936 _getpflags; 937 getppriv; 938 _getppriv; 939 getprivimplinfo; 940 _getprivimplinfo; 941 getzoneid; 942 getzoneidbyname; 943 getzonenamebyid; 944 imaxabs; 945 imaxdiv; 946 isblank; 947 iswblank; 948 port_alert; 949 port_associate; 950 port_create; 951 port_dissociate; 952 port_get; 953 port_getn; 954 port_send; 955 port_sendn; 956 posix_openpt; 957 posix_spawn; 958 posix_spawnattr_destroy; 959 posix_spawnattr_getflags; 960 posix_spawnattr_getpgroup; 961 posix_spawnattr_getschedparam; 962 posix_spawnattr_getschedpolicy; 963 posix_spawnattr_getsigdefault; 964 posix_spawnattr_getsigmask; 965 posix_spawnattr_init; 966 posix_spawnattr_setflags; 967 posix_spawnattr_setpgroup; 968 posix_spawnattr_setschedparam; 969 posix_spawnattr_setschedpolicy; 970 posix_spawnattr_setsigdefault; 971 posix_spawnattr_setsigmask; 972 posix_spawn_file_actions_addclose; 973 posix_spawn_file_actions_adddup2; 974 posix_spawn_file_actions_addopen; 975 posix_spawn_file_actions_destroy; 976 posix_spawn_file_actions_init; 977 posix_spawnp; 978 priv_addset; 979 _priv_addset; 980 priv_allocset; 981 _priv_allocset; 982 priv_copyset; 983 _priv_copyset; 984 priv_delset; 985 _priv_delset; 986 priv_emptyset; 987 _priv_emptyset; 988 priv_fillset; 989 _priv_fillset; 990 __priv_free_info; 991 priv_freeset; 992 _priv_freeset; 993 priv_getbyname; 994 _priv_getbyname; 995 __priv_getbyname; 996 priv_getbynum; 997 _priv_getbynum; 998 __priv_getbynum; 999 __priv_getdata; 1000 priv_getsetbyname; 1001 _priv_getsetbyname; 1002 __priv_getsetbyname; 1003 priv_getsetbynum; 1004 _priv_getsetbynum; 1005 __priv_getsetbynum; 1006 priv_gettext; 1007 _priv_gettext; 1008 priv_ineffect; 1009 _priv_ineffect; 1010 priv_intersect; 1011 _priv_intersect; 1012 priv_inverse; 1013 _priv_inverse; 1014 priv_isemptyset; 1015 _priv_isemptyset; 1016 priv_isequalset; 1017 _priv_isequalset; 1018 priv_isfullset; 1019 _priv_isfullset; 1020 priv_ismember; 1021 _priv_ismember; 1022 priv_issubset; 1023 _priv_issubset; 1024 __priv_parse_info; 1025 priv_set; 1026 _priv_set; 1027 priv_set_to_str; 1028 _priv_set_to_str; 1029 __priv_set_to_str; 1030 priv_str_to_set; 1031 _priv_str_to_set; 1032 priv_union; 1033 _priv_union; 1034 pselect; 1035 pthread_attr_getstack; 1036 pthread_attr_setstack; 1037 pthread_barrierattr_destroy; 1038 pthread_barrierattr_getpshared; 1039 pthread_barrierattr_init; 1040 pthread_barrierattr_setpshared; 1041 pthread_barrier_destroy; 1042 pthread_barrier_init; 1043 pthread_barrier_wait; 1044 pthread_condattr_getclock; 1045 pthread_condattr_setclock; 1046 pthread_mutexattr_getrobust_np { FLAGS = NODYNSORT; }; 1047 pthread_mutexattr_setrobust_np { FLAGS = NODYNSORT; }; 1048 pthread_mutex_consistent_np { FLAGS = NODYNSORT; }; 1049 pthread_mutex_reltimedlock_np; 1050 pthread_mutex_timedlock; 1051 pthread_rwlock_reltimedrdlock_np; 1052 pthread_rwlock_reltimedwrlock_np; 1053 pthread_rwlock_timedrdlock; 1054 pthread_rwlock_timedwrlock; 1055 pthread_setschedprio; 1056 pthread_spin_destroy; 1057 pthread_spin_init; 1058 pthread_spin_lock; 1059 pthread_spin_trylock; 1060 pthread_spin_unlock; 1061 rctlblk_set_recipient_pid; 1062 scandir; 1063 _scandir; 1064 schedctl_exit; 1065 schedctl_init; 1066 schedctl_lookup; 1067 sema_reltimedwait; 1068 sema_timedwait; 1069 setenv; 1070 setpflags; 1071 _setpflags; 1072 setppriv; 1073 _setppriv; 1074 strerror_r; 1075 strtof; 1076 strtoimax; 1077 strtold; 1078 strtoumax; 1079 ucred_free; 1080 _ucred_free; 1081 ucred_get; 1082 _ucred_get; 1083 ucred_getegid; 1084 _ucred_getegid; 1085 ucred_geteuid; 1086 _ucred_geteuid; 1087 ucred_getgroups; 1088 _ucred_getgroups; 1089 ucred_getpflags; 1090 _ucred_getpflags; 1091 ucred_getpid; 1092 _ucred_getpid; 1093 ucred_getprivset; 1094 _ucred_getprivset; 1095 ucred_getprojid; 1096 _ucred_getprojid; 1097 ucred_getrgid; 1098 _ucred_getrgid; 1099 ucred_getruid; 1100 _ucred_getruid; 1101 ucred_getsgid; 1102 _ucred_getsgid; 1103 ucred_getsuid; 1104 _ucred_getsuid; 1105 ucred_getzoneid; 1106 _ucred_getzoneid; 1107 ucred_size; 1108 _ucred_size; 1109 unsetenv; 1110 wcstof; 1111 wcstoimax; 1112 wcstold; 1113 wcstoll; 1114 wcstoull; 1115 wcstoumax; 1116 1117$if lf64 1118 alphasort64; 1119 _alphasort64; 1120 pselect_large_fdset; 1121 scandir64; 1122 _scandir64; 1123$endif 1124 1125$if _ELF64 1126 walkcontext; 1127$endif 1128 1129$if _sparc 1130 # Note: atomic_add_[16,32,64]_nv are also defined above. Here, we add 1131 # the NODYNSORT attribute to them. On this platform, they are aliases 1132 # for the non-_nv versions. If that is changed, these lines should be 1133 # removed. 1134 atomic_add_16_nv { FLAGS = NODYNSORT; }; 1135 atomic_add_32_nv { FLAGS = NODYNSORT; }; 1136 atomic_add_64_nv { FLAGS = NODYNSORT; }; 1137$endif 1138 1139$if i386 1140 # Note: atomic_add_64_nv is also defined above. Here, we add the 1141 # NODYNSORT attribute to it. On this platform, it is an aliases for 1142 # atomic_add_64. If that is changed, this line should be removed. 1143 atomic_add_64_nv { FLAGS = NODYNSORT; }; 1144$endif 1145 1146$if amd64 1147 # Exception unwind APIs required by the amd64 ABI 1148 _SUNW_Unwind_DeleteException; 1149 _SUNW_Unwind_ForcedUnwind; 1150 _SUNW_Unwind_GetCFA; 1151 _SUNW_Unwind_GetGR; 1152 _SUNW_Unwind_GetIP; 1153 _SUNW_Unwind_GetLanguageSpecificData; 1154 _SUNW_Unwind_GetRegionStart; 1155 _SUNW_Unwind_RaiseException; 1156 _SUNW_Unwind_Resume; 1157 _SUNW_Unwind_SetGR; 1158 _SUNW_Unwind_SetIP; 1159 _UA_CLEANUP_PHASE { 1160 ASSERT = { 1161 TYPE = OBJECT; 1162 SIZE = 4; 1163 }; 1164 }; 1165 _UA_FORCE_UNWIND { 1166 ASSERT = { 1167 TYPE = OBJECT; 1168 SIZE = 4; 1169 }; 1170 }; 1171 _UA_HANDLER_FRAME { 1172 ASSERT = { 1173 TYPE = OBJECT; 1174 SIZE = 4; 1175 }; 1176 }; 1177 _UA_SEARCH_PHASE { 1178 ASSERT = { 1179 TYPE = OBJECT; 1180 SIZE = 4; 1181 }; 1182 }; 1183 _Unwind_DeleteException; 1184 _Unwind_ForcedUnwind; 1185 _Unwind_GetCFA; 1186 _Unwind_GetGR; 1187 _Unwind_GetIP; 1188 _Unwind_GetLanguageSpecificData; 1189 _Unwind_GetRegionStart; 1190 _Unwind_RaiseException; 1191 _Unwind_Resume; 1192 _Unwind_SetGR; 1193 _Unwind_SetIP; 1194$endif 1195} SUNW_1.21.3; 1196 1197SYMBOL_VERSION SUNW_1.21.3 { # SunOS 5.9 (Solaris 9) patch additions 1198 protected: 1199 forkall; 1200} SUNW_1.21.2; 1201 1202SYMBOL_VERSION SUNW_1.21.2 { # SunOS 5.9 (Solaris 9) patch additions 1203 protected: 1204 getustack; 1205 _getustack; 1206 setustack; 1207 _setustack; 1208 stack_getbounds; 1209 _stack_getbounds; 1210 _stack_grow; 1211 stack_inbounds; 1212 _stack_inbounds; 1213 stack_setbounds; 1214 _stack_setbounds; 1215 stack_violation; 1216 _stack_violation; 1217 1218$if _sparc 1219 __makecontext_v2; 1220 ___makecontext_v2; 1221$endif 1222} SUNW_1.21.1; 1223 1224SYMBOL_VERSION SUNW_1.21.1 { # SunOS 5.9 (Solaris 9) patch additions 1225 protected: 1226 crypt_gensalt; 1227} SUNW_1.21; 1228 1229SYMBOL_VERSION SUNW_1.21 { # SunOS 5.9 (Solaris 9) 1230 protected: 1231 attropen; 1232 _attropen; 1233 bind_textdomain_codeset; 1234 closefrom; 1235 _closefrom; 1236 cond_reltimedwait; 1237 dcngettext; 1238 dngettext; 1239 fchownat; 1240 _fchownat; 1241 fdopendir; 1242 _fdopendir; 1243 fdwalk; 1244 _fdwalk; 1245 fstatat; 1246 _fstatat; 1247 futimesat; 1248 _futimesat; 1249 getcpuid; 1250 _getcpuid; 1251 gethomelgroup; 1252 _gethomelgroup { FLAGS = NODYNSORT; }; 1253 getpagesizes; 1254 getrctl; 1255 _getrctl; 1256 issetugid; 1257 _issetugid; 1258 _lwp_cond_reltimedwait; 1259 meminfo; 1260 _meminfo; 1261 ngettext; 1262 openat; 1263 _openat; 1264 printstack; 1265 priocntl; 1266 priocntlset; 1267 pset_getattr; 1268 pset_getloadavg; 1269 pset_list; 1270 pset_setattr; 1271 pthread_cond_reltimedwait_np; 1272 rctlblk_get_enforced_value; 1273 rctlblk_get_firing_time; 1274 rctlblk_get_global_action; 1275 rctlblk_get_global_flags; 1276 rctlblk_get_local_action; 1277 rctlblk_get_local_flags; 1278 rctlblk_get_privilege; 1279 rctlblk_get_recipient_pid; 1280 rctlblk_get_value; 1281 rctlblk_set_local_action; 1282 rctlblk_set_local_flags; 1283 rctlblk_set_privilege; 1284 rctlblk_set_value; 1285 rctlblk_size; 1286 rctl_walk; 1287 renameat; 1288 setrctl; 1289 _setrctl; 1290 unlinkat; 1291 _unlinkat; 1292 vfscanf; 1293 _vfscanf; 1294 vfwscanf; 1295 vscanf; 1296 _vscanf; 1297 vsscanf; 1298 _vsscanf; 1299 vswscanf; 1300 vwscanf; 1301 1302$if _ELF32 1303 walkcontext; 1304$endif 1305 1306$if lf64 1307 attropen64; 1308 _attropen64; 1309 fstatat64; 1310 _fstatat64; 1311 openat64; 1312 _openat64; 1313$endif 1314} SUNW_1.20.4; 1315 1316SYMBOL_VERSION SUNW_1.20.4 { # SunOS 5.8 (Solaris 8) patch additions 1317 protected: 1318 semtimedop; 1319 _semtimedop; 1320} SUNW_1.20.1; 1321 1322SYMBOL_VERSION SUNW_1.20.1 { # SunOS 5.8 (Solaris 8) patch additions 1323 protected: 1324 getacct; 1325 _getacct; 1326 getprojid; 1327 _getprojid; 1328 gettaskid; 1329 _gettaskid; 1330 msgids; 1331 _msgids; 1332 msgsnap; 1333 _msgsnap; 1334 putacct; 1335 _putacct; 1336 semids; 1337 _semids; 1338 settaskid; 1339 _settaskid; 1340 shmids; 1341 _shmids; 1342 wracct; 1343 _wracct; 1344} SUNW_1.20; 1345 1346SYMBOL_VERSION SUNW_1.20 { # SunOS 5.8 (Solaris 8) 1347 protected: 1348 getextmntent; 1349 resetmnttab; 1350} SUNW_1.19; 1351 1352SYMBOL_VERSION SUNW_1.19 { 1353 protected: 1354 strlcat; 1355 strlcpy; 1356 umount2; 1357 _umount2; 1358} SUNW_1.18.1; 1359 1360SYMBOL_VERSION SUNW_1.18.1 { 1361 protected: 1362 __fsetlocking; 1363} SUNW_1.18; 1364 1365SYMBOL_VERSION SUNW_1.18 { # SunOS 5.7 (Solaris 7) 1366 protected: 1367 btowc; 1368 __fbufsize; 1369 __flbf; 1370 _flushlbf; 1371 __fpending; 1372 __fpurge; 1373 __freadable; 1374 __freading; 1375 fwide; 1376 fwprintf; 1377 __fwritable; 1378 __fwriting; 1379 fwscanf; 1380 getloadavg; 1381 isaexec; 1382 mbrlen; 1383 mbrtowc; 1384 mbsinit; 1385 mbsrtowcs; 1386 pcsample; 1387 pthread_attr_getguardsize; 1388 pthread_attr_setguardsize; 1389 pthread_getconcurrency; 1390 pthread_mutexattr_gettype; 1391 pthread_mutexattr_settype; 1392 pthread_rwlockattr_destroy; 1393 pthread_rwlockattr_getpshared; 1394 pthread_rwlockattr_init; 1395 pthread_rwlockattr_setpshared; 1396 pthread_rwlock_destroy; 1397 pthread_rwlock_init; 1398 pthread_rwlock_rdlock; 1399 pthread_rwlock_tryrdlock; 1400 pthread_rwlock_trywrlock; 1401 pthread_rwlock_unlock; 1402 pthread_rwlock_wrlock; 1403 pthread_setconcurrency; 1404 swprintf; 1405 swscanf; 1406 __sysconf_xpg5; 1407 vfwprintf; 1408 vswprintf; 1409 vwprintf; 1410 wcrtomb; 1411 wcsrtombs; 1412 wcsstr; 1413 wctob; 1414 wmemchr; 1415 wmemcmp; 1416 wmemcpy; 1417 wmemmove; 1418 wmemset; 1419 wprintf; 1420 wscanf; 1421 1422$if _ELF32 1423 select_large_fdset; 1424$endif 1425} SUNW_1.17; 1426 1427# The empty versions SUNW_1.2 through SUNW_1.17 must be preserved because 1428# applications built on Solaris 2.6 Beta (when they did contain symbols) 1429# may depend on them. All symbol content for SunOS 5.6 is now in SUNW_1.1 1430 1431SYMBOL_VERSION SUNW_1.17 { 1432 protected: 1433 SUNW_1.17; 1434} SUNW_1.16; 1435 1436SYMBOL_VERSION SUNW_1.16 { 1437 protected: 1438 SUNW_1.16; 1439} SUNW_1.15; 1440 1441SYMBOL_VERSION SUNW_1.15 { 1442 protected: 1443 SUNW_1.15; 1444} SUNW_1.14; 1445 1446SYMBOL_VERSION SUNW_1.14 { 1447 protected: 1448 SUNW_1.14; 1449} SUNW_1.13; 1450 1451SYMBOL_VERSION SUNW_1.13 { 1452 protected: 1453 SUNW_1.13; 1454} SUNW_1.12; 1455 1456SYMBOL_VERSION SUNW_1.12 { 1457 protected: 1458 SUNW_1.12; 1459} SUNW_1.11; 1460 1461SYMBOL_VERSION SUNW_1.11 { 1462 protected: 1463 SUNW_1.11; 1464} SUNW_1.10; 1465 1466SYMBOL_VERSION SUNW_1.10 { 1467 protected: 1468 SUNW_1.10; 1469} SUNW_1.9; 1470 1471SYMBOL_VERSION SUNW_1.9 { 1472 protected: 1473 SUNW_1.9; 1474} SUNW_1.8; 1475 1476SYMBOL_VERSION SUNW_1.8 { 1477 protected: 1478 SUNW_1.8; 1479} SUNW_1.7; 1480 1481SYMBOL_VERSION SUNW_1.7 { 1482 protected: 1483 SUNW_1.7; 1484} SUNW_1.6; 1485 1486SYMBOL_VERSION SUNW_1.6 { 1487 protected: 1488 SUNW_1.6; 1489} SUNW_1.5; 1490 1491SYMBOL_VERSION SUNW_1.5 { 1492 protected: 1493 SUNW_1.5; 1494} SUNW_1.4; 1495 1496SYMBOL_VERSION SUNW_1.4 { 1497 protected: 1498 SUNW_1.4; 1499} SUNW_1.3; 1500 1501SYMBOL_VERSION SUNW_1.3 { 1502 protected: 1503 SUNW_1.3; 1504} SUNW_1.2; 1505 1506SYMBOL_VERSION SUNW_1.2 { 1507 protected: 1508 SUNW_1.2; 1509} SUNW_1.1; 1510 1511SYMBOL_VERSION SUNW_1.1 { # SunOS 5.6 (Solaris 2.6) 1512 global: 1513 __loc1 { 1514 ASSERT = { 1515 TYPE = OBJECT; 1516 SIZE = addrsize; 1517 }; 1518 }; 1519 protected: 1520 basename; 1521 bindtextdomain; 1522 bsd_signal; 1523 dbm_clearerr; 1524 dbm_error; 1525 dcgettext; 1526 dgettext; 1527 directio; 1528 dirname; 1529 endusershell; 1530 _exithandle; 1531 fgetwc; 1532 fgetws; 1533 fpgetround; 1534 fpsetround; 1535 fputwc; 1536 fputws; 1537 fseeko; 1538 ftello; 1539 ftrylockfile; 1540 getexecname; 1541 _getexecname; 1542 getpassphrase; 1543 gettext; 1544 getusershell; 1545 getwc; 1546 getwchar; 1547 getws; 1548 isenglish; 1549 isideogram; 1550 isnumber; 1551 isphonogram; 1552 isspecial; 1553 iswalnum; 1554 iswalpha; 1555 iswcntrl; 1556 iswctype; 1557 iswdigit; 1558 iswgraph; 1559 iswlower; 1560 iswprint; 1561 iswpunct; 1562 iswspace; 1563 iswupper; 1564 iswxdigit; 1565 ____loc1; 1566 _longjmp; 1567 _lwp_sema_trywait; 1568 ntp_adjtime; 1569 _ntp_adjtime; 1570 ntp_gettime; 1571 _ntp_gettime; 1572 __posix_asctime_r; 1573 __posix_ctime_r; 1574 __posix_getgrgid_r; 1575 __posix_getgrnam_r; 1576 __posix_getlogin_r; 1577 __posix_getpwnam_r; 1578 __posix_getpwuid_r; 1579 __posix_sigwait; 1580 __posix_ttyname_r; 1581 pset_assign; 1582 pset_bind; 1583 pset_create; 1584 pset_destroy; 1585 pset_info; 1586 pthread_atfork; 1587 pthread_attr_destroy; 1588 pthread_attr_getdetachstate; 1589 pthread_attr_getinheritsched; 1590 pthread_attr_getschedparam; 1591 pthread_attr_getschedpolicy; 1592 pthread_attr_getscope; 1593 pthread_attr_getstackaddr; 1594 pthread_attr_getstacksize; 1595 pthread_attr_init; 1596 pthread_attr_setdetachstate; 1597 pthread_attr_setinheritsched; 1598 pthread_attr_setschedparam; 1599 pthread_attr_setschedpolicy; 1600 pthread_attr_setscope; 1601 pthread_attr_setstackaddr; 1602 pthread_attr_setstacksize; 1603 pthread_cancel; 1604 __pthread_cleanup_pop; 1605 __pthread_cleanup_push; 1606 pthread_create; 1607 pthread_detach; 1608 pthread_equal; 1609 pthread_exit; 1610 pthread_getschedparam; 1611 pthread_getspecific; 1612 pthread_join; 1613 pthread_key_create; 1614 pthread_key_delete; 1615 pthread_kill; 1616 pthread_once; 1617 pthread_self; 1618 pthread_setcancelstate; 1619 pthread_setcanceltype; 1620 pthread_setschedparam; 1621 pthread_setspecific; 1622 pthread_sigmask; 1623 pthread_testcancel; 1624 putwc; 1625 putwchar; 1626 putws; 1627 regcmp; 1628 regex; 1629 resolvepath; 1630 _resolvepath; 1631 rwlock_destroy { FLAGS = NODYNSORT; }; 1632 _rwlock_destroy { FLAGS = NODYNSORT; }; 1633 sema_destroy; 1634 _sema_destroy; 1635 _setjmp; 1636 setusershell; 1637 siginterrupt; 1638 sigstack; 1639 snprintf; 1640 strtows; 1641 sync_instruction_memory; 1642 textdomain; 1643 thr_main; 1644 towctrans; 1645 towlower; 1646 towupper; 1647 ungetwc; 1648 vsnprintf; 1649 watoll; 1650 wcscat; 1651 wcschr; 1652 wcscmp; 1653 wcscoll; 1654 wcscpy; 1655 wcscspn; 1656 wcsftime; 1657 wcslen; 1658 wcsncat; 1659 wcsncmp; 1660 wcsncpy; 1661 wcspbrk; 1662 wcsrchr; 1663 wcsspn; 1664 wcstod; 1665 wcstok; 1666 wcstol; 1667 wcstoul; 1668 wcswcs; 1669 wcswidth; 1670 wcsxfrm; 1671 wctrans; 1672 wctype; 1673 wcwidth; 1674 wscasecmp; 1675 wscat; 1676 wschr; 1677 wscmp; 1678 wscol; 1679 wscoll; 1680 wscpy; 1681 wscspn; 1682 wsdup; 1683 wslen; 1684 wsncasecmp; 1685 wsncat; 1686 wsncmp; 1687 wsncpy; 1688 wspbrk; 1689 wsprintf; 1690 wsrchr; 1691 wsscanf; 1692 wsspn; 1693 wstod; 1694 wstok; 1695 wstol; 1696 wstoll; 1697 wstostr; 1698 wsxfrm; 1699 __xpg4_putmsg; 1700 __xpg4_putpmsg; 1701 1702$if lf64 1703 creat64; 1704 _creat64; 1705 fgetpos64; 1706 fopen64; 1707 freopen64; 1708 fseeko64; 1709 fsetpos64; 1710 fstat64; 1711 _fstat64; 1712 fstatvfs64; 1713 _fstatvfs64; 1714 ftello64; 1715 ftruncate64; 1716 _ftruncate64; 1717 ftw64; 1718 _ftw64; 1719 getdents64; 1720 _getdents64; 1721 getrlimit64; 1722 _getrlimit64; 1723 lockf64; 1724 _lockf64; 1725 lseek64; 1726 _lseek64; 1727 lstat64; 1728 _lstat64; 1729 mkstemp64; 1730 _mkstemp64; 1731 mmap64; 1732 _mmap64; 1733 nftw64; 1734 _nftw64; 1735 open64; 1736 _open64; 1737 __posix_readdir_r; 1738 pread64; 1739 _pread64; 1740 pwrite64; 1741 _pwrite64; 1742 readdir64; 1743 _readdir64; 1744 readdir64_r; 1745 _readdir64_r; 1746 setrlimit64; 1747 _setrlimit64; 1748 s_fcntl; 1749 _s_fcntl { FLAGS = NODYNSORT; }; 1750 s_ioctl; 1751 stat64; 1752 _stat64; 1753 statvfs64; 1754 _statvfs64; 1755 tell64; 1756 _tell64; 1757 tmpfile64; 1758 truncate64; 1759 _truncate64; 1760 _xftw64; 1761$endif 1762 1763$if _sparc 1764 __flt_rounds; 1765$endif 1766} SUNW_0.9; 1767 1768SYMBOL_VERSION SUNW_0.9 { # SunOS 5.5 (Solaris 2.5) 1769 protected: 1770 acl; 1771 bcmp; 1772 bcopy; 1773 bzero; 1774 facl; 1775 ftime; 1776 getdtablesize; 1777 gethostid; 1778 gethostname; 1779 getpagesize; 1780 getpriority; 1781 getrusage; 1782 getwd; 1783 index; 1784 initstate; 1785 killpg; 1786 _nsc_trydoorcall; 1787 pthread_condattr_destroy; 1788 pthread_condattr_getpshared; 1789 pthread_condattr_init; 1790 pthread_condattr_setpshared; 1791 pthread_cond_broadcast; 1792 pthread_cond_destroy; 1793 pthread_cond_init; 1794 pthread_cond_signal; 1795 pthread_cond_timedwait; 1796 pthread_cond_wait; 1797 pthread_mutexattr_destroy; 1798 pthread_mutexattr_getprioceiling; 1799 pthread_mutexattr_getprotocol; 1800 pthread_mutexattr_getpshared; 1801 pthread_mutexattr_init; 1802 pthread_mutexattr_setprioceiling; 1803 pthread_mutexattr_setprotocol; 1804 pthread_mutexattr_setpshared; 1805 pthread_mutex_destroy; 1806 pthread_mutex_getprioceiling; 1807 pthread_mutex_init; 1808 pthread_mutex_lock; 1809 pthread_mutex_setprioceiling; 1810 pthread_mutex_trylock; 1811 pthread_mutex_unlock; 1812 random; 1813 reboot; 1814 re_comp; 1815 re_exec; 1816 rindex; 1817 setbuffer; 1818 sethostname; 1819 setlinebuf; 1820 setpriority; 1821 setregid; 1822 setreuid; 1823 setstate; 1824 srandom; 1825 thr_min_stack; 1826 thr_stksegment; 1827 ualarm; 1828 usleep; 1829 wait3; 1830 wait4; 1831} SUNW_0.8; 1832 1833SYMBOL_VERSION SUNW_0.8 { # SunOS 5.4 (Solaris 2.4) 1834 global: 1835 __xpg4 { 1836 ASSERT = { 1837 TYPE = OBJECT; 1838 SIZE = 4; 1839 }; 1840 FLAGS = NODIRECT; 1841 }; 1842 protected: 1843 addsev; 1844 cond_broadcast { FLAGS = NODYNSORT; }; 1845 cond_destroy { FLAGS = NODYNSORT; }; 1846 cond_init; 1847 cond_signal { FLAGS = NODYNSORT; }; 1848 cond_timedwait; 1849 cond_wait; 1850 confstr; 1851 fnmatch; 1852 _getdate_err_addr; 1853 glob; 1854 globfree; 1855 iconv; 1856 iconv_close; 1857 iconv_open; 1858 lfmt; 1859 mutex_destroy { FLAGS = NODYNSORT; }; 1860 mutex_init; 1861 mutex_lock { FLAGS = NODYNSORT; }; 1862 mutex_trylock { FLAGS = NODYNSORT; }; 1863 mutex_unlock { FLAGS = NODYNSORT; }; 1864 pfmt; 1865 regcomp; 1866 regerror; 1867 regexec; 1868 regfree; 1869 rwlock_init; 1870 rw_rdlock { FLAGS = NODYNSORT; }; 1871 rw_read_held; 1872 rw_tryrdlock { FLAGS = NODYNSORT; }; 1873 rw_trywrlock { FLAGS = NODYNSORT; }; 1874 rw_unlock { FLAGS = NODYNSORT; }; 1875 rw_write_held; 1876 rw_wrlock { FLAGS = NODYNSORT; }; 1877 sema_held; 1878 sema_init; 1879 sema_post; 1880 sema_trywait; 1881 sema_wait; 1882 setcat; 1883 sigfpe; 1884 strfmon; 1885 strptime; 1886 thr_continue; 1887 thr_create; 1888 thr_exit; 1889 thr_getconcurrency; 1890 thr_getprio; 1891 thr_getspecific; 1892 thr_join; 1893 thr_keycreate; 1894 thr_kill; 1895 thr_self { FLAGS = NODYNSORT; }; 1896 thr_setconcurrency; 1897 thr_setprio; 1898 thr_setspecific; 1899 thr_sigsetmask; 1900 thr_suspend; 1901 thr_yield; 1902 vlfmt; 1903 vpfmt; 1904 wordexp; 1905 wordfree; 1906} SUNW_0.7; 1907 1908SYMBOL_VERSION SUNW_0.7 { # SunOS 5.3 (Solaris 2.3) 1909 global: 1910 altzone { 1911 ASSERT = { 1912 TYPE = OBJECT; 1913 SIZE = addrsize; 1914 }; 1915 }; 1916 _ctype { 1917 ASSERT = { 1918 BINDING = WEAK; 1919 ALIAS = __ctype; 1920 }; 1921 }; 1922 isnanf { TYPE = FUNCTION; FILTER = libm.so.2; }; 1923 lone { ASSERT = { TYPE = OBJECT; SIZE = 8; }; }; 1924 lten { ASSERT = { TYPE = OBJECT; SIZE = 8; }; }; 1925 lzero { ASSERT = { TYPE = OBJECT; SIZE = 8; }; }; 1926 memalign { FLAGS = NODIRECT; }; 1927 modff { TYPE = FUNCTION; FILTER = libm.so.2; }; 1928 nss_default_finders { 1929 ASSERT = { 1930 TYPE = OBJECT; 1931 SIZE = addrsize; 1932 }; 1933 }; 1934 _sibuf { 1935 ASSERT = { 1936 TYPE = OBJECT; 1937 SIZE = 1032; 1938 }; 1939 }; 1940 _sobuf { 1941 ASSERT = { 1942 TYPE = OBJECT; 1943 SIZE = 1032; 1944 }; 1945 }; 1946 _sys_buslist { 1947 ASSERT = { 1948 TYPE = OBJECT; 1949 SIZE = addrsize[3]; 1950 }; 1951 }; 1952 _sys_cldlist { 1953 ASSERT = { 1954 TYPE = OBJECT; 1955 SIZE = addrsize[6]; 1956 }; 1957 }; 1958 _sys_fpelist { 1959 ASSERT = { 1960 TYPE = OBJECT; 1961 SIZE = addrsize[9]; 1962 }; 1963 }; 1964 _sys_illlist { 1965 ASSERT = { 1966 TYPE = OBJECT; 1967 SIZE = addrsize[8]; 1968 }; 1969 }; 1970 _sys_segvlist { 1971 ASSERT = { 1972 TYPE = OBJECT; 1973 SIZE = addrsize[2]; 1974 }; 1975 }; 1976 _sys_siginfolistp { 1977 ASSERT = { 1978 TYPE = OBJECT; 1979 SIZE = addrsize; 1980 }; 1981 }; 1982 _sys_siglist { 1983 ASSERT = { 1984 TYPE = OBJECT; 1985 SIZE = addrsize[34]; 1986 }; 1987 }; 1988 _sys_siglistn { 1989 ASSERT = { 1990 TYPE = OBJECT; 1991 SIZE = 4; 1992 }; 1993 }; 1994 _sys_siglistp { 1995 ASSERT = { 1996 TYPE = OBJECT; 1997 SIZE = addrsize; 1998 }; 1999 }; 2000 _sys_traplist { 2001 ASSERT = { 2002 TYPE = OBJECT; 2003 SIZE = addrsize[6]; 2004 }; 2005 }; 2006 valloc { FLAGS = NODIRECT; }; 2007 2008$if _ELF32 2009 _bufendtab { 2010 ASSERT = { 2011 TYPE = OBJECT; 2012 SIZE = 244; 2013 }; 2014 }; 2015 _lastbuf { 2016 ASSERT = { 2017 TYPE = OBJECT; 2018 SIZE = 4; 2019 }; 2020 }; 2021 sys_errlist { 2022 ASSERT = { 2023 TYPE = OBJECT; 2024 SIZE = 608; 2025 }; 2026 }; 2027 sys_nerr { 2028 ASSERT = { 2029 BINDING = WEAK; 2030 ALIAS = _sys_num_err; 2031 }; 2032 }; 2033 _sys_nsig { 2034 ASSERT = { 2035 TYPE = OBJECT; 2036 SIZE = 4; 2037 }; 2038 }; 2039$endif 2040 2041 protected: 2042 a64l; 2043 adjtime; 2044 ascftime; 2045 _assert; 2046 atoll; 2047 brk; 2048 __builtin_alloca; 2049 cftime; 2050 closelog; 2051 csetcol; 2052 csetlen; 2053 ctermid_r; 2054 dbm_close; 2055 dbm_delete; 2056 dbm_fetch; 2057 dbm_firstkey; 2058 dbm_nextkey; 2059 dbm_open; 2060 dbm_store; 2061 decimal_to_double; 2062 decimal_to_extended; 2063 decimal_to_quadruple; 2064 decimal_to_single; 2065 double_to_decimal; 2066 drand48; 2067 econvert; 2068 ecvt; 2069 endnetgrent; 2070 endspent; 2071 endutent; 2072 endutxent; 2073 erand48; 2074 euccol; 2075 euclen; 2076 eucscol; 2077 extended_to_decimal; 2078 fchroot; 2079 fconvert; 2080 fcvt; 2081 ffs; 2082 fgetspent; 2083 fgetspent_r; 2084 _filbuf; 2085 file_to_decimal; 2086 finite; 2087 _flsbuf; 2088 fork1 { FLAGS = NODYNSORT; }; 2089 fpclass; 2090 fpgetmask; 2091 fpgetsticky; 2092 fpsetmask; 2093 fpsetsticky; 2094 fstatfs; 2095 ftruncate; 2096 ftw; 2097 func_to_decimal; 2098 gconvert; 2099 gcvt; 2100 getdents; 2101 gethrtime; 2102 gethrvtime; 2103 getmntany; 2104 getmntent; 2105 getnetgrent; 2106 getnetgrent_r; 2107 getpw; 2108 getspent; 2109 getspent_r; 2110 getspnam; 2111 getspnam_r; 2112 getutent; 2113 getutid; 2114 getutline; 2115 getutmp; 2116 getutmpx; 2117 getutxent; 2118 getutxid; 2119 getutxline; 2120 getvfsany; 2121 getvfsent; 2122 getvfsfile; 2123 getvfsspec; 2124 getwidth; 2125 gsignal; 2126 hasmntopt; 2127 innetgr; 2128 insque; 2129 _insque; 2130 jrand48; 2131 l64a; 2132 ladd; 2133 lckpwdf; 2134 lcong48; 2135 ldivide; 2136 lexp10; 2137 llabs; 2138 lldiv; 2139 llog10; 2140 llseek; 2141 lltostr; 2142 lmul; 2143 lrand48; 2144 lshiftl; 2145 lsub; 2146 _lwp_cond_broadcast; 2147 _lwp_cond_signal; 2148 _lwp_cond_timedwait; 2149 _lwp_cond_wait; 2150 _lwp_continue; 2151 _lwp_info; 2152 _lwp_kill; 2153 _lwp_mutex_lock; 2154 _lwp_mutex_trylock; 2155 _lwp_mutex_unlock; 2156 _lwp_self; 2157 _lwp_sema_init; 2158 _lwp_sema_post; 2159 _lwp_sema_wait; 2160 _lwp_suspend; 2161 madvise; 2162 __major; 2163 __makedev; 2164 mincore; 2165 __minor; 2166 mkstemp; 2167 _mkstemp; 2168 mlockall; 2169 mrand48; 2170 munlockall; 2171 _mutex_held { FLAGS = NODYNSORT; }; 2172 _mutex_lock { FLAGS = NODYNSORT; }; 2173 nrand48; 2174 _nss_netdb_aliases; 2175 _nss_XbyY_buf_alloc; 2176 _nss_XbyY_buf_free; 2177 __nsw_extended_action; 2178 __nsw_freeconfig; 2179 __nsw_getconfig; 2180 openlog; 2181 plock; 2182 p_online; 2183 pread; 2184 __priocntl; 2185 __priocntlset; 2186 processor_bind; 2187 processor_info; 2188 psiginfo; 2189 psignal; 2190 putpwent; 2191 putspent; 2192 pututline; 2193 pututxline; 2194 pwrite; 2195 qeconvert; 2196 qecvt; 2197 qfconvert; 2198 qfcvt; 2199 qgconvert; 2200 qgcvt; 2201 quadruple_to_decimal; 2202 realpath; 2203 remque; 2204 _remque; 2205 _rw_read_held; 2206 _rw_write_held; 2207 seconvert; 2208 seed48; 2209 select; 2210 _sema_held; 2211 setegid; 2212 seteuid; 2213 setlogmask; 2214 setnetgrent; 2215 setspent; 2216 settimeofday; 2217 setutent; 2218 setutxent; 2219 sfconvert; 2220 sgconvert; 2221 sig2str; 2222 sigwait; 2223 single_to_decimal; 2224 srand48; 2225 ssignal; 2226 statfs; 2227 str2sig; 2228 strcasecmp; 2229 string_to_decimal; 2230 strncasecmp; 2231 strsignal; 2232 strtoll; 2233 strtoull; 2234 swapctl; 2235 _syscall; 2236 sysfs; 2237 syslog; 2238 _syslog; 2239 tmpnam_r; 2240 truncate; 2241 ttyslot; 2242 uadmin; 2243 ulckpwdf; 2244 ulltostr; 2245 unordered; 2246 updwtmp; 2247 updwtmpx; 2248 ustat; 2249 utimes; 2250 utmpname; 2251 utmpxname; 2252 vfork; 2253 vhangup; 2254 vsyslog; 2255 yield; 2256$if i386 2257 # Note: _syscall is also defined above. Here, we add the NODYNSORT 2258 # attribute to it. On this platform, _syscall is an alias to syscall 2259 # If that is changed, this lines should be removed. 2260 _syscall { FLAGS = NODYNSORT; }; 2261$endif 2262 2263 # The 32-bit sparc ABI requires SISCD_2.3. On other platforms, those symbols 2264 # go directly into SUNW_0.7. 2265$if sparc32 2266} SISCD_2.3; 2267 2268SYMBOL_VERSION SISCD_2.3 { 2269$endif 2270 2271 global: 2272 errno { 2273 ASSERT = { 2274 TYPE = OBJECT; 2275 SIZE = 4; 2276 }; 2277 FLAGS = NODIRECT; 2278 }; 2279 2280$if _ELF64 2281 _iob { ASSERT = { TYPE = OBJECT; SIZE = 2560; }; }; 2282$elif _ELF32 2283 _iob { ASSERT = { TYPE = OBJECT; SIZE = 960; }; }; 2284$else 2285$error unknown ELFCLASS 2286$endif 2287 2288 protected: 2289 addseverity; 2290 _addseverity; 2291 asctime_r; 2292 crypt; 2293 _crypt; 2294 ctime_r; 2295 encrypt; 2296 _encrypt; 2297 endgrent; 2298 endpwent; 2299 ___errno; 2300 fgetgrent; 2301 fgetgrent_r; 2302 fgetpwent; 2303 fgetpwent_r; 2304 flockfile; 2305 funlockfile; 2306 getchar_unlocked; 2307 getc_unlocked; 2308 getgrent; 2309 getgrent_r; 2310 getgrgid_r; 2311 getgrnam_r; 2312 getitimer; 2313 _getitimer; 2314 getlogin_r; 2315 getpwent; 2316 getpwent_r; 2317 getpwnam_r; 2318 getpwuid_r; 2319 gettimeofday; 2320 _gettimeofday; 2321 gmtime_r; 2322 localtime_r; 2323 putchar_unlocked; 2324 putc_unlocked; 2325 rand_r; 2326 readdir_r; 2327 setgrent; 2328 setitimer; 2329 _setitimer; 2330 setkey; 2331 _setkey; 2332 setpwent; 2333 strtok_r; 2334 sysinfo; 2335 _sysinfo; 2336 ttyname_r; 2337 2338$if _ELF32 2339 __div64; 2340 __mul64; 2341 __rem64; 2342 __udiv64; 2343 __urem64; 2344$endif 2345 2346$if sparc32 2347 __dtoll; 2348 __dtoull; 2349 __ftoll; 2350 __ftoull; 2351 _Q_lltoq; 2352 _Q_qtoll; 2353 _Q_qtoull; 2354 _Q_ulltoq; 2355 sbrk; 2356 _sbrk; 2357 __umul64 { FLAGS = NODYNSORT; }; # Same address as __mul64 2358$endif 2359 2360 # On 32-bit platforms, the following symbols go into SYSVABI_1.3, but 2361 # on other platforms they go directly into the current version (which 2362 # will be either SUNW_0.7, or SISCD_2.3, depending on the similar 2363 # issue described above. 2364$if _ELF32 2365} SYSVABI_1.3; 2366 2367SYMBOL_VERSION SYSVABI_1.3 { 2368$endif 2369 2370 global: 2371 _altzone { ASSERT = { BINDING = WEAK; ALIAS = altzone; }; }; 2372 calloc { FLAGS = NODIRECT; }; 2373 __ctype { 2374 ASSERT = { 2375 TYPE = OBJECT; 2376 SIZE = 521; 2377 }; 2378 }; 2379 daylight { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2380 _daylight { ASSERT = { BINDING = WEAK; ALIAS = daylight; }; }; 2381 environ { 2382 ASSERT = { 2383 BINDING = WEAK; 2384 ALIAS = _environ; 2385 }; 2386 FLAGS = NODIRECT; 2387 }; 2388 _environ { 2389 ASSERT = { 2390 TYPE = OBJECT; 2391 SIZE = addrsize; 2392 }; 2393 FLAGS = NODIRECT; 2394 }; 2395 free { FLAGS = NODIRECT; }; 2396 frexp { TYPE = FUNCTION; FILTER = libm.so.2; }; 2397 getdate_err { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2398 _getdate_err { 2399 ASSERT = { 2400 BINDING = WEAK; 2401 ALIAS = getdate_err; 2402 }; 2403 }; 2404 getenv; 2405 __huge_val { ASSERT = { TYPE = OBJECT; SIZE = 8; }; }; 2406 __iob { ASSERT = { BINDING = WEAK; ALIAS = _iob; }; }; 2407 isnan { TYPE = FUNCTION; FILTER = libm.so.2; }; 2408 _isnan { TYPE = FUNCTION; FILTER = libm.so.2; }; 2409 isnand { TYPE = FUNCTION; FILTER = libm.so.2; }; 2410 _isnand { TYPE = FUNCTION; FILTER = libm.so.2; }; 2411 ldexp { TYPE = FUNCTION; FILTER = libm.so.2; }; 2412 logb { TYPE = FUNCTION; FILTER = libm.so.2; }; 2413 malloc { FLAGS = NODIRECT; }; 2414 memcmp; 2415 memcpy; 2416 memmove; 2417 memset; 2418 modf { TYPE = FUNCTION; FILTER = libm.so.2; }; 2419 _modf { TYPE = FUNCTION; FILTER = libm.so.2; }; 2420 nextafter { TYPE = FUNCTION; FILTER = libm.so.2; }; 2421 _nextafter { TYPE = FUNCTION; FILTER = libm.so.2; }; 2422 _numeric { ASSERT = { TYPE = OBJECT; SIZE = 2; }; }; 2423 optarg { 2424 ASSERT = { 2425 TYPE = OBJECT; 2426 SIZE = addrsize; 2427 }; 2428 }; 2429 opterr { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2430 optind { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2431 optopt { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2432 realloc { FLAGS = NODIRECT; }; 2433 scalb { TYPE = FUNCTION; FILTER = libm.so.2; }; 2434 _scalb { TYPE = FUNCTION; FILTER = libm.so.2; }; 2435 timezone { 2436 ASSERT = { 2437 TYPE = OBJECT; 2438 SIZE = addrsize; 2439 }; 2440 }; 2441 _timezone { ASSERT = { BINDING = WEAK; ALIAS = timezone; }; }; 2442 tzname { 2443 ASSERT = { 2444 TYPE = OBJECT; 2445 SIZE = addrsize[2]; 2446 }; 2447 }; 2448 _tzname { 2449 ASSERT = { 2450 BINDING = WEAK; 2451 ALIAS = tzname; 2452 }; 2453 }; 2454$if i386 2455 _fp_hw { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2456$endif 2457 2458 protected: 2459 abort; 2460 abs; 2461 access; 2462 _access; 2463 acct; 2464 _acct; 2465 alarm; 2466 _alarm; 2467 asctime; 2468 __assert; 2469 atexit; 2470 atof; 2471 atoi; 2472 atol; 2473 bsearch; 2474 catclose; 2475 _catclose; 2476 catgets; 2477 _catgets; 2478 catopen; 2479 _catopen; 2480 cfgetispeed; 2481 _cfgetispeed; 2482 cfgetospeed; 2483 _cfgetospeed; 2484 cfsetispeed; 2485 _cfsetispeed; 2486 cfsetospeed; 2487 _cfsetospeed; 2488 chdir; 2489 _chdir; 2490 chmod; 2491 _chmod; 2492 chown; 2493 _chown; 2494 chroot; 2495 _chroot; 2496 _cleanup; 2497 clearerr; 2498 clock; 2499 close; 2500 _close; 2501 closedir; 2502 _closedir; 2503 creat; 2504 _creat; 2505 ctermid; 2506 ctime; 2507 cuserid; 2508 _cuserid; 2509 difftime; 2510 div; 2511 dup; 2512 _dup; 2513 dup2; 2514 _dup2; 2515 execl; 2516 _execl; 2517 execle; 2518 _execle; 2519 execlp; 2520 _execlp; 2521 execv; 2522 _execv; 2523 execve; 2524 _execve; 2525 execvp; 2526 _execvp; 2527 exit; 2528 _exit; 2529 fattach; 2530 _fattach; 2531 fchdir; 2532 _fchdir; 2533 fchmod; 2534 _fchmod; 2535 fchown; 2536 _fchown; 2537 fclose; 2538 fcntl; 2539 _fcntl; 2540 fdetach; 2541 _fdetach; 2542 fdopen; 2543 _fdopen; 2544 feof; 2545 ferror; 2546 fflush; 2547 fgetc; 2548 fgetpos; 2549 fgets; 2550 __filbuf; 2551 fileno; 2552 _fileno; 2553 __flsbuf; 2554 fmtmsg; 2555 _fmtmsg; 2556 fopen; 2557 _fork; 2558 fork; 2559 fpathconf; 2560 _fpathconf; 2561 fprintf; 2562 fputc; 2563 fputs; 2564 fread; 2565 freopen; 2566 fscanf; 2567 fseek; 2568 fsetpos; 2569 fstat; 2570 _fstat; 2571 fstatvfs; 2572 _fstatvfs; 2573 fsync; 2574 _fsync; 2575 ftell; 2576 ftok; 2577 _ftok; 2578 fwrite; 2579 getc; 2580 getchar; 2581 getcontext; 2582 _getcontext; 2583 getcwd; 2584 _getcwd; 2585 getdate; 2586 _getdate; 2587 getegid; 2588 _getegid; 2589 geteuid; 2590 _geteuid; 2591 getgid; 2592 _getgid; 2593 getgrgid; 2594 getgrnam; 2595 getgroups; 2596 _getgroups; 2597 getlogin; 2598 getmsg; 2599 _getmsg; 2600 getopt; 2601 _getopt; 2602 getpass; 2603 _getpass; 2604 getpgid; 2605 _getpgid; 2606 getpgrp; 2607 _getpgrp; 2608 getpid; 2609 _getpid; 2610 getpmsg; 2611 _getpmsg; 2612 getppid; 2613 _getppid; 2614 getpwnam; 2615 getpwuid; 2616 getrlimit; 2617 _getrlimit; 2618 gets; 2619 getsid; 2620 _getsid; 2621 getsubopt; 2622 _getsubopt; 2623 gettxt; 2624 _gettxt; 2625 getuid; 2626 _getuid; 2627 getw; 2628 _getw; 2629 gmtime; 2630 grantpt; 2631 _grantpt; 2632 hcreate; 2633 _hcreate; 2634 hdestroy; 2635 _hdestroy; 2636 hsearch; 2637 _hsearch; 2638 initgroups; 2639 _initgroups; 2640 ioctl; 2641 _ioctl; 2642 isalnum; 2643 isalpha; 2644 isascii; 2645 _isascii; 2646 isastream; 2647 _isastream; 2648 isatty; 2649 _isatty; 2650 iscntrl; 2651 isdigit; 2652 isgraph; 2653 islower; 2654 isprint; 2655 ispunct; 2656 isspace; 2657 isupper; 2658 isxdigit; 2659 kill; 2660 _kill; 2661 labs; 2662 lchown; 2663 _lchown; 2664 ldiv; 2665 lfind; 2666 _lfind; 2667 link; 2668 _link; 2669 localeconv; 2670 localtime; 2671 lockf; 2672 _lockf; 2673 longjmp; 2674 lsearch; 2675 _lsearch; 2676 lseek; 2677 _lseek; 2678 lstat; 2679 _lstat; 2680 makecontext; 2681 _makecontext; 2682 mblen; 2683 mbstowcs; 2684 mbtowc; 2685 memccpy; 2686 _memccpy; 2687 memchr; 2688 memcntl; 2689 _memcntl; 2690 mkdir; 2691 _mkdir; 2692 mkfifo; 2693 _mkfifo; 2694 mknod; 2695 _mknod; 2696 mktemp; 2697 _mktemp; 2698 mktime; 2699 mlock; 2700 _mlock; 2701 mmap; 2702 _mmap; 2703 monitor; 2704 _monitor; 2705 mount; 2706 _mount; 2707 mprotect; 2708 _mprotect; 2709 msgctl; 2710 _msgctl; 2711 msgget; 2712 _msgget; 2713 msgrcv; 2714 _msgrcv; 2715 msgsnd; 2716 _msgsnd; 2717 msync; 2718 _msync; 2719 munlock; 2720 _munlock; 2721 munmap; 2722 _munmap; 2723 nftw; 2724 _nftw; 2725 nice; 2726 _nice; 2727 nl_langinfo; 2728 _nl_langinfo; 2729 open; 2730 _open; 2731 opendir; 2732 _opendir; 2733 pathconf; 2734 _pathconf; 2735 pause; 2736 _pause; 2737 pclose; 2738 _pclose; 2739 perror; 2740 pipe; 2741 _pipe; 2742 poll; 2743 _poll; 2744 popen; 2745 _popen; 2746 printf; 2747 profil; 2748 _profil; 2749 ptsname; 2750 _ptsname; 2751 putc; 2752 putchar; 2753 putenv; 2754 _putenv; 2755 putmsg; 2756 _putmsg; 2757 putpmsg; 2758 _putpmsg; 2759 puts; 2760 putw; 2761 _putw; 2762 qsort; 2763 raise; 2764 rand; 2765 read; 2766 _read; 2767 readdir; 2768 _readdir; 2769 readlink; 2770 _readlink; 2771 readv; 2772 _readv; 2773 remove; 2774 rename; 2775 _rename; 2776 rewind; 2777 rewinddir; 2778 _rewinddir; 2779 rmdir; 2780 _rmdir; 2781 scanf; 2782 seekdir; 2783 _seekdir; 2784 semctl; 2785 _semctl; 2786 semget; 2787 _semget; 2788 semop; 2789 _semop; 2790 setbuf; 2791 setcontext; 2792 _setcontext { FLAGS = NODYNSORT; }; 2793 setgid; 2794 _setgid; 2795 setgroups; 2796 _setgroups; 2797 setjmp; 2798 setlabel; 2799 setlocale; 2800 setpgid; 2801 _setpgid; 2802 setpgrp; 2803 _setpgrp; 2804 setrlimit; 2805 _setrlimit; 2806 setsid; 2807 _setsid; 2808 setuid; 2809 _setuid; 2810 setvbuf; 2811 shmat; 2812 _shmat; 2813 shmctl; 2814 _shmctl; 2815 shmdt; 2816 _shmdt; 2817 shmget; 2818 _shmget; 2819 sigaction; 2820 _sigaction { FLAGS = NODYNSORT; }; 2821 sigaddset; 2822 _sigaddset; 2823 sigaltstack; 2824 _sigaltstack; 2825 sigdelset; 2826 _sigdelset; 2827 sigemptyset; 2828 _sigemptyset; 2829 sigfillset; 2830 _sigfillset; 2831 sighold; 2832 _sighold; 2833 sigignore; 2834 _sigignore; 2835 sigismember; 2836 _sigismember; 2837 siglongjmp; 2838 _siglongjmp; 2839 signal; 2840 sigpause; 2841 _sigpause; 2842 sigpending; 2843 _sigpending; 2844 sigprocmask; 2845 _sigprocmask; 2846 sigrelse; 2847 _sigrelse; 2848 sigsend; 2849 _sigsend; 2850 sigsendset; 2851 _sigsendset; 2852 sigset; 2853 _sigset; 2854 sigsetjmp; 2855 _sigsetjmp { FLAGS = NODYNSORT; }; 2856 sigsuspend; 2857 _sigsuspend; 2858 sleep; 2859 _sleep; 2860 sprintf; 2861 srand; 2862 sscanf; 2863 stat; 2864 _stat; 2865 statvfs; 2866 _statvfs; 2867 stime; 2868 _stime; 2869 strcat; 2870 strchr; 2871 strcmp; 2872 strcoll; 2873 strcpy; 2874 strcspn; 2875 strdup; 2876 _strdup; 2877 strerror; 2878 strftime; 2879 strlen; 2880 strncat; 2881 strncmp; 2882 strncpy; 2883 strpbrk; 2884 strrchr; 2885 strspn; 2886 strstr; 2887 strtod; 2888 strtok; 2889 strtol; 2890 strtoul; 2891 strxfrm; 2892 swab; 2893 _swab; 2894 swapcontext; 2895 _swapcontext; 2896 symlink; 2897 _symlink; 2898 sync; 2899 _sync; 2900 sysconf; 2901 _sysconf; 2902 system; 2903 tcdrain; 2904 _tcdrain; 2905 tcflow; 2906 _tcflow; 2907 tcflush; 2908 _tcflush; 2909 tcgetattr; 2910 _tcgetattr; 2911 tcgetpgrp; 2912 _tcgetpgrp; 2913 tcgetsid; 2914 _tcgetsid; 2915 tcsendbreak; 2916 _tcsendbreak; 2917 tcsetattr; 2918 _tcsetattr; 2919 tcsetpgrp; 2920 _tcsetpgrp; 2921 tdelete; 2922 _tdelete; 2923 tell; 2924 _tell; 2925 telldir; 2926 _telldir; 2927 tempnam; 2928 _tempnam; 2929 tfind; 2930 _tfind; 2931 time; 2932 _time; 2933 times; 2934 _times; 2935 tmpfile; 2936 tmpnam; 2937 toascii; 2938 _toascii; 2939 tolower; 2940 _tolower; 2941 toupper; 2942 _toupper; 2943 tsearch; 2944 _tsearch; 2945 ttyname; 2946 twalk; 2947 _twalk; 2948 tzset; 2949 _tzset; 2950 ulimit; 2951 _ulimit; 2952 umask; 2953 _umask; 2954 umount; 2955 _umount; 2956 uname; 2957 _uname; 2958 ungetc; 2959 unlink; 2960 _unlink; 2961 unlockpt; 2962 _unlockpt; 2963 utime; 2964 _utime; 2965 vfprintf; 2966 vprintf; 2967 vsprintf; 2968 wait; 2969 _wait; 2970 waitid; 2971 _waitid; 2972 waitpid; 2973 _waitpid; 2974 wcstombs; 2975 wctomb; 2976 write; 2977 _write; 2978 writev; 2979 _writev; 2980 _xftw; 2981 2982$if _ELF32 2983 ptrace; 2984 _ptrace; 2985$endif 2986 2987$if i386 2988 _fxstat; 2989 _lxstat; 2990 nuname; 2991 _nuname; 2992 _xmknod; 2993 _xstat; 2994$endif 2995 2996$if !sparc32 2997 sbrk; 2998$endif 2999 3000$if _sparc 3001 __dtou; 3002 __ftou; 3003$endif 3004 3005$if sparc32 3006 .div; 3007 .mul; 3008 .rem; 3009 .stret1; 3010 .stret2; 3011 .stret4; 3012 # .stret4 and .stret8 are the same thing 3013 .stret8 { FLAGS = NODYNSORT; }; 3014 .udiv; 3015 .umul; 3016 .urem; 3017 _Q_add; 3018 _Q_cmp; 3019 _Q_cmpe; 3020 _Q_div; 3021 _Q_dtoq; 3022 _Q_feq; 3023 _Q_fge; 3024 _Q_fgt; 3025 _Q_fle; 3026 _Q_flt; 3027 _Q_fne; 3028 _Q_itoq; 3029 _Q_mul; 3030 _Q_neg; 3031 _Q_qtod; 3032 _Q_qtoi; 3033 _Q_qtos; 3034 _Q_qtou; 3035 _Q_sqrt; 3036 _Q_stoq; 3037 _Q_sub; 3038 _Q_utoq; 3039$endif 3040 3041$if sparcv9 3042 # __align_cpy_1 is an alias for memcpy. Filter it out of 3043 # the .SUNW_dynsymsort section 3044 __align_cpy_1 { FLAGS = NODYNSORT; }; 3045 __align_cpy_16; 3046 __align_cpy_2; 3047 __align_cpy_4; 3048 # __align_cpy_8 is same as __align_cpy_16 3049 __align_cpy_8 { FLAGS = NODYNSORT; }; 3050 __dtoul; 3051 __ftoul; 3052 _Qp_add; 3053 _Qp_cmp; 3054 _Qp_cmpe; 3055 _Qp_div; 3056 _Qp_dtoq; 3057 _Qp_feq; 3058 _Qp_fge; 3059 _Qp_fgt; 3060 _Qp_fle; 3061 _Qp_flt; 3062 _Qp_fne; 3063 _Qp_itoq; 3064 _Qp_mul; 3065 _Qp_neg; 3066 _Qp_qtod; 3067 _Qp_qtoi; 3068 _Qp_qtos; 3069 _Qp_qtoui; 3070 _Qp_qtoux; 3071 _Qp_qtox; 3072 _Qp_sqrt; 3073 _Qp_stoq; 3074 _Qp_sub; 3075 _Qp_uitoq; 3076 _Qp_uxtoq; 3077 _Qp_xtoq; 3078 __sparc_utrap_install; 3079$endif 3080 3081 # On amd64, we also have SYSVABI_1.3, but it contains a small subset of 3082 # the symbols put in that version on other platforms. 3083$if amd64 3084} SYSVABI_1.3; 3085 3086SYMBOL_VERSION SYSVABI_1.3 { 3087$endif 3088 global: 3089$if !_sparc 3090 __flt_rounds { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 3091$endif 3092 3093 protected: 3094 _ctermid; 3095 _getgrgid; 3096 _getgrnam; 3097 _getlogin; 3098 _getpwnam; 3099 _getpwuid; 3100 _ttyname; 3101 3102$if !sparc32 3103 _sbrk; 3104$endif 3105 3106$if _x86 3107 _fpstart; 3108 __fpstart; 3109$endif 3110}; 3111 3112 3113 3114# There should never be more than one SUNWprivate version. 3115# Don't add any more. Add new private symbols to SUNWprivate_1.1 3116 3117SYMBOL_VERSION SUNWprivate_1.1 { 3118 global: 3119 ___Argv { 3120 FLAGS = NODIRECT; 3121 ASSERT = { 3122 TYPE = OBJECT; 3123 SIZE = addrsize; 3124 }; 3125 }; 3126 cfree { FLAGS = NODIRECT; }; 3127 _cswidth { 3128 ASSERT = { 3129 TYPE = OBJECT; 3130 SIZE = 16; 3131 }; 3132 }; 3133 __ctype_mask { 3134 ASSERT = { 3135 TYPE = OBJECT; 3136 SIZE = addrsize; 3137 }; 3138 }; 3139 __environ_lock { 3140 FLAGS = NODIRECT; 3141 ASSERT = { 3142 TYPE = OBJECT; 3143 SIZE = 24; 3144 }; 3145 }; 3146 __inf_read { 3147 ASSERT = { 3148 TYPE = OBJECT; 3149 SIZE = 4; 3150 }; 3151 }; 3152 __inf_written { 3153 ASSERT = { 3154 TYPE = OBJECT; 3155 SIZE = 4; 3156 }; 3157 }; 3158 __i_size { 3159 ASSERT = { 3160 TYPE = OBJECT; 3161 SIZE = 4; 3162 }; 3163 }; 3164 _isnanf { 3165 TYPE = FUNCTION; 3166 FILTER = libm.so.2; 3167 }; 3168 __iswrune; 3169 __libc_threaded { 3170 ASSERT = { 3171 TYPE = OBJECT; 3172 SIZE = 4; 3173 }; 3174 }; 3175 _lib_version { 3176 ASSERT = { 3177 TYPE = OBJECT; 3178 SIZE = 4; 3179 }; 3180 FLAGS = NODIRECT; 3181 }; 3182 _logb { 3183 TYPE = FUNCTION; 3184 FILTER = libm.so.2; 3185 }; 3186 _lone { 3187 FLAGS = NODYNSORT; 3188 ASSERT = { 3189 BINDING = WEAK; 3190 ALIAS = lone; 3191 }; 3192 }; 3193 _lten { 3194 FLAGS = NODYNSORT; 3195 ASSERT = { 3196 BINDING = WEAK; 3197 ALIAS = lten; 3198 }; 3199 }; 3200 _lzero { 3201 FLAGS = NODYNSORT; 3202 ASSERT = { 3203 BINDING = WEAK; 3204 ALIAS = lzero; 3205 }; 3206 }; 3207 __malloc_lock { 3208 ASSERT = { 3209 TYPE = OBJECT; 3210 SIZE = 24; 3211 }; 3212 }; 3213 _memcmp; 3214 _memcpy { FLAGS = NODYNSORT; }; 3215 _memmove; 3216 _memset; 3217 _modff { 3218 TYPE = FUNCTION; 3219 FILTER = libm.so.2; 3220 }; 3221 __nan_read { 3222 ASSERT = { 3223 TYPE = OBJECT; 3224 SIZE = 4; 3225 }; 3226 }; 3227 __nan_written { 3228 ASSERT = { 3229 TYPE = OBJECT; 3230 SIZE = 4; 3231 }; 3232 }; 3233 __nextwctype; 3234 __nis_debug_bind { 3235 ASSERT = { 3236 TYPE = OBJECT; 3237 SIZE = 4; 3238 }; 3239 }; 3240 __nis_debug_calls { 3241 ASSERT = { 3242 TYPE = OBJECT; 3243 SIZE = 4; 3244 }; 3245 }; 3246 __nis_debug_file { 3247 ASSERT = { 3248 TYPE = OBJECT; 3249 SIZE = addrsize; 3250 }; 3251 }; 3252 __nis_debug_rpc { 3253 ASSERT = { 3254 TYPE = OBJECT; 3255 SIZE = 4; 3256 }; 3257 }; 3258 __nis_prefsrv { 3259 ASSERT = { 3260 TYPE = OBJECT; 3261 SIZE = addrsize; 3262 }; 3263 }; 3264 __nis_preftype { 3265 ASSERT = { 3266 TYPE = OBJECT; 3267 SIZE = addrsize; 3268 }; 3269 }; 3270 __nis_server { 3271 ASSERT = { 3272 TYPE = OBJECT; 3273 SIZE = addrsize; 3274 }; 3275 }; 3276 _nss_default_finders { 3277 ASSERT = { 3278 BINDING = WEAK; 3279 ALIAS = nss_default_finders; 3280 }; 3281 }; 3282 __progname { 3283 ASSERT = { 3284 TYPE = OBJECT; 3285 SIZE = addrsize; 3286 }; 3287 FLAGS = NODIRECT; 3288 }; 3289 3290$if _ELF64 3291 _smbuf { 3292 ASSERT = { 3293 TYPE = OBJECT; 3294 SIZE = 168; 3295 }; 3296 }; 3297$elif _ELF32 3298 _smbuf { 3299 ASSERT = { 3300 TYPE = OBJECT; 3301 SIZE = 488; 3302 }; 3303 }; 3304$else 3305$error unknown ELFCLASS 3306$endif 3307 _sp { 3308 ASSERT = { 3309 TYPE = OBJECT; 3310 SIZE = 4; 3311 }; 3312 }; 3313 __strdupa_str { 3314 ASSERT = { 3315 TYPE = TLS; 3316 SIZE = addrsize; 3317 }; 3318 FLAGS = NODIRECT; 3319 }; 3320 __strdupa_len { 3321 ASSERT = { 3322 TYPE = TLS; 3323 SIZE = addrsize; 3324 }; 3325 FLAGS = NODIRECT; 3326 }; 3327 _tdb_bootstrap { 3328 ASSERT = { 3329 BINDING = WEAK; 3330 ALIAS = __tdb_bootstrap; 3331 }; 3332 }; 3333 __threaded { 3334 ASSERT = { 3335 TYPE = OBJECT; 3336 SIZE = 4; 3337 }; 3338 }; 3339 thr_probe_getfunc_addr { 3340 ASSERT = { 3341 TYPE = OBJECT; 3342 SIZE = addrsize; 3343 }; 3344 }; 3345 __trans_lower { 3346 ASSERT = { 3347 TYPE = OBJECT; 3348 SIZE = addrsize; 3349 }; 3350 }; 3351 __trans_upper { 3352 ASSERT = { 3353 TYPE = OBJECT; 3354 SIZE = addrsize; 3355 }; 3356 }; 3357 _uberdata { 3358 ASSERT = { 3359 BINDING = WEAK; 3360 ALIAS = __uberdata; 3361 }; 3362 }; 3363 __xpg6 { 3364 ASSERT = { 3365 TYPE = OBJECT; 3366 SIZE = 4; 3367 }; 3368 FLAGS = NODIRECT; 3369 }; 3370 3371$if _ELF32 3372 _dladdr { 3373 TYPE = FUNCTION; 3374 FILTER = /usr/lib/ld.so.1; 3375 }; 3376 _dladdr1 { 3377 TYPE = FUNCTION; 3378 FILTER = /usr/lib/ld.so.1; 3379 }; 3380 _dlclose { 3381 TYPE = FUNCTION; 3382 FILTER = /usr/lib/ld.so.1; 3383 }; 3384 _dldump { 3385 TYPE = FUNCTION; 3386 FILTER = /usr/lib/ld.so.1; 3387 }; 3388 _dlerror { 3389 TYPE = FUNCTION; 3390 FILTER = /usr/lib/ld.so.1; 3391 }; 3392 _dlinfo { 3393 TYPE = FUNCTION; 3394 FILTER = /usr/lib/ld.so.1; 3395 }; 3396 _dlmopen { 3397 TYPE = FUNCTION; 3398 FILTER = /usr/lib/ld.so.1; 3399 }; 3400 _dlopen { 3401 TYPE = FUNCTION; 3402 FILTER = /usr/lib/ld.so.1; 3403 }; 3404 _dlsym { 3405 TYPE = FUNCTION; 3406 FILTER = /usr/lib/ld.so.1; 3407 }; 3408 _ld_libc { 3409 TYPE = FUNCTION; 3410 FILTER = /usr/lib/ld.so.1; 3411 }; 3412 _sys_errlist { 3413 ASSERT = { 3414 BINDING = WEAK; 3415 ALIAS = sys_errlist; 3416 }; 3417 }; 3418 _sys_errs { 3419 ASSERT = { 3420 TYPE = OBJECT; 3421 SIZE = 3216; 3422 }; 3423 }; 3424 _sys_index { 3425 ASSERT = { 3426 TYPE = OBJECT; 3427 SIZE = 608; 3428 }; 3429 }; 3430 _sys_nerr { 3431 FLAGS = NODYNSORT; 3432 ASSERT = { 3433 BINDING = WEAK; 3434 ALIAS = _sys_num_err; 3435 }; 3436 }; 3437 _sys_num_err { 3438 ASSERT = { 3439 TYPE = OBJECT; 3440 SIZE = 4; 3441 }; 3442 }; 3443$elif sparcv9 3444 _dladdr { 3445 TYPE = FUNCTION; 3446 FILTER = /usr/lib/sparcv9/ld.so.1; 3447 }; 3448 _dladdr1 { 3449 TYPE = FUNCTION; 3450 FILTER = /usr/lib/sparcv9/ld.so.1; 3451 }; 3452 _dlclose { 3453 TYPE = FUNCTION; 3454 FILTER = /usr/lib/sparcv9/ld.so.1; 3455 }; 3456 _dldump { 3457 TYPE = FUNCTION; 3458 FILTER = /usr/lib/sparcv9/ld.so.1; 3459 }; 3460 _dlerror { 3461 TYPE = FUNCTION; 3462 FILTER = /usr/lib/sparcv9/ld.so.1; 3463 }; 3464 _dlinfo { 3465 TYPE = FUNCTION; 3466 FILTER = /usr/lib/sparcv9/ld.so.1; 3467 }; 3468 _dlmopen { 3469 TYPE = FUNCTION; 3470 FILTER = /usr/lib/sparcv9/ld.so.1; 3471 }; 3472 _dlopen { 3473 TYPE = FUNCTION; 3474 FILTER = /usr/lib/sparcv9/ld.so.1; 3475 }; 3476 _dlsym { 3477 TYPE = FUNCTION; 3478 FILTER = /usr/lib/sparcv9/ld.so.1; 3479 }; 3480 _ld_libc { 3481 TYPE = FUNCTION; 3482 FILTER = /usr/lib/sparcv9/ld.so.1; 3483 }; 3484$elif amd64 3485 _dladdr { 3486 TYPE = FUNCTION; 3487 FILTER = /usr/lib/amd64/ld.so.1; 3488 }; 3489 _dladdr1 { 3490 TYPE = FUNCTION; 3491 FILTER = /usr/lib/amd64/ld.so.1; 3492 }; 3493 _dlamd64getunwind { 3494 TYPE = FUNCTION; 3495 FILTER = /usr/lib/amd64/ld.so.1; 3496 }; 3497 _dlclose { 3498 TYPE = FUNCTION; 3499 FILTER = /usr/lib/amd64/ld.so.1; 3500 }; 3501 _dldump { 3502 TYPE = FUNCTION; 3503 FILTER = /usr/lib/amd64/ld.so.1; 3504 }; 3505 _dlerror { 3506 TYPE = FUNCTION; 3507 FILTER = /usr/lib/amd64/ld.so.1; 3508 }; 3509 _dlinfo { 3510 TYPE = FUNCTION; 3511 FILTER = /usr/lib/amd64/ld.so.1; 3512 }; 3513 _dlmopen { 3514 TYPE = FUNCTION; 3515 FILTER = /usr/lib/amd64/ld.so.1; 3516 }; 3517 _dlopen { 3518 TYPE = FUNCTION; 3519 FILTER = /usr/lib/amd64/ld.so.1; 3520 }; 3521 _dlsym { 3522 TYPE = FUNCTION; 3523 FILTER = /usr/lib/amd64/ld.so.1; 3524 }; 3525 _ld_libc { 3526 TYPE = FUNCTION; 3527 FILTER = /usr/lib/amd64/ld.so.1; 3528 }; 3529$else 3530$error unknown platform 3531$endif 3532 3533$if _sparc 3534 __lyday_to_month; 3535 __mon_lengths; 3536 __yday_to_month; 3537$endif 3538$if i386 3539 _sse_hw { 3540 ASSERT = { 3541 TYPE = OBJECT; 3542 SIZE = 4; 3543 }; 3544 }; 3545$endif 3546 3547 protected: 3548 acctctl; 3549 allocids; 3550 _assert_c99; 3551 __assert_c99; 3552 _assfail; 3553 attr_count; 3554 attr_to_data_type; 3555 attr_to_name; 3556 attr_to_option; 3557 attr_to_xattr_view; 3558 _autofssys; 3559 _bufsync; 3560 _cladm; 3561 __class_quadruple; 3562 core_get_default_content; 3563 core_get_default_path; 3564 core_get_global_content; 3565 core_get_global_path; 3566 core_get_options; 3567 core_get_process_content; 3568 core_get_process_path; 3569 core_set_default_content; 3570 core_set_default_path; 3571 core_set_global_content; 3572 core_set_global_path; 3573 core_set_options; 3574 core_set_process_content; 3575 core_set_process_path; 3576 dbm_close_status; 3577 dbm_do_nextkey; 3578 dbm_setdefwrite; 3579 _D_cplx_div; 3580 _D_cplx_div_ix; 3581 _D_cplx_div_rx; 3582 _D_cplx_mul; 3583 defclose_r; 3584 defcntl; 3585 defcntl_r; 3586 defopen; 3587 defopen_r; 3588 defread; 3589 defread_r; 3590 _delete; 3591 _dgettext; 3592 _doprnt; 3593 _doscan; 3594 _errfp; 3595 _errxfp; 3596 exportfs; 3597 _F_cplx_div; 3598 _F_cplx_div_ix; 3599 _F_cplx_div_rx; 3600 _F_cplx_mul; 3601 __fgetwc_xpg5; 3602 __fgetws_xpg5; 3603 _findbuf; 3604 _findiop; 3605 __fini_daemon_priv; 3606 _finite; 3607 _fork1 { FLAGS = NODYNSORT; }; 3608 _forkall { FLAGS = NODYNSORT; }; 3609 _fpclass; 3610 _fpgetmask; 3611 _fpgetround; 3612 _fpgetsticky; 3613 _fprintf; 3614 _fpsetmask; 3615 _fpsetround; 3616 _fpsetsticky; 3617 __fputwc_xpg5; 3618 __fputws_xpg5; 3619 _ftw; 3620 _gcvt; 3621 _getarg; 3622 __getcontext; 3623 _getdents; 3624 _get_exit_frame_monitor; 3625 _getfp; 3626 _getgroupsbymember; 3627 _getlogin_r; 3628 _getsp; 3629 __gettsp; 3630 getvmusage; 3631 __getwchar_xpg5; 3632 __getwc_xpg5; 3633 gtty; 3634 __idmap_flush_kcache; 3635 __idmap_reg; 3636 __idmap_unreg; 3637 __init_daemon_priv; 3638 __init_suid_priv; 3639 _insert; 3640 inst_sync; 3641 _iswctype; 3642 klpd_create; 3643 klpd_getpath; 3644 klpd_getport; 3645 klpd_getucred; 3646 klpd_register; 3647 klpd_register_id; 3648 klpd_unregister; 3649 klpd_unregister_id; 3650 _lgrp_home_fast { FLAGS = NODYNSORT; }; 3651 _lgrpsys; 3652 _lltostr; 3653 _lock_clear; 3654 _lock_try; 3655 _ltzset; 3656 lwp_self; 3657 makeut; 3658 makeutx; 3659 _mbftowc; 3660 mcfiller; 3661 mntopt; 3662 modctl; 3663 modutx; 3664 msgctl64; 3665 __multi_innetgr; 3666 _mutex_destroy { FLAGS = NODYNSORT; }; 3667 mutex_enter; 3668 mutex_exit; 3669 mutex_held; 3670 _mutex_init { FLAGS = NODYNSORT; }; 3671 _mutex_unlock { FLAGS = NODYNSORT; }; 3672 name_to_attr; 3673 nfs_getfh; 3674 nfssvc; 3675 _nfssys; 3676 __nis_get_environment; 3677 _nss_db_state_destr; 3678 nss_default_key2str; 3679 nss_delete; 3680 nss_endent; 3681 nss_getent; 3682 _nss_initf_group; 3683 _nss_initf_netgroup; 3684 _nss_initf_passwd; 3685 _nss_initf_shadow; 3686 nss_packed_arg_init; 3687 nss_packed_context_init; 3688 nss_packed_getkey; 3689 nss_packed_set_status; 3690 nss_search; 3691 nss_setent; 3692 _nss_XbyY_fgets; 3693 _nss_XbyY_fini; 3694 __nsw_extended_action_v1; 3695 __nsw_freeconfig_v1; 3696 __nsw_getconfig_v1; 3697 __nthreads; 3698 __openattrdirat; 3699 option_to_attr; 3700 __priv_bracket; 3701 __priv_relinquish; 3702 psecflags; 3703 pset_assign_forced; 3704 pset_bind_lwp; 3705 _psignal; 3706 pthread_attr_getdaemonstate_np; 3707 pthread_attr_setdaemonstate_np; 3708 _pthread_setcleanupinit; 3709 __putwchar_xpg5; 3710 __putwc_xpg5; 3711 rctlctl; 3712 rctllist; 3713 _realbufend; 3714 _resume; 3715 _resume_ret; 3716 _rpcsys; 3717 _sbrk_grow_aligned; 3718 scrwidth; 3719 secflag_by_name; 3720 secflag_clear; 3721 secflags_copy; 3722 secflags_difference; 3723 secflags_fullset; 3724 secflags_intersection; 3725 secflags_isempty; 3726 secflag_isset; 3727 secflags_issubset; 3728 secflags_issuperset; 3729 secflag_set; 3730 secflag_to_bit; 3731 secflag_to_str; 3732 secflags_union; 3733 psecflags_validate_delta; 3734 secflags_zero; 3735 psecflags_default; 3736 secflags_parse; 3737 secflags_to_str; 3738 psecflags_validate; 3739 semctl64; 3740 _semctl64; 3741 set_setcontext_enforcement; 3742 _setbufend; 3743 __set_errno; 3744 setprojrctl; 3745 _setregid; 3746 _setreuid; 3747 setsigacthandler; 3748 shmctl64; 3749 _shmctl64; 3750 sigflag; 3751 _signal; 3752 _sigoff; 3753 _sigon; 3754 _so_accept; 3755 _so_bind; 3756 _sockconfig; 3757 _so_connect; 3758 _so_getpeername; 3759 _so_getsockname; 3760 _so_getsockopt; 3761 _so_listen; 3762 _so_recv; 3763 _so_recvfrom; 3764 _so_recvmsg; 3765 _so_send; 3766 _so_sendmsg; 3767 _so_sendto; 3768 _so_setsockopt; 3769 _so_shutdown; 3770 _so_socket; 3771 _so_socketpair; 3772 str2group; 3773 str2passwd; 3774 str2spwd; 3775 __strptime_dontzero; 3776 stty; 3777 syscall; 3778 _sysconfig; 3779 __systemcall; 3780 thr_continue_allmutators; 3781 _thr_continue_allmutators; 3782 thr_continue_mutator; 3783 _thr_continue_mutator; 3784 thr_getstate; 3785 _thr_getstate; 3786 thr_mutators_barrier; 3787 _thr_mutators_barrier; 3788 thr_probe_setup; 3789 _thr_schedctl; 3790 thr_setmutator; 3791 _thr_setmutator; 3792 thr_setstate; 3793 _thr_setstate; 3794 thr_sighndlrinfo; 3795 _thr_sighndlrinfo; 3796 _thr_slot_offset; 3797 thr_suspend_allmutators; 3798 _thr_suspend_allmutators; 3799 thr_suspend_mutator; 3800 _thr_suspend_mutator; 3801 thr_wait_mutator; 3802 _thr_wait_mutator; 3803 __tls_get_addr; 3804 _tmem_get_base; 3805 _tmem_get_nentries; 3806 _tmem_set_cleanup; 3807 tpool_create; 3808 tpool_dispatch; 3809 tpool_destroy; 3810 tpool_wait; 3811 tpool_suspend; 3812 tpool_suspended; 3813 tpool_resume; 3814 tpool_member; 3815 _ttyname_dev; 3816 _ucred_alloc; 3817 ucred_getamask; 3818 _ucred_getamask; 3819 ucred_getasid; 3820 _ucred_getasid; 3821 ucred_getatid; 3822 _ucred_getatid; 3823 ucred_getauid; 3824 _ucred_getauid; 3825 _ulltostr; 3826 _uncached_getgrgid_r; 3827 _uncached_getgrnam_r; 3828 _uncached_getpwnam_r; 3829 _uncached_getpwuid_r; 3830 __ungetwc_xpg5; 3831 _unordered; 3832 utssys; 3833 _verrfp; 3834 _verrxfp; 3835 _vwarnfp; 3836 _vwarnxfp; 3837 _warnfp; 3838 _warnxfp; 3839 __wcsftime_xpg5; 3840 __wcstok_xpg5; 3841 wdbindf; 3842 wdchkind; 3843 wddelim; 3844 _wrtchk; 3845 _xflsbuf; 3846 _xgetwidth; 3847 zone_add_datalink; 3848 zone_boot; 3849 zone_check_datalink; 3850 zone_create; 3851 zone_destroy; 3852 zone_enter; 3853 zone_getattr; 3854 zone_get_id; 3855 zone_list; 3856 zone_list_datalink; 3857 zonept; 3858 zone_remove_datalink; 3859 zone_setattr; 3860 zone_shutdown; 3861 zone_version; 3862 3863$if _ELF32 3864 __divdi3; 3865 _file_set; 3866 _fprintf_c89; 3867 _fscanf_c89; 3868 _fwprintf_c89; 3869 _fwscanf_c89; 3870 _imaxabs_c89; 3871 _imaxdiv_c89; 3872 __moddi3; 3873 _printf_c89; 3874 _scanf_c89; 3875 _snprintf_c89; 3876 _sprintf_c89; 3877 _sscanf_c89; 3878 _strtoimax_c89; 3879 _strtoumax_c89; 3880 _swprintf_c89; 3881 _swscanf_c89; 3882 __udivdi3; 3883 __umoddi3; 3884 _vfprintf_c89; 3885 _vfscanf_c89; 3886 _vfwprintf_c89; 3887 _vfwscanf_c89; 3888 _vprintf_c89; 3889 _vscanf_c89; 3890 _vsnprintf_c89; 3891 _vsprintf_c89; 3892 _vsscanf_c89; 3893 _vswprintf_c89; 3894 _vswscanf_c89; 3895 _vwprintf_c89; 3896 _vwscanf_c89; 3897 _wcstoimax_c89; 3898 _wcstoumax_c89; 3899 _wprintf_c89; 3900 _wscanf_c89; 3901$endif 3902 3903$if _sparc 3904 _cerror; 3905 install_utrap; 3906 _install_utrap; 3907 nop; 3908 _Q_cplx_div; 3909 _Q_cplx_div_ix; 3910 _Q_cplx_div_rx; 3911 _Q_cplx_lr_div; 3912 _Q_cplx_lr_div_ix; 3913 _Q_cplx_lr_div_rx; 3914 _Q_cplx_lr_mul; 3915 _Q_cplx_mul; 3916 _QgetRD; 3917 _xregs_clrptr; 3918$endif 3919 3920$if sparc32 3921 __ashldi3; 3922 __ashrdi3; 3923 _cerror64; 3924 __cmpdi2; 3925 __floatdidf; 3926 __floatdisf; 3927 __floatundidf; 3928 __floatundisf; 3929 __lshrdi3; 3930 __muldi3; 3931 __ucmpdi2; 3932$endif 3933 3934$if sparcv9 3935 __multi3; 3936$endif 3937 3938$if _x86 3939 _D_cplx_lr_div; 3940 _D_cplx_lr_div_ix; 3941 _D_cplx_lr_div_rx; 3942 _F_cplx_lr_div; 3943 _F_cplx_lr_div_ix; 3944 _F_cplx_lr_div_rx; 3945 __fltrounds; 3946 sysi86; 3947 _sysi86; 3948 _X_cplx_div; 3949 _X_cplx_div_ix; 3950 _X_cplx_div_rx; 3951 _X_cplx_lr_div; 3952 _X_cplx_lr_div_ix; 3953 _X_cplx_lr_div_rx; 3954 _X_cplx_mul; 3955 __xgetRD; 3956 __xtol; 3957 __xtoll; 3958 __xtoul; 3959 __xtoull; 3960$endif 3961 3962$if i386 3963 __divrem64; 3964 ___tls_get_addr; 3965 __udivrem64; 3966$endif 3967 3968 # The following functions should not be exported from libc, 3969 # but /lib/libm.so.2, some older versions of the Studio 3970 # compiler/debugger components, and some ancient programs 3971 # found in /usr/dist reference them. When we no longer 3972 # care about these old and broken binary objects, these 3973 # symbols should be deleted. 3974 _brk { FLAGS = NODYNSORT; }; 3975 _cond_broadcast { FLAGS = NODYNSORT; }; 3976 _cond_init { FLAGS = NODYNSORT; }; 3977 _cond_signal { FLAGS = NODYNSORT; }; 3978 _cond_wait { FLAGS = NODYNSORT; }; 3979 _ecvt { FLAGS = NODYNSORT; }; 3980 _fcvt { FLAGS = NODYNSORT; }; 3981 _getc_unlocked { FLAGS = NODYNSORT; }; 3982 _llseek { FLAGS = NODYNSORT; }; 3983 _pthread_attr_getdetachstate { FLAGS = NODYNSORT; }; 3984 _pthread_attr_getinheritsched { FLAGS = NODYNSORT; }; 3985 _pthread_attr_getschedparam { FLAGS = NODYNSORT; }; 3986 _pthread_attr_getschedpolicy { FLAGS = NODYNSORT; }; 3987 _pthread_attr_getscope { FLAGS = NODYNSORT; }; 3988 _pthread_attr_getstackaddr { FLAGS = NODYNSORT; }; 3989 _pthread_attr_getstacksize { FLAGS = NODYNSORT; }; 3990 _pthread_attr_init { FLAGS = NODYNSORT; }; 3991 _pthread_condattr_getpshared { FLAGS = NODYNSORT; }; 3992 _pthread_condattr_init { FLAGS = NODYNSORT; }; 3993 _pthread_cond_init { FLAGS = NODYNSORT; }; 3994 _pthread_create { FLAGS = NODYNSORT; }; 3995 _pthread_getschedparam { FLAGS = NODYNSORT; }; 3996 _pthread_join { FLAGS = NODYNSORT; }; 3997 _pthread_key_create { FLAGS = NODYNSORT; }; 3998 _pthread_mutexattr_getprioceiling { FLAGS = NODYNSORT; }; 3999 _pthread_mutexattr_getprotocol { FLAGS = NODYNSORT; }; 4000 _pthread_mutexattr_getpshared { FLAGS = NODYNSORT; }; 4001 _pthread_mutexattr_init { FLAGS = NODYNSORT; }; 4002 _pthread_mutex_getprioceiling { FLAGS = NODYNSORT; }; 4003 _pthread_mutex_init { FLAGS = NODYNSORT; }; 4004 _pthread_sigmask { FLAGS = NODYNSORT; }; 4005 _rwlock_init { FLAGS = NODYNSORT; }; 4006 _rw_rdlock { FLAGS = NODYNSORT; }; 4007 _rw_unlock { FLAGS = NODYNSORT; }; 4008 _rw_wrlock { FLAGS = NODYNSORT; }; 4009 _sbrk_unlocked { FLAGS = NODYNSORT; }; 4010 _select { FLAGS = NODYNSORT; }; 4011 _sema_init { FLAGS = NODYNSORT; }; 4012 _sema_post { FLAGS = NODYNSORT; }; 4013 _sema_trywait { FLAGS = NODYNSORT; }; 4014 _sema_wait { FLAGS = NODYNSORT; }; 4015 _sysfs { FLAGS = NODYNSORT; }; 4016 _thr_create { FLAGS = NODYNSORT; }; 4017 _thr_exit { FLAGS = NODYNSORT; }; 4018 _thr_getprio { FLAGS = NODYNSORT; }; 4019 _thr_getspecific { FLAGS = NODYNSORT; }; 4020 _thr_join { FLAGS = NODYNSORT; }; 4021 _thr_keycreate { FLAGS = NODYNSORT; }; 4022 _thr_kill { FLAGS = NODYNSORT; }; 4023 _thr_main { FLAGS = NODYNSORT; }; 4024 _thr_self { FLAGS = NODYNSORT; }; 4025 _thr_setspecific { FLAGS = NODYNSORT; }; 4026 _thr_sigsetmask { FLAGS = NODYNSORT; }; 4027 _thr_stksegment { FLAGS = NODYNSORT; }; 4028 _ungetc_unlocked { FLAGS = NODYNSORT; }; 4029 4030 local: 4031 _ti_thr_self { FLAGS = NODYNSORT; }; 4032 __imax_lldiv { FLAGS = NODYNSORT; }; 4033 4034 *; 4035$if lf64 4036 _seekdir64 { FLAGS = NODYNSORT; }; 4037 _telldir64 { FLAGS = NODYNSORT; }; 4038$endif 4039 4040$if _sparc 4041 __cerror { FLAGS = NODYNSORT; }; 4042$endif 4043 4044$if sparc32 4045 __cerror64 { FLAGS = NODYNSORT; }; 4046$endif 4047 4048$if sparcv9 4049 __cleanup { FLAGS = NODYNSORT; }; 4050$endif 4051 4052$if i386 4053 _syscall6 { FLAGS = NODYNSORT; }; 4054 __systemcall6 { FLAGS = NODYNSORT; }; 4055$endif 4056 4057$if amd64 4058 ___tls_get_addr { FLAGS = NODYNSORT; }; 4059$endif 4060}; 4061