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