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