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