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$if _x86 1959 _sys_fpelist { 1960 ASSERT = { 1961 TYPE = OBJECT; 1962 SIZE = addrsize[9]; 1963 }; 1964 }; 1965$else 1966 _sys_fpelist { 1967 ASSERT = { 1968 TYPE = OBJECT; 1969 SIZE = addrsize[8]; 1970 }; 1971 }; 1972$endif 1973 _sys_illlist { 1974 ASSERT = { 1975 TYPE = OBJECT; 1976 SIZE = addrsize[8]; 1977 }; 1978 }; 1979 _sys_segvlist { 1980 ASSERT = { 1981 TYPE = OBJECT; 1982 SIZE = addrsize[2]; 1983 }; 1984 }; 1985 _sys_siginfolistp { 1986 ASSERT = { 1987 TYPE = OBJECT; 1988 SIZE = addrsize; 1989 }; 1990 }; 1991 _sys_siglist { 1992 ASSERT = { 1993 TYPE = OBJECT; 1994 SIZE = addrsize[34]; 1995 }; 1996 }; 1997 _sys_siglistn { 1998 ASSERT = { 1999 TYPE = OBJECT; 2000 SIZE = 4; 2001 }; 2002 }; 2003 _sys_siglistp { 2004 ASSERT = { 2005 TYPE = OBJECT; 2006 SIZE = addrsize; 2007 }; 2008 }; 2009 _sys_traplist { 2010 ASSERT = { 2011 TYPE = OBJECT; 2012 SIZE = addrsize[6]; 2013 }; 2014 }; 2015 valloc { FLAGS = NODIRECT; }; 2016 2017$if _ELF32 2018$if _x86 2019 _bufendtab { 2020 ASSERT = { 2021 TYPE = OBJECT; 2022 SIZE = 244; 2023 }; 2024 }; 2025$else 2026 _bufendtab { 2027 ASSERT = { 2028 TYPE = OBJECT; 2029 SIZE = 84; 2030 }; 2031 }; 2032$endif 2033 _lastbuf { 2034 ASSERT = { 2035 TYPE = OBJECT; 2036 SIZE = 4; 2037 }; 2038 }; 2039 sys_errlist { 2040 ASSERT = { 2041 TYPE = OBJECT; 2042 SIZE = 608; 2043 }; 2044 }; 2045 sys_nerr { 2046 ASSERT = { 2047 BINDING = WEAK; 2048 ALIAS = _sys_num_err; 2049 }; 2050 }; 2051 _sys_nsig { 2052 ASSERT = { 2053 TYPE = OBJECT; 2054 SIZE = 4; 2055 }; 2056 }; 2057$endif 2058 2059 protected: 2060 a64l; 2061 adjtime; 2062 ascftime; 2063 _assert; 2064 atoll; 2065 brk; 2066 __builtin_alloca; 2067 cftime; 2068 closelog; 2069 csetcol; 2070 csetlen; 2071 ctermid_r; 2072 dbm_close; 2073 dbm_delete; 2074 dbm_fetch; 2075 dbm_firstkey; 2076 dbm_nextkey; 2077 dbm_open; 2078 dbm_store; 2079 decimal_to_double; 2080 decimal_to_extended; 2081 decimal_to_quadruple; 2082 decimal_to_single; 2083 double_to_decimal; 2084 drand48; 2085 econvert; 2086 ecvt; 2087 endnetgrent; 2088 endspent; 2089 endutent; 2090 endutxent; 2091 erand48; 2092 euccol; 2093 euclen; 2094 eucscol; 2095 extended_to_decimal; 2096 fchroot; 2097 fconvert; 2098 fcvt; 2099 ffs; 2100 fgetspent; 2101 fgetspent_r; 2102 _filbuf; 2103 file_to_decimal; 2104 finite; 2105 _flsbuf; 2106 fork1 { FLAGS = NODYNSORT; }; 2107 fpclass; 2108 fpgetmask; 2109 fpgetsticky; 2110 fpsetmask; 2111 fpsetsticky; 2112 fstatfs; 2113 ftruncate; 2114 ftw; 2115 func_to_decimal; 2116 gconvert; 2117 gcvt; 2118 getdents; 2119 gethrtime; 2120 gethrvtime; 2121 getmntany; 2122 getmntent; 2123 getnetgrent; 2124 getnetgrent_r; 2125 getpw; 2126 getspent; 2127 getspent_r; 2128 getspnam; 2129 getspnam_r; 2130 getutent; 2131 getutid; 2132 getutline; 2133 getutmp; 2134 getutmpx; 2135 getutxent; 2136 getutxid; 2137 getutxline; 2138 getvfsany; 2139 getvfsent; 2140 getvfsfile; 2141 getvfsspec; 2142 getwidth; 2143 gsignal; 2144 hasmntopt; 2145 innetgr; 2146 insque; 2147 _insque; 2148 jrand48; 2149 l64a; 2150 ladd; 2151 lckpwdf; 2152 lcong48; 2153 ldivide; 2154 lexp10; 2155 llabs; 2156 lldiv; 2157 llog10; 2158 llseek; 2159 lltostr; 2160 lmul; 2161 lrand48; 2162 lshiftl; 2163 lsub; 2164 _lwp_cond_broadcast; 2165 _lwp_cond_signal; 2166 _lwp_cond_timedwait; 2167 _lwp_cond_wait; 2168 _lwp_continue; 2169 _lwp_info; 2170 _lwp_kill; 2171 _lwp_mutex_lock; 2172 _lwp_mutex_trylock; 2173 _lwp_mutex_unlock; 2174 _lwp_self; 2175 _lwp_sema_init; 2176 _lwp_sema_post; 2177 _lwp_sema_wait; 2178 _lwp_suspend; 2179 madvise; 2180 __major; 2181 __makedev; 2182 mincore; 2183 __minor; 2184 mkstemp; 2185 _mkstemp; 2186 mlockall; 2187 mrand48; 2188 munlockall; 2189 _mutex_held { FLAGS = NODYNSORT; }; 2190 _mutex_lock { FLAGS = NODYNSORT; }; 2191 nrand48; 2192 _nss_netdb_aliases; 2193 _nss_XbyY_buf_alloc; 2194 _nss_XbyY_buf_free; 2195 __nsw_extended_action; 2196 __nsw_freeconfig; 2197 __nsw_getconfig; 2198 openlog; 2199 plock; 2200 p_online; 2201 pread; 2202 __priocntl; 2203 __priocntlset; 2204 processor_bind; 2205 processor_info; 2206 psiginfo; 2207 psignal; 2208 putpwent; 2209 putspent; 2210 pututline; 2211 pututxline; 2212 pwrite; 2213 qeconvert; 2214 qecvt; 2215 qfconvert; 2216 qfcvt; 2217 qgconvert; 2218 qgcvt; 2219 quadruple_to_decimal; 2220 realpath; 2221 remque; 2222 _remque; 2223 _rw_read_held; 2224 _rw_write_held; 2225 seconvert; 2226 seed48; 2227 select; 2228 _sema_held; 2229 setegid; 2230 seteuid; 2231 setlogmask; 2232 setnetgrent; 2233 setspent; 2234 settimeofday; 2235 setutent; 2236 setutxent; 2237 sfconvert; 2238 sgconvert; 2239 sig2str; 2240 sigwait; 2241 single_to_decimal; 2242 srand48; 2243 ssignal; 2244 statfs; 2245 str2sig; 2246 strcasecmp; 2247 string_to_decimal; 2248 strncasecmp; 2249 strsignal; 2250 strtoll; 2251 strtoull; 2252 swapctl; 2253 _syscall; 2254 sysfs; 2255 syslog; 2256 _syslog; 2257 tmpnam_r; 2258 truncate; 2259 ttyslot; 2260 uadmin; 2261 ulckpwdf; 2262 ulltostr; 2263 unordered; 2264 updwtmp; 2265 updwtmpx; 2266 ustat; 2267 utimes; 2268 utmpname; 2269 utmpxname; 2270 vfork; 2271 vhangup; 2272 vsyslog; 2273 yield; 2274$if i386 2275 # Note: _syscall is also defined above. Here, we add the NODYNSORT 2276 # attribute to it. On this platform, _syscall is an alias to syscall 2277 # If that is changed, this lines should be removed. 2278 _syscall { FLAGS = NODYNSORT; }; 2279$endif 2280 2281 # The 32-bit sparc ABI requires SISCD_2.3. On other platforms, those symbols 2282 # go directly into SUNW_0.7. 2283$if sparc32 2284} SISCD_2.3; 2285 2286SYMBOL_VERSION SISCD_2.3 { 2287$endif 2288 2289 global: 2290 errno { 2291 ASSERT = { 2292 TYPE = OBJECT; 2293 SIZE = 4; 2294 }; 2295 FLAGS = NODIRECT; 2296 }; 2297 2298$if _ELF64 2299 _iob { ASSERT = { TYPE = OBJECT; SIZE = 2560; }; }; 2300$elif _ELF32 2301$if _x86 2302 _iob { ASSERT = { TYPE = OBJECT; SIZE = 960; }; }; 2303$else 2304 _iob { ASSERT = { TYPE = OBJECT; SIZE = 320; }; }; 2305$endif 2306$else 2307$error unknown ELFCLASS 2308$endif 2309 2310 protected: 2311 addseverity; 2312 _addseverity; 2313 asctime_r; 2314 crypt; 2315 _crypt; 2316 ctime_r; 2317 encrypt; 2318 _encrypt; 2319 endgrent; 2320 endpwent; 2321 ___errno; 2322 fgetgrent; 2323 fgetgrent_r; 2324 fgetpwent; 2325 fgetpwent_r; 2326 flockfile; 2327 funlockfile; 2328 getchar_unlocked; 2329 getc_unlocked; 2330 getgrent; 2331 getgrent_r; 2332 getgrgid_r; 2333 getgrnam_r; 2334 getitimer; 2335 _getitimer; 2336 getlogin_r; 2337 getpwent; 2338 getpwent_r; 2339 getpwnam_r; 2340 getpwuid_r; 2341 gettimeofday; 2342 _gettimeofday; 2343 gmtime_r; 2344 localtime_r; 2345 putchar_unlocked; 2346 putc_unlocked; 2347 rand_r; 2348 readdir_r; 2349 setgrent; 2350 setitimer; 2351 _setitimer; 2352 setkey; 2353 _setkey; 2354 setpwent; 2355 strtok_r; 2356 sysinfo; 2357 _sysinfo; 2358 ttyname_r; 2359 2360$if _ELF32 2361 __div64; 2362 __mul64; 2363 __rem64; 2364 __udiv64; 2365 __urem64; 2366$endif 2367 2368$if sparc32 2369 __dtoll; 2370 __dtoull; 2371 __ftoll; 2372 __ftoull; 2373 _Q_lltoq; 2374 _Q_qtoll; 2375 _Q_qtoull; 2376 _Q_ulltoq; 2377 sbrk; 2378 _sbrk; 2379 __umul64 { FLAGS = NODYNSORT; }; # Same address as __mul64 2380$endif 2381 2382 # On 32-bit platforms, the following symbols go into SYSVABI_1.3, but 2383 # on other platforms they go directly into the current version (which 2384 # will be either SUNW_0.7, or SISCD_2.3, depending on the similar 2385 # issue described above. 2386$if _ELF32 2387} SYSVABI_1.3; 2388 2389SYMBOL_VERSION SYSVABI_1.3 { 2390$endif 2391 2392 global: 2393 _altzone { ASSERT = { BINDING = WEAK; ALIAS = altzone; }; }; 2394 calloc { FLAGS = NODIRECT; }; 2395 __ctype { 2396 ASSERT = { 2397 TYPE = OBJECT; 2398 SIZE = 521; 2399 }; 2400 }; 2401 daylight { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2402 _daylight { ASSERT = { BINDING = WEAK; ALIAS = daylight; }; }; 2403 environ { 2404 ASSERT = { 2405 BINDING = WEAK; 2406 ALIAS = _environ; 2407 }; 2408 FLAGS = NODIRECT; 2409 }; 2410 _environ { 2411 ASSERT = { 2412 TYPE = OBJECT; 2413 SIZE = addrsize; 2414 }; 2415 FLAGS = NODIRECT; 2416 }; 2417 free { FLAGS = NODIRECT; }; 2418 frexp { TYPE = FUNCTION; FILTER = libm.so.2; }; 2419 getdate_err { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2420 _getdate_err { 2421 ASSERT = { 2422 BINDING = WEAK; 2423 ALIAS = getdate_err; 2424 }; 2425 }; 2426 getenv; 2427 __huge_val { ASSERT = { TYPE = OBJECT; SIZE = 8; }; }; 2428 __iob { ASSERT = { BINDING = WEAK; ALIAS = _iob; }; }; 2429 isnan { TYPE = FUNCTION; FILTER = libm.so.2; }; 2430 _isnan { TYPE = FUNCTION; FILTER = libm.so.2; }; 2431 isnand { TYPE = FUNCTION; FILTER = libm.so.2; }; 2432 _isnand { TYPE = FUNCTION; FILTER = libm.so.2; }; 2433 ldexp { TYPE = FUNCTION; FILTER = libm.so.2; }; 2434 logb { TYPE = FUNCTION; FILTER = libm.so.2; }; 2435 malloc { FLAGS = NODIRECT; }; 2436 memcmp; 2437 memcpy; 2438 memmove; 2439 memset; 2440 modf { TYPE = FUNCTION; FILTER = libm.so.2; }; 2441 _modf { TYPE = FUNCTION; FILTER = libm.so.2; }; 2442 nextafter { TYPE = FUNCTION; FILTER = libm.so.2; }; 2443 _nextafter { TYPE = FUNCTION; FILTER = libm.so.2; }; 2444 _numeric { ASSERT = { TYPE = OBJECT; SIZE = 2; }; }; 2445 optarg { 2446 ASSERT = { 2447 TYPE = OBJECT; 2448 SIZE = addrsize; 2449 }; 2450 }; 2451 opterr { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2452 optind { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2453 optopt { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2454 realloc { FLAGS = NODIRECT; }; 2455 scalb { TYPE = FUNCTION; FILTER = libm.so.2; }; 2456 _scalb { TYPE = FUNCTION; FILTER = libm.so.2; }; 2457 timezone { 2458 ASSERT = { 2459 TYPE = OBJECT; 2460 SIZE = addrsize; 2461 }; 2462 }; 2463 _timezone { ASSERT = { BINDING = WEAK; ALIAS = timezone; }; }; 2464 tzname { 2465 ASSERT = { 2466 TYPE = OBJECT; 2467 SIZE = addrsize[2]; 2468 }; 2469 }; 2470 _tzname { 2471 ASSERT = { 2472 BINDING = WEAK; 2473 ALIAS = tzname; 2474 }; 2475 }; 2476$if i386 2477 _fp_hw { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 2478$endif 2479 2480 protected: 2481 abort; 2482 abs; 2483 access; 2484 _access; 2485 acct; 2486 _acct; 2487 alarm; 2488 _alarm; 2489 asctime; 2490 __assert; 2491 atexit; 2492 atof; 2493 atoi; 2494 atol; 2495 bsearch; 2496 catclose; 2497 _catclose; 2498 catgets; 2499 _catgets; 2500 catopen; 2501 _catopen; 2502 cfgetispeed; 2503 _cfgetispeed; 2504 cfgetospeed; 2505 _cfgetospeed; 2506 cfsetispeed; 2507 _cfsetispeed; 2508 cfsetospeed; 2509 _cfsetospeed; 2510 chdir; 2511 _chdir; 2512 chmod; 2513 _chmod; 2514 chown; 2515 _chown; 2516 chroot; 2517 _chroot; 2518 _cleanup; 2519 clearerr; 2520 clock; 2521 close; 2522 _close; 2523 closedir; 2524 _closedir; 2525 creat; 2526 _creat; 2527 ctermid; 2528 ctime; 2529 cuserid; 2530 _cuserid; 2531 difftime; 2532 div; 2533 dup; 2534 _dup; 2535 dup2; 2536 _dup2; 2537 execl; 2538 _execl; 2539 execle; 2540 _execle; 2541 execlp; 2542 _execlp; 2543 execv; 2544 _execv; 2545 execve; 2546 _execve; 2547 execvp; 2548 _execvp; 2549 exit; 2550 _exit; 2551 fattach; 2552 _fattach; 2553 fchdir; 2554 _fchdir; 2555 fchmod; 2556 _fchmod; 2557 fchown; 2558 _fchown; 2559 fclose; 2560 fcntl; 2561 _fcntl; 2562 fdetach; 2563 _fdetach; 2564 fdopen; 2565 _fdopen; 2566 feof; 2567 ferror; 2568 fflush; 2569 fgetc; 2570 fgetpos; 2571 fgets; 2572 __filbuf; 2573 fileno; 2574 _fileno; 2575 __flsbuf; 2576 fmtmsg; 2577 _fmtmsg; 2578 fopen; 2579 _fork; 2580 fork; 2581 fpathconf; 2582 _fpathconf; 2583 fprintf; 2584 fputc; 2585 fputs; 2586 fread; 2587 freopen; 2588 fscanf; 2589 fseek; 2590 fsetpos; 2591 fstat; 2592 _fstat; 2593 fstatvfs; 2594 _fstatvfs; 2595 fsync; 2596 _fsync; 2597 ftell; 2598 ftok; 2599 _ftok; 2600 fwrite; 2601 getc; 2602 getchar; 2603 getcontext; 2604 _getcontext; 2605 getcwd; 2606 _getcwd; 2607 getdate; 2608 _getdate; 2609 getegid; 2610 _getegid; 2611 geteuid; 2612 _geteuid; 2613 getgid; 2614 _getgid; 2615 getgrgid; 2616 getgrnam; 2617 getgroups; 2618 _getgroups; 2619 getlogin; 2620 getmsg; 2621 _getmsg; 2622 getopt; 2623 _getopt; 2624 getpass; 2625 _getpass; 2626 getpgid; 2627 _getpgid; 2628 getpgrp; 2629 _getpgrp; 2630 getpid; 2631 _getpid; 2632 getpmsg; 2633 _getpmsg; 2634 getppid; 2635 _getppid; 2636 getpwnam; 2637 getpwuid; 2638 getrlimit; 2639 _getrlimit; 2640 gets; 2641 getsid; 2642 _getsid; 2643 getsubopt; 2644 _getsubopt; 2645 gettxt; 2646 _gettxt; 2647 getuid; 2648 _getuid; 2649 getw; 2650 _getw; 2651 gmtime; 2652 grantpt; 2653 _grantpt; 2654 hcreate; 2655 _hcreate; 2656 hdestroy; 2657 _hdestroy; 2658 hsearch; 2659 _hsearch; 2660 initgroups; 2661 _initgroups; 2662 ioctl; 2663 _ioctl; 2664 isalnum; 2665 isalpha; 2666 isascii; 2667 _isascii; 2668 isastream; 2669 _isastream; 2670 isatty; 2671 _isatty; 2672 iscntrl; 2673 isdigit; 2674 isgraph; 2675 islower; 2676 isprint; 2677 ispunct; 2678 isspace; 2679 isupper; 2680 isxdigit; 2681 kill; 2682 _kill; 2683 labs; 2684 lchown; 2685 _lchown; 2686 ldiv; 2687 lfind; 2688 _lfind; 2689 link; 2690 _link; 2691 localeconv; 2692 localtime; 2693 lockf; 2694 _lockf; 2695 longjmp; 2696 lsearch; 2697 _lsearch; 2698 lseek; 2699 _lseek; 2700 lstat; 2701 _lstat; 2702 makecontext; 2703 _makecontext; 2704 mblen; 2705 mbstowcs; 2706 mbtowc; 2707 memccpy; 2708 _memccpy; 2709 memchr; 2710 memcntl; 2711 _memcntl; 2712 mkdir; 2713 _mkdir; 2714 mkfifo; 2715 _mkfifo; 2716 mknod; 2717 _mknod; 2718 mktemp; 2719 _mktemp; 2720 mktime; 2721 mlock; 2722 _mlock; 2723 mmap; 2724 _mmap; 2725 monitor; 2726 _monitor; 2727 mount; 2728 _mount; 2729 mprotect; 2730 _mprotect; 2731 msgctl; 2732 _msgctl; 2733 msgget; 2734 _msgget; 2735 msgrcv; 2736 _msgrcv; 2737 msgsnd; 2738 _msgsnd; 2739 msync; 2740 _msync; 2741 munlock; 2742 _munlock; 2743 munmap; 2744 _munmap; 2745 nftw; 2746 _nftw; 2747 nice; 2748 _nice; 2749 nl_langinfo; 2750 _nl_langinfo; 2751 open; 2752 _open; 2753 opendir; 2754 _opendir; 2755 pathconf; 2756 _pathconf; 2757 pause; 2758 _pause; 2759 pclose; 2760 _pclose; 2761 perror; 2762 pipe; 2763 _pipe; 2764 poll; 2765 _poll; 2766 popen; 2767 _popen; 2768 printf; 2769 profil; 2770 _profil; 2771 ptsname; 2772 _ptsname; 2773 putc; 2774 putchar; 2775 putenv; 2776 _putenv; 2777 putmsg; 2778 _putmsg; 2779 putpmsg; 2780 _putpmsg; 2781 puts; 2782 putw; 2783 _putw; 2784 qsort; 2785 raise; 2786 rand; 2787 read; 2788 _read; 2789 readdir; 2790 _readdir; 2791 readlink; 2792 _readlink; 2793 readv; 2794 _readv; 2795 remove; 2796 rename; 2797 _rename; 2798 rewind; 2799 rewinddir; 2800 _rewinddir; 2801 rmdir; 2802 _rmdir; 2803 scanf; 2804 seekdir; 2805 _seekdir; 2806 semctl; 2807 _semctl; 2808 semget; 2809 _semget; 2810 semop; 2811 _semop; 2812 setbuf; 2813 setcontext; 2814 _setcontext { FLAGS = NODYNSORT; }; 2815 setgid; 2816 _setgid; 2817 setgroups; 2818 _setgroups; 2819 setjmp; 2820 setlabel; 2821 setlocale; 2822 setpgid; 2823 _setpgid; 2824 setpgrp; 2825 _setpgrp; 2826 setrlimit; 2827 _setrlimit; 2828 setsid; 2829 _setsid; 2830 setuid; 2831 _setuid; 2832 setvbuf; 2833 shmat; 2834 _shmat; 2835 shmctl; 2836 _shmctl; 2837 shmdt; 2838 _shmdt; 2839 shmget; 2840 _shmget; 2841 sigaction; 2842 _sigaction { FLAGS = NODYNSORT; }; 2843 sigaddset; 2844 _sigaddset; 2845 sigaltstack; 2846 _sigaltstack; 2847 sigdelset; 2848 _sigdelset; 2849 sigemptyset; 2850 _sigemptyset; 2851 sigfillset; 2852 _sigfillset; 2853 sighold; 2854 _sighold; 2855 sigignore; 2856 _sigignore; 2857 sigismember; 2858 _sigismember; 2859 siglongjmp; 2860 _siglongjmp; 2861 signal; 2862 sigpause; 2863 _sigpause; 2864 sigpending; 2865 _sigpending; 2866 sigprocmask; 2867 _sigprocmask; 2868 sigrelse; 2869 _sigrelse; 2870 sigsend; 2871 _sigsend; 2872 sigsendset; 2873 _sigsendset; 2874 sigset; 2875 _sigset; 2876 sigsetjmp; 2877 _sigsetjmp { FLAGS = NODYNSORT; }; 2878 sigsuspend; 2879 _sigsuspend; 2880 sleep; 2881 _sleep; 2882 sprintf; 2883 srand; 2884 sscanf; 2885 stat; 2886 _stat; 2887 statvfs; 2888 _statvfs; 2889 stime; 2890 _stime; 2891 strcat; 2892 strchr; 2893 strcmp; 2894 strcoll; 2895 strcpy; 2896 strcspn; 2897 strdup; 2898 _strdup; 2899 strerror; 2900 strftime; 2901 strlen; 2902 strncat; 2903 strncmp; 2904 strncpy; 2905 strpbrk; 2906 strrchr; 2907 strspn; 2908 strstr; 2909 strtod; 2910 strtok; 2911 strtol; 2912 strtoul; 2913 strxfrm; 2914 swab; 2915 _swab; 2916 swapcontext; 2917 _swapcontext; 2918 symlink; 2919 _symlink; 2920 sync; 2921 _sync; 2922 sysconf; 2923 _sysconf; 2924 system; 2925 tcdrain; 2926 _tcdrain; 2927 tcflow; 2928 _tcflow; 2929 tcflush; 2930 _tcflush; 2931 tcgetattr; 2932 _tcgetattr; 2933 tcgetpgrp; 2934 _tcgetpgrp; 2935 tcgetsid; 2936 _tcgetsid; 2937 tcsendbreak; 2938 _tcsendbreak; 2939 tcsetattr; 2940 _tcsetattr; 2941 tcsetpgrp; 2942 _tcsetpgrp; 2943 tdelete; 2944 _tdelete; 2945 tell; 2946 _tell; 2947 telldir; 2948 _telldir; 2949 tempnam; 2950 _tempnam; 2951 tfind; 2952 _tfind; 2953 time; 2954 _time; 2955 times; 2956 _times; 2957 tmpfile; 2958 tmpnam; 2959 toascii; 2960 _toascii; 2961 tolower; 2962 _tolower; 2963 toupper; 2964 _toupper; 2965 tsearch; 2966 _tsearch; 2967 ttyname; 2968 twalk; 2969 _twalk; 2970 tzset; 2971 _tzset; 2972 ulimit; 2973 _ulimit; 2974 umask; 2975 _umask; 2976 umount; 2977 _umount; 2978 uname; 2979 _uname; 2980 ungetc; 2981 unlink; 2982 _unlink; 2983 unlockpt; 2984 _unlockpt; 2985 utime; 2986 _utime; 2987 vfprintf; 2988 vprintf; 2989 vsprintf; 2990 wait; 2991 _wait; 2992 waitid; 2993 _waitid; 2994 waitpid; 2995 _waitpid; 2996 wcstombs; 2997 wctomb; 2998 write; 2999 _write; 3000 writev; 3001 _writev; 3002 _xftw; 3003 3004$if _ELF32 3005 ptrace; 3006 _ptrace; 3007$endif 3008 3009$if i386 3010 _fxstat; 3011 _lxstat; 3012 nuname; 3013 _nuname; 3014 _xmknod; 3015 _xstat; 3016$endif 3017 3018$if !sparc32 3019 sbrk; 3020$endif 3021 3022$if _sparc 3023 __dtou; 3024 __ftou; 3025$endif 3026 3027$if sparc32 3028 .div; 3029 .mul; 3030 .rem; 3031 .stret1; 3032 .stret2; 3033 .stret4; 3034 # .stret4 and .stret8 are the same thing 3035 .stret8 { FLAGS = NODYNSORT; }; 3036 .udiv; 3037 .umul; 3038 .urem; 3039 _Q_add; 3040 _Q_cmp; 3041 _Q_cmpe; 3042 _Q_div; 3043 _Q_dtoq; 3044 _Q_feq; 3045 _Q_fge; 3046 _Q_fgt; 3047 _Q_fle; 3048 _Q_flt; 3049 _Q_fne; 3050 _Q_itoq; 3051 _Q_mul; 3052 _Q_neg; 3053 _Q_qtod; 3054 _Q_qtoi; 3055 _Q_qtos; 3056 _Q_qtou; 3057 _Q_sqrt; 3058 _Q_stoq; 3059 _Q_sub; 3060 _Q_utoq; 3061$endif 3062 3063$if sparcv9 3064 # __align_cpy_1 is an alias for memcpy. Filter it out of 3065 # the .SUNW_dynsymsort section 3066 __align_cpy_1 { FLAGS = NODYNSORT; }; 3067 __align_cpy_16; 3068 __align_cpy_2; 3069 __align_cpy_4; 3070 # __align_cpy_8 is same as __align_cpy_16 3071 __align_cpy_8 { FLAGS = NODYNSORT; }; 3072 __dtoul; 3073 __ftoul; 3074 _Qp_add; 3075 _Qp_cmp; 3076 _Qp_cmpe; 3077 _Qp_div; 3078 _Qp_dtoq; 3079 _Qp_feq; 3080 _Qp_fge; 3081 _Qp_fgt; 3082 _Qp_fle; 3083 _Qp_flt; 3084 _Qp_fne; 3085 _Qp_itoq; 3086 _Qp_mul; 3087 _Qp_neg; 3088 _Qp_qtod; 3089 _Qp_qtoi; 3090 _Qp_qtos; 3091 _Qp_qtoui; 3092 _Qp_qtoux; 3093 _Qp_qtox; 3094 _Qp_sqrt; 3095 _Qp_stoq; 3096 _Qp_sub; 3097 _Qp_uitoq; 3098 _Qp_uxtoq; 3099 _Qp_xtoq; 3100 __sparc_utrap_install; 3101$endif 3102 3103 # On amd64, we also have SYSVABI_1.3, but it contains a small subset of 3104 # the symbols put in that version on other platforms. 3105$if amd64 3106} SYSVABI_1.3; 3107 3108SYMBOL_VERSION SYSVABI_1.3 { 3109$endif 3110 global: 3111$if !_sparc 3112 __flt_rounds { ASSERT = { TYPE = OBJECT; SIZE = 4; }; }; 3113$endif 3114 3115 protected: 3116 _ctermid; 3117 _getgrgid; 3118 _getgrnam; 3119 _getlogin; 3120 _getpwnam; 3121 _getpwuid; 3122 _ttyname; 3123 3124$if !sparc32 3125 _sbrk; 3126$endif 3127 3128$if _x86 3129 _fpstart; 3130 __fpstart; 3131$endif 3132}; 3133 3134 3135 3136# There should never be more than one SUNWprivate version. 3137# Don't add any more. Add new private symbols to SUNWprivate_1.1 3138 3139SYMBOL_VERSION SUNWprivate_1.1 { 3140 global: 3141 ___Argv { 3142 FLAGS = NODIRECT; 3143 ASSERT = { 3144 TYPE = OBJECT; 3145 SIZE = addrsize; 3146 }; 3147 }; 3148 cfree { FLAGS = NODIRECT; }; 3149 _cswidth { 3150 ASSERT = { 3151 TYPE = OBJECT; 3152 SIZE = 16; 3153 }; 3154 }; 3155 __ctype_mask { 3156 ASSERT = { 3157 TYPE = OBJECT; 3158 SIZE = addrsize; 3159 }; 3160 }; 3161 __environ_lock { 3162 FLAGS = NODIRECT; 3163 ASSERT = { 3164 TYPE = OBJECT; 3165 SIZE = 24; 3166 }; 3167 }; 3168 __inf_read { 3169 ASSERT = { 3170 TYPE = OBJECT; 3171 SIZE = 4; 3172 }; 3173 }; 3174 __inf_written { 3175 ASSERT = { 3176 TYPE = OBJECT; 3177 SIZE = 4; 3178 }; 3179 }; 3180 __i_size { 3181 ASSERT = { 3182 TYPE = OBJECT; 3183 SIZE = 4; 3184 }; 3185 }; 3186 _isnanf { 3187 TYPE = FUNCTION; 3188 FILTER = libm.so.2; 3189 }; 3190 __iswrune; 3191 __libc_threaded { 3192 ASSERT = { 3193 TYPE = OBJECT; 3194 SIZE = 4; 3195 }; 3196 }; 3197 _lib_version { 3198 ASSERT = { 3199 TYPE = OBJECT; 3200 SIZE = 4; 3201 }; 3202 FLAGS = NODIRECT; 3203 }; 3204 _logb { 3205 TYPE = FUNCTION; 3206 FILTER = libm.so.2; 3207 }; 3208 _lone { 3209 FLAGS = NODYNSORT; 3210 ASSERT = { 3211 BINDING = WEAK; 3212 ALIAS = lone; 3213 }; 3214 }; 3215 _lten { 3216 FLAGS = NODYNSORT; 3217 ASSERT = { 3218 BINDING = WEAK; 3219 ALIAS = lten; 3220 }; 3221 }; 3222 _lzero { 3223 FLAGS = NODYNSORT; 3224 ASSERT = { 3225 BINDING = WEAK; 3226 ALIAS = lzero; 3227 }; 3228 }; 3229 __malloc_lock { 3230 ASSERT = { 3231 TYPE = OBJECT; 3232 SIZE = 24; 3233 }; 3234 }; 3235 _memcmp; 3236 _memcpy { FLAGS = NODYNSORT; }; 3237 _memmove; 3238 _memset; 3239 _modff { 3240 TYPE = FUNCTION; 3241 FILTER = libm.so.2; 3242 }; 3243 __nan_read { 3244 ASSERT = { 3245 TYPE = OBJECT; 3246 SIZE = 4; 3247 }; 3248 }; 3249 __nan_written { 3250 ASSERT = { 3251 TYPE = OBJECT; 3252 SIZE = 4; 3253 }; 3254 }; 3255 __nextwctype; 3256 __nis_debug_bind { 3257 ASSERT = { 3258 TYPE = OBJECT; 3259 SIZE = 4; 3260 }; 3261 }; 3262 __nis_debug_calls { 3263 ASSERT = { 3264 TYPE = OBJECT; 3265 SIZE = 4; 3266 }; 3267 }; 3268 __nis_debug_file { 3269 ASSERT = { 3270 TYPE = OBJECT; 3271 SIZE = addrsize; 3272 }; 3273 }; 3274 __nis_debug_rpc { 3275 ASSERT = { 3276 TYPE = OBJECT; 3277 SIZE = 4; 3278 }; 3279 }; 3280 __nis_prefsrv { 3281 ASSERT = { 3282 TYPE = OBJECT; 3283 SIZE = addrsize; 3284 }; 3285 }; 3286 __nis_preftype { 3287 ASSERT = { 3288 TYPE = OBJECT; 3289 SIZE = addrsize; 3290 }; 3291 }; 3292 __nis_server { 3293 ASSERT = { 3294 TYPE = OBJECT; 3295 SIZE = addrsize; 3296 }; 3297 }; 3298 _nss_default_finders { 3299 ASSERT = { 3300 BINDING = WEAK; 3301 ALIAS = nss_default_finders; 3302 }; 3303 }; 3304 __progname { 3305 ASSERT = { 3306 TYPE = OBJECT; 3307 SIZE = addrsize; 3308 }; 3309 FLAGS = NODIRECT; 3310 }; 3311 3312$if _ELF64 3313 _smbuf { 3314 ASSERT = { 3315 TYPE = OBJECT; 3316 SIZE = 168; 3317 }; 3318 }; 3319$elif _ELF32 3320$if _x86 3321 _smbuf { 3322 ASSERT = { 3323 TYPE = OBJECT; 3324 SIZE = 488; 3325 }; 3326 }; 3327$else 3328 _smbuf { 3329 ASSERT = { 3330 TYPE = OBJECT; 3331 SIZE = 168; 3332 }; 3333 }; 3334$endif 3335$else 3336$error unknown ELFCLASS 3337$endif 3338 _sp { 3339 ASSERT = { 3340 TYPE = OBJECT; 3341 SIZE = 4; 3342 }; 3343 }; 3344 __strdupa_str { 3345 ASSERT = { 3346 TYPE = TLS; 3347 SIZE = addrsize; 3348 }; 3349 FLAGS = NODIRECT; 3350 }; 3351 __strdupa_len { 3352 ASSERT = { 3353 TYPE = TLS; 3354 SIZE = addrsize; 3355 }; 3356 FLAGS = NODIRECT; 3357 }; 3358 _tdb_bootstrap { 3359 ASSERT = { 3360 BINDING = WEAK; 3361 ALIAS = __tdb_bootstrap; 3362 }; 3363 }; 3364 __threaded { 3365 ASSERT = { 3366 TYPE = OBJECT; 3367 SIZE = 4; 3368 }; 3369 }; 3370 thr_probe_getfunc_addr { 3371 ASSERT = { 3372 TYPE = OBJECT; 3373 SIZE = addrsize; 3374 }; 3375 }; 3376 __trans_lower { 3377 ASSERT = { 3378 TYPE = OBJECT; 3379 SIZE = addrsize; 3380 }; 3381 }; 3382 __trans_upper { 3383 ASSERT = { 3384 TYPE = OBJECT; 3385 SIZE = addrsize; 3386 }; 3387 }; 3388 _uberdata { 3389 ASSERT = { 3390 BINDING = WEAK; 3391 ALIAS = __uberdata; 3392 }; 3393 }; 3394 __xpg6 { 3395 ASSERT = { 3396 TYPE = OBJECT; 3397 SIZE = 4; 3398 }; 3399 FLAGS = NODIRECT; 3400 }; 3401 3402$if _ELF32 3403 _dladdr { 3404 TYPE = FUNCTION; 3405 FILTER = /usr/lib/ld.so.1; 3406 }; 3407 _dladdr1 { 3408 TYPE = FUNCTION; 3409 FILTER = /usr/lib/ld.so.1; 3410 }; 3411 _dlclose { 3412 TYPE = FUNCTION; 3413 FILTER = /usr/lib/ld.so.1; 3414 }; 3415 _dldump { 3416 TYPE = FUNCTION; 3417 FILTER = /usr/lib/ld.so.1; 3418 }; 3419 _dlerror { 3420 TYPE = FUNCTION; 3421 FILTER = /usr/lib/ld.so.1; 3422 }; 3423 _dlinfo { 3424 TYPE = FUNCTION; 3425 FILTER = /usr/lib/ld.so.1; 3426 }; 3427 _dlmopen { 3428 TYPE = FUNCTION; 3429 FILTER = /usr/lib/ld.so.1; 3430 }; 3431 _dlopen { 3432 TYPE = FUNCTION; 3433 FILTER = /usr/lib/ld.so.1; 3434 }; 3435 _dlsym { 3436 TYPE = FUNCTION; 3437 FILTER = /usr/lib/ld.so.1; 3438 }; 3439 _ld_libc { 3440 TYPE = FUNCTION; 3441 FILTER = /usr/lib/ld.so.1; 3442 }; 3443 _sys_errlist { 3444 ASSERT = { 3445 BINDING = WEAK; 3446 ALIAS = sys_errlist; 3447 }; 3448 }; 3449 _sys_errs { 3450 ASSERT = { 3451 TYPE = OBJECT; 3452 SIZE = 3216; 3453 }; 3454 }; 3455 _sys_index { 3456 ASSERT = { 3457 TYPE = OBJECT; 3458 SIZE = 608; 3459 }; 3460 }; 3461 _sys_nerr { 3462 FLAGS = NODYNSORT; 3463 ASSERT = { 3464 BINDING = WEAK; 3465 ALIAS = _sys_num_err; 3466 }; 3467 }; 3468 _sys_num_err { 3469 ASSERT = { 3470 TYPE = OBJECT; 3471 SIZE = 4; 3472 }; 3473 }; 3474$elif sparcv9 3475 _dladdr { 3476 TYPE = FUNCTION; 3477 FILTER = /usr/lib/sparcv9/ld.so.1; 3478 }; 3479 _dladdr1 { 3480 TYPE = FUNCTION; 3481 FILTER = /usr/lib/sparcv9/ld.so.1; 3482 }; 3483 _dlclose { 3484 TYPE = FUNCTION; 3485 FILTER = /usr/lib/sparcv9/ld.so.1; 3486 }; 3487 _dldump { 3488 TYPE = FUNCTION; 3489 FILTER = /usr/lib/sparcv9/ld.so.1; 3490 }; 3491 _dlerror { 3492 TYPE = FUNCTION; 3493 FILTER = /usr/lib/sparcv9/ld.so.1; 3494 }; 3495 _dlinfo { 3496 TYPE = FUNCTION; 3497 FILTER = /usr/lib/sparcv9/ld.so.1; 3498 }; 3499 _dlmopen { 3500 TYPE = FUNCTION; 3501 FILTER = /usr/lib/sparcv9/ld.so.1; 3502 }; 3503 _dlopen { 3504 TYPE = FUNCTION; 3505 FILTER = /usr/lib/sparcv9/ld.so.1; 3506 }; 3507 _dlsym { 3508 TYPE = FUNCTION; 3509 FILTER = /usr/lib/sparcv9/ld.so.1; 3510 }; 3511 _ld_libc { 3512 TYPE = FUNCTION; 3513 FILTER = /usr/lib/sparcv9/ld.so.1; 3514 }; 3515$elif amd64 3516 _dladdr { 3517 TYPE = FUNCTION; 3518 FILTER = /usr/lib/amd64/ld.so.1; 3519 }; 3520 _dladdr1 { 3521 TYPE = FUNCTION; 3522 FILTER = /usr/lib/amd64/ld.so.1; 3523 }; 3524 _dlamd64getunwind { 3525 TYPE = FUNCTION; 3526 FILTER = /usr/lib/amd64/ld.so.1; 3527 }; 3528 _dlclose { 3529 TYPE = FUNCTION; 3530 FILTER = /usr/lib/amd64/ld.so.1; 3531 }; 3532 _dldump { 3533 TYPE = FUNCTION; 3534 FILTER = /usr/lib/amd64/ld.so.1; 3535 }; 3536 _dlerror { 3537 TYPE = FUNCTION; 3538 FILTER = /usr/lib/amd64/ld.so.1; 3539 }; 3540 _dlinfo { 3541 TYPE = FUNCTION; 3542 FILTER = /usr/lib/amd64/ld.so.1; 3543 }; 3544 _dlmopen { 3545 TYPE = FUNCTION; 3546 FILTER = /usr/lib/amd64/ld.so.1; 3547 }; 3548 _dlopen { 3549 TYPE = FUNCTION; 3550 FILTER = /usr/lib/amd64/ld.so.1; 3551 }; 3552 _dlsym { 3553 TYPE = FUNCTION; 3554 FILTER = /usr/lib/amd64/ld.so.1; 3555 }; 3556 _ld_libc { 3557 TYPE = FUNCTION; 3558 FILTER = /usr/lib/amd64/ld.so.1; 3559 }; 3560$else 3561$error unknown platform 3562$endif 3563 3564$if _sparc 3565 __lyday_to_month { 3566 ASSERT = { 3567 TYPE = OBJECT; 3568 SIZE = 48; 3569 }; 3570 }; 3571 __mon_lengths { 3572 ASSERT = { 3573 TYPE = OBJECT; 3574 SIZE = 96; 3575 }; 3576 }; 3577 __yday_to_month { 3578 ASSERT = { 3579 TYPE = OBJECT; 3580 SIZE = 48; 3581 }; 3582 }; 3583$endif 3584$if i386 3585 _sse_hw { 3586 ASSERT = { 3587 TYPE = OBJECT; 3588 SIZE = 4; 3589 }; 3590 }; 3591$endif 3592 3593 protected: 3594 acctctl; 3595 allocids; 3596 _assert_c99; 3597 __assert_c99; 3598 _assfail; 3599 attr_count; 3600 attr_to_data_type; 3601 attr_to_name; 3602 attr_to_option; 3603 attr_to_xattr_view; 3604 _autofssys; 3605 _bufsync; 3606 _cladm; 3607 __class_quadruple; 3608 core_get_default_content; 3609 core_get_default_path; 3610 core_get_global_content; 3611 core_get_global_path; 3612 core_get_options; 3613 core_get_process_content; 3614 core_get_process_path; 3615 core_set_default_content; 3616 core_set_default_path; 3617 core_set_global_content; 3618 core_set_global_path; 3619 core_set_options; 3620 core_set_process_content; 3621 core_set_process_path; 3622 dbm_close_status; 3623 dbm_do_nextkey; 3624 dbm_setdefwrite; 3625 _D_cplx_div; 3626 _D_cplx_div_ix; 3627 _D_cplx_div_rx; 3628 _D_cplx_mul; 3629 defclose_r; 3630 defcntl; 3631 defcntl_r; 3632 defopen; 3633 defopen_r; 3634 defread; 3635 defread_r; 3636 _delete; 3637 _dgettext; 3638 _doprnt; 3639 _doscan; 3640 _errfp; 3641 _errxfp; 3642 exportfs; 3643 _F_cplx_div; 3644 _F_cplx_div_ix; 3645 _F_cplx_div_rx; 3646 _F_cplx_mul; 3647 __fgetwc_xpg5; 3648 __fgetws_xpg5; 3649 _findbuf; 3650 _findiop; 3651 __fini_daemon_priv; 3652 _finite; 3653 _fork1 { FLAGS = NODYNSORT; }; 3654 _forkall { FLAGS = NODYNSORT; }; 3655 _fpclass; 3656 _fpgetmask; 3657 _fpgetround; 3658 _fpgetsticky; 3659 _fprintf; 3660 _fpsetmask; 3661 _fpsetround; 3662 _fpsetsticky; 3663 __fputwc_xpg5; 3664 __fputws_xpg5; 3665 _ftw; 3666 _gcvt; 3667 _getarg; 3668 __getcontext; 3669 _getdents; 3670 _get_exit_frame_monitor; 3671 _getfp; 3672 _getgroupsbymember; 3673 _getlogin_r; 3674 _getsp; 3675 __gettsp; 3676 getvmusage; 3677 __getwchar_xpg5; 3678 __getwc_xpg5; 3679 gtty; 3680 __idmap_flush_kcache; 3681 __idmap_reg; 3682 __idmap_unreg; 3683 __init_daemon_priv; 3684 __init_suid_priv; 3685 _insert; 3686 inst_sync; 3687 _iswctype; 3688 klpd_create; 3689 klpd_getpath; 3690 klpd_getport; 3691 klpd_getucred; 3692 klpd_register; 3693 klpd_register_id; 3694 klpd_unregister; 3695 klpd_unregister_id; 3696 _lgrp_home_fast { FLAGS = NODYNSORT; }; 3697 _lgrpsys; 3698 _lltostr; 3699 _lock_clear; 3700 _lock_try; 3701 _ltzset; 3702 lwp_self; 3703 makeut; 3704 makeutx; 3705 _mbftowc; 3706 mcfiller; 3707 mntopt; 3708 modctl; 3709 modutx; 3710 msgctl64; 3711 __multi_innetgr; 3712 _mutex_destroy { FLAGS = NODYNSORT; }; 3713 mutex_enter; 3714 mutex_exit; 3715 mutex_held; 3716 _mutex_init { FLAGS = NODYNSORT; }; 3717 _mutex_unlock { FLAGS = NODYNSORT; }; 3718 name_to_attr; 3719 nfs_getfh; 3720 nfssvc; 3721 _nfssys; 3722 __nis_get_environment; 3723 _nss_db_state_destr; 3724 nss_default_key2str; 3725 nss_delete; 3726 nss_endent; 3727 nss_getent; 3728 _nss_initf_group; 3729 _nss_initf_netgroup; 3730 _nss_initf_passwd; 3731 _nss_initf_shadow; 3732 nss_packed_arg_init; 3733 nss_packed_context_init; 3734 nss_packed_getkey; 3735 nss_packed_set_status; 3736 nss_search; 3737 nss_setent; 3738 _nss_XbyY_fgets; 3739 _nss_XbyY_fini; 3740 __nsw_extended_action_v1; 3741 __nsw_freeconfig_v1; 3742 __nsw_getconfig_v1; 3743 __nthreads; 3744 __openattrdirat; 3745 option_to_attr; 3746 __priv_bracket; 3747 __priv_relinquish; 3748 psecflags; 3749 pset_assign_forced; 3750 pset_bind_lwp; 3751 _psignal; 3752 pthread_attr_getdaemonstate_np; 3753 pthread_attr_setdaemonstate_np; 3754 _pthread_setcleanupinit; 3755 __putwchar_xpg5; 3756 __putwc_xpg5; 3757 rctlctl; 3758 rctllist; 3759 _realbufend; 3760 _resume; 3761 _resume_ret; 3762 _rpcsys; 3763 _sbrk_grow_aligned; 3764 scrwidth; 3765 secflag_by_name; 3766 secflag_clear; 3767 secflags_copy; 3768 secflags_difference; 3769 secflags_fullset; 3770 secflags_intersection; 3771 secflags_isempty; 3772 secflag_isset; 3773 secflags_issubset; 3774 secflags_issuperset; 3775 secflag_set; 3776 secflag_to_bit; 3777 secflag_to_str; 3778 secflags_union; 3779 psecflags_validate_delta; 3780 secflags_zero; 3781 psecflags_default; 3782 secflags_parse; 3783 secflags_to_str; 3784 psecflags_validate; 3785 semctl64; 3786 _semctl64; 3787 set_setcontext_enforcement; 3788 _setbufend; 3789 __set_errno; 3790 setprojrctl; 3791 _setregid; 3792 _setreuid; 3793 setsigacthandler; 3794 shmctl64; 3795 _shmctl64; 3796 sigflag; 3797 _signal; 3798 _sigoff; 3799 _sigon; 3800 _so_accept; 3801 _so_bind; 3802 _sockconfig; 3803 _so_connect; 3804 _so_getpeername; 3805 _so_getsockname; 3806 _so_getsockopt; 3807 _so_listen; 3808 _so_recv; 3809 _so_recvfrom; 3810 _so_recvmsg; 3811 _so_send; 3812 _so_sendmsg; 3813 _so_sendto; 3814 _so_setsockopt; 3815 _so_shutdown; 3816 _so_socket; 3817 _so_socketpair; 3818 str2group; 3819 str2passwd; 3820 str2spwd; 3821 __strptime_dontzero; 3822 stty; 3823 syscall; 3824 _sysconfig; 3825 __systemcall; 3826 thr_continue_allmutators; 3827 _thr_continue_allmutators; 3828 thr_continue_mutator; 3829 _thr_continue_mutator; 3830 thr_getstate; 3831 _thr_getstate; 3832 thr_mutators_barrier; 3833 _thr_mutators_barrier; 3834 thr_probe_setup; 3835 _thr_schedctl; 3836 thr_setmutator; 3837 _thr_setmutator; 3838 thr_setstate; 3839 _thr_setstate; 3840 thr_sighndlrinfo; 3841 _thr_sighndlrinfo; 3842 _thr_slot_offset; 3843 thr_suspend_allmutators; 3844 _thr_suspend_allmutators; 3845 thr_suspend_mutator; 3846 _thr_suspend_mutator; 3847 thr_wait_mutator; 3848 _thr_wait_mutator; 3849 __tls_get_addr; 3850 _tmem_get_base; 3851 _tmem_get_nentries; 3852 _tmem_set_cleanup; 3853 tpool_create; 3854 tpool_dispatch; 3855 tpool_destroy; 3856 tpool_wait; 3857 tpool_suspend; 3858 tpool_suspended; 3859 tpool_resume; 3860 tpool_member; 3861 _ttyname_dev; 3862 _ucred_alloc; 3863 ucred_getamask; 3864 _ucred_getamask; 3865 ucred_getasid; 3866 _ucred_getasid; 3867 ucred_getatid; 3868 _ucred_getatid; 3869 ucred_getauid; 3870 _ucred_getauid; 3871 _ulltostr; 3872 _uncached_getgrgid_r; 3873 _uncached_getgrnam_r; 3874 _uncached_getpwnam_r; 3875 _uncached_getpwuid_r; 3876 __ungetwc_xpg5; 3877 _unordered; 3878 utssys; 3879 _verrfp; 3880 _verrxfp; 3881 _vwarnfp; 3882 _vwarnxfp; 3883 _warnfp; 3884 _warnxfp; 3885 __wcsftime_xpg5; 3886 __wcstok_xpg5; 3887 wdbindf; 3888 wdchkind; 3889 wddelim; 3890 _wrtchk; 3891 _xflsbuf; 3892 _xgetwidth; 3893 zone_add_datalink; 3894 zone_boot; 3895 zone_check_datalink; 3896 zone_create; 3897 zone_destroy; 3898 zone_enter; 3899 zone_getattr; 3900 zone_get_id; 3901 zone_list; 3902 zone_list_datalink; 3903 zonept; 3904 zone_remove_datalink; 3905 zone_setattr; 3906 zone_shutdown; 3907 zone_version; 3908 3909$if _ELF32 3910 __divdi3; 3911 _file_set; 3912 _fprintf_c89; 3913 _fscanf_c89; 3914 _fwprintf_c89; 3915 _fwscanf_c89; 3916 _imaxabs_c89; 3917 _imaxdiv_c89; 3918 __moddi3; 3919 _printf_c89; 3920 _scanf_c89; 3921 _snprintf_c89; 3922 _sprintf_c89; 3923 _sscanf_c89; 3924 _strtoimax_c89; 3925 _strtoumax_c89; 3926 _swprintf_c89; 3927 _swscanf_c89; 3928 __udivdi3; 3929 __umoddi3; 3930 _vfprintf_c89; 3931 _vfscanf_c89; 3932 _vfwprintf_c89; 3933 _vfwscanf_c89; 3934 _vprintf_c89; 3935 _vscanf_c89; 3936 _vsnprintf_c89; 3937 _vsprintf_c89; 3938 _vsscanf_c89; 3939 _vswprintf_c89; 3940 _vswscanf_c89; 3941 _vwprintf_c89; 3942 _vwscanf_c89; 3943 _wcstoimax_c89; 3944 _wcstoumax_c89; 3945 _wprintf_c89; 3946 _wscanf_c89; 3947$endif 3948 3949$if _sparc 3950 _cerror; 3951 install_utrap; 3952 _install_utrap; 3953 nop; 3954 _Q_cplx_div; 3955 _Q_cplx_div_ix; 3956 _Q_cplx_div_rx; 3957 _Q_cplx_lr_div; 3958 _Q_cplx_lr_div_ix; 3959 _Q_cplx_lr_div_rx; 3960 _Q_cplx_lr_mul; 3961 _Q_cplx_mul; 3962 _QgetRD; 3963 _xregs_clrptr; 3964$endif 3965 3966$if sparc32 3967 __ashldi3; 3968 __ashrdi3; 3969 _cerror64; 3970 __cmpdi2; 3971 __floatdidf; 3972 __floatdisf; 3973 __floatundidf; 3974 __floatundisf; 3975 __lshrdi3; 3976 __muldi3; 3977 __ucmpdi2; 3978$endif 3979 3980$if sparcv9 3981 __multi3; 3982$endif 3983 3984$if _x86 3985 _D_cplx_lr_div; 3986 _D_cplx_lr_div_ix; 3987 _D_cplx_lr_div_rx; 3988 _F_cplx_lr_div; 3989 _F_cplx_lr_div_ix; 3990 _F_cplx_lr_div_rx; 3991 __fltrounds; 3992 sysi86; 3993 _sysi86; 3994 _X_cplx_div; 3995 _X_cplx_div_ix; 3996 _X_cplx_div_rx; 3997 _X_cplx_lr_div; 3998 _X_cplx_lr_div_ix; 3999 _X_cplx_lr_div_rx; 4000 _X_cplx_mul; 4001 __xgetRD; 4002 __xtol; 4003 __xtoll; 4004 __xtoul; 4005 __xtoull; 4006$endif 4007 4008$if i386 4009 __divrem64; 4010 ___tls_get_addr; 4011 __udivrem64; 4012$endif 4013 4014 # The following functions should not be exported from libc, 4015 # but /lib/libm.so.2, some older versions of the Studio 4016 # compiler/debugger components, and some ancient programs 4017 # found in /usr/dist reference them. When we no longer 4018 # care about these old and broken binary objects, these 4019 # symbols should be deleted. 4020 _brk { FLAGS = NODYNSORT; }; 4021 _cond_broadcast { FLAGS = NODYNSORT; }; 4022 _cond_init { FLAGS = NODYNSORT; }; 4023 _cond_signal { FLAGS = NODYNSORT; }; 4024 _cond_wait { FLAGS = NODYNSORT; }; 4025 _ecvt { FLAGS = NODYNSORT; }; 4026 _fcvt { FLAGS = NODYNSORT; }; 4027 _getc_unlocked { FLAGS = NODYNSORT; }; 4028 _llseek { FLAGS = NODYNSORT; }; 4029 _pthread_attr_getdetachstate { FLAGS = NODYNSORT; }; 4030 _pthread_attr_getinheritsched { FLAGS = NODYNSORT; }; 4031 _pthread_attr_getschedparam { FLAGS = NODYNSORT; }; 4032 _pthread_attr_getschedpolicy { FLAGS = NODYNSORT; }; 4033 _pthread_attr_getscope { FLAGS = NODYNSORT; }; 4034 _pthread_attr_getstackaddr { FLAGS = NODYNSORT; }; 4035 _pthread_attr_getstacksize { FLAGS = NODYNSORT; }; 4036 _pthread_attr_init { FLAGS = NODYNSORT; }; 4037 _pthread_condattr_getpshared { FLAGS = NODYNSORT; }; 4038 _pthread_condattr_init { FLAGS = NODYNSORT; }; 4039 _pthread_cond_init { FLAGS = NODYNSORT; }; 4040 _pthread_create { FLAGS = NODYNSORT; }; 4041 _pthread_getschedparam { FLAGS = NODYNSORT; }; 4042 _pthread_join { FLAGS = NODYNSORT; }; 4043 _pthread_key_create { FLAGS = NODYNSORT; }; 4044 _pthread_mutexattr_getprioceiling { FLAGS = NODYNSORT; }; 4045 _pthread_mutexattr_getprotocol { FLAGS = NODYNSORT; }; 4046 _pthread_mutexattr_getpshared { FLAGS = NODYNSORT; }; 4047 _pthread_mutexattr_init { FLAGS = NODYNSORT; }; 4048 _pthread_mutex_getprioceiling { FLAGS = NODYNSORT; }; 4049 _pthread_mutex_init { FLAGS = NODYNSORT; }; 4050 _pthread_sigmask { FLAGS = NODYNSORT; }; 4051 _rwlock_init { FLAGS = NODYNSORT; }; 4052 _rw_rdlock { FLAGS = NODYNSORT; }; 4053 _rw_unlock { FLAGS = NODYNSORT; }; 4054 _rw_wrlock { FLAGS = NODYNSORT; }; 4055 _sbrk_unlocked { FLAGS = NODYNSORT; }; 4056 _select { FLAGS = NODYNSORT; }; 4057 _sema_init { FLAGS = NODYNSORT; }; 4058 _sema_post { FLAGS = NODYNSORT; }; 4059 _sema_trywait { FLAGS = NODYNSORT; }; 4060 _sema_wait { FLAGS = NODYNSORT; }; 4061 _sysfs { FLAGS = NODYNSORT; }; 4062 _thr_create { FLAGS = NODYNSORT; }; 4063 _thr_exit { FLAGS = NODYNSORT; }; 4064 _thr_getprio { FLAGS = NODYNSORT; }; 4065 _thr_getspecific { FLAGS = NODYNSORT; }; 4066 _thr_join { FLAGS = NODYNSORT; }; 4067 _thr_keycreate { FLAGS = NODYNSORT; }; 4068 _thr_kill { FLAGS = NODYNSORT; }; 4069 _thr_main { FLAGS = NODYNSORT; }; 4070 _thr_self { FLAGS = NODYNSORT; }; 4071 _thr_setspecific { FLAGS = NODYNSORT; }; 4072 _thr_sigsetmask { FLAGS = NODYNSORT; }; 4073 _thr_stksegment { FLAGS = NODYNSORT; }; 4074 _ungetc_unlocked { FLAGS = NODYNSORT; }; 4075 4076 local: 4077 _ti_thr_self { FLAGS = NODYNSORT; }; 4078 __imax_lldiv { FLAGS = NODYNSORT; }; 4079 4080 *; 4081$if lf64 4082 _seekdir64 { FLAGS = NODYNSORT; }; 4083 _telldir64 { FLAGS = NODYNSORT; }; 4084$endif 4085 4086$if _sparc 4087 __cerror { FLAGS = NODYNSORT; }; 4088$endif 4089 4090$if sparc32 4091 __cerror64 { FLAGS = NODYNSORT; }; 4092$endif 4093 4094$if sparcv9 4095 __cleanup { FLAGS = NODYNSORT; }; 4096$endif 4097 4098$if i386 4099 _syscall6 { FLAGS = NODYNSORT; }; 4100 __systemcall6 { FLAGS = NODYNSORT; }; 4101$endif 4102 4103$if amd64 4104 ___tls_get_addr { FLAGS = NODYNSORT; }; 4105$endif 4106}; 4107