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