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