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