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