#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# or http://www.opensolaris.org/os/licensing.
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
#
#
# MAPFILE HEADER START
#
# WARNING: STOP NOW. DO NOT MODIFY THIS FILE.
# Object versioning must comply with the rules detailed in
#
# usr/src/lib/README.mapfiles
#
# You should not be making modifications here until you've read the most current
# copy of that file. If you need help, contact a gatekeeper for guidance.
#
# MAPFILE HEADER END
#
$mapfile_version 2
STUB_OBJECT;
#
# All function names added to this or any other libc mapfile
# must be placed under the 'protected:' designation.
# The 'global:' designation is used *only* for data
# items and for the members of the malloc() family.
#
#
# README README README README README README: how to update this file
# 1) All committed/public symbols go in SUNWpublic
# 2) All private symbols go in SUNWprivate
# 3) Do not remove or alter any other existing versions
#
# Mnemonic conditional input identifiers:
#
# - amd64, i386, sparc32, sparcv9: Correspond to ISA subdirectories used to
# hold per-platform code. Note however that we use 'sparc32' instead of
# 'sparc'. Since '_sparc' is predefined to apply to, all sparc platforms,
# naming the 32-bit version 'sparc' would be too likely to cause errors.
#
# - lf64: Defined on platforms that offer the 32-bit largefile APIs
#
$if _ELF32
$add lf64
$endif
$if _sparc && _ELF32
$add sparc32
$endif
$if _sparc && _ELF64
$add sparcv9
$endif
$if _x86 && _ELF32
$add i386
$endif
$if _x86 && _ELF64
$add amd64
$endif
SYMBOL_VERSION SUNWpublic {
protected:
frealpath;
getuserattrnam;
getuserattruid;
sigqueue_wait;
} SUNW_1.23;
SYMBOL_VERSION SUNW_1.23 { # SunOS 5.11 (Solaris 11)
global:
_nl_domain_bindings {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
_nl_msg_cat_cntr {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
$if _ELF32
dl_iterate_phdr { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
$elif sparcv9
dl_iterate_phdr { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
$elif amd64
dl_iterate_phdr { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
$else
$error unknown platform
$endif
protected:
$if sparc32
__align_cpy_1;
$endif
chkauthattr;
endauthattr;
endexecattr;
endprofattr;
enduserattr;
fgetuserattr;
free_authattr;
free_execattr;
free_profattr;
free_proflist;
free_userattr;
getauthattr;
getauthnam;
getexecattr;
getexecprof;
getexecuser;
getprofattr;
getproflist;
getprofnam;
getuserattr;
getusernam;
getuseruid;
kva_match;
match_execattr;
setauthattr;
setexecattr;
setprofattr;
setuserattr;
addrtosymstr;
aio_cancel;
aiocancel;
aio_error;
aio_fsync;
aio_read;
aioread;
aio_return;
aio_suspend;
aiowait;
aio_waitn;
aio_write;
aiowrite;
assfail;
backtrace;
backtrace_symbols;
backtrace_symbols_fd;
canonicalize_file_name;
clearenv;
clock_getres;
clock_gettime;
clock_nanosleep;
clock_settime;
daemon;
dirfd;
door_bind;
door_call;
door_create;
door_cred;
door_getparam;
door_info;
door_return;
door_revoke;
door_server_create;
door_setparam;
door_ucred;
door_unbind;
door_xcreate;
err;
errx;
execvex;
faccessat;
fchmodat;
fcloseall;
fexecve;
ffsl;
ffsll;
fgetattr;
fls;
flsl;
flsll;
forkallx;
forkx;
fsetattr;
getattrat;
getdelim;
getline;
get_nprocs;
get_nprocs_conf;
getprogname;
htonl;
htonll;
htons;
iconvctl;
iconvstr;
linkat;
lio_listio;
localelist;
localelistfree;
memmem;
mkdirat;
mkdtemp;
mkfifoat;
mknodat;
mkstemps;
mmapobj;
mq_close;
mq_getattr;
mq_notify;
mq_open;
mq_receive;
mq_reltimedreceive_np;
mq_reltimedsend_np;
mq_send;
mq_setattr;
mq_timedreceive;
mq_timedsend;
mq_unlink;
nanosleep;
ntohl;
ntohll;
ntohs;
posix_fadvise;
posix_fallocate;
posix_madvise;
posix_memalign;
posix_spawn_file_actions_addclosefrom_np;
posix_spawnattr_getsigignore_np;
posix_spawnattr_setsigignore_np;
ppoll;
priv_basicset;
pthread_key_create_once_np;
pthread_mutexattr_getrobust;
pthread_mutexattr_setrobust;
pthread_mutex_consistent;
readlinkat;
sched_getparam;
sched_get_priority_max;
sched_get_priority_min;
sched_getscheduler;
sched_rr_get_interval;
sched_setparam;
sched_setscheduler;
sched_yield;
sem_close;
sem_destroy;
sem_getvalue;
sem_init;
sem_open;
sem_post;
sem_reltimedwait_np;
sem_timedwait;
sem_trywait;
sem_unlink;
sem_wait;
setattrat;
setprogname;
sharefs;
shm_open;
shm_unlink;
shmadv;
sigqueue;
sigtimedwait;
sigwaitinfo;
stpcpy;
stpncpy;
strcasestr;
strchrnul;
strndup;
strnlen;
strnstr;
strsep;
symlinkat;
thr_keycreate_once;
timer_create;
timer_delete;
timer_getoverrun;
timer_gettime;
timer_settime;
u8_strcmp;
u8_validate;
uconv_u16tou32;
uconv_u16tou8;
uconv_u32tou16;
uconv_u32tou8;
uconv_u8tou16;
uconv_u8tou32;
verr;
verrx;
vforkx;
vwarn;
vwarnx;
warn;
warnx;
wcpcpy;
wcpncpy;
wcscasecmp;
wcsdup;
wcsncasecmp;
wcsnlen;
$if lf64
aio_cancel64;
aio_error64;
aio_fsync64;
aio_read64;
aioread64;
aio_return64;
aio_suspend64;
aio_waitn64;
aio_write64;
aiowrite64;
lio_listio64;
mkstemps64;
posix_fadvise64;
posix_fallocate64;
$endif
} SUNW_1.22.7;
SYMBOL_VERSION SUNW_1.22.7 { # s10u10 - SunOS 5.10 (Solaris 10) patch additions
protected:
asprintf;
fdatasync;
smt_pause;
vasprintf;
} SUNW_1.22.6;
SYMBOL_VERSION SUNW_1.22.6 { # s10u9 - SunOS 5.10 (Solaris 10) patch additions
protected:
futimens;
utimensat;
} SUNW_1.22.5;
SYMBOL_VERSION SUNW_1.22.5 { # s10u8 - SunOS 5.10 (Solaris 10) patch additions
protected:
getpagesizes2;
} SUNW_1.22.4;
SYMBOL_VERSION SUNW_1.22.4 { # s10u7 - SunOS 5.10 (Solaris 10) patch additions
protected:
SUNW_1.22.4;
} SUNW_1.22.3;
SYMBOL_VERSION SUNW_1.22.3 { # SunOS 5.10 (Solaris 10) patch additions
protected:
mutex_consistent;
u8_textprep_str;
uucopy;
uucopystr;
} SUNW_1.22.2;
SYMBOL_VERSION SUNW_1.22.2 { # SunOS 5.10 (Solaris 10) patch additions
protected:
is_system_labeled;
ucred_getlabel;
_ucred_getlabel;
} SUNW_1.22.1;
SYMBOL_VERSION SUNW_1.22.1 { # SunOS 5.10 (Solaris 10) patch additions
protected:
atomic_add_8;
atomic_add_8_nv;
atomic_add_char { FLAGS = NODYNSORT };
atomic_add_char_nv { FLAGS = NODYNSORT };
atomic_add_int { FLAGS = NODYNSORT };
atomic_add_int_nv { FLAGS = NODYNSORT };
atomic_add_ptr { FLAGS = NODYNSORT };
atomic_add_ptr_nv { FLAGS = NODYNSORT };
atomic_add_short { FLAGS = NODYNSORT };
atomic_add_short_nv { FLAGS = NODYNSORT };
atomic_and_16;
atomic_and_16_nv;
atomic_and_32_nv;
atomic_and_64;
atomic_and_64_nv;
atomic_and_8;
atomic_and_8_nv;
atomic_and_uchar { FLAGS = NODYNSORT };
atomic_and_uchar_nv { FLAGS = NODYNSORT };
atomic_and_uint_nv { FLAGS = NODYNSORT };
atomic_and_ulong { FLAGS = NODYNSORT };
atomic_and_ulong_nv { FLAGS = NODYNSORT };
atomic_and_ushort { FLAGS = NODYNSORT };
atomic_and_ushort_nv { FLAGS = NODYNSORT };
atomic_cas_16;
atomic_cas_32;
atomic_cas_64;
atomic_cas_8;
atomic_cas_ptr { FLAGS = NODYNSORT };
atomic_cas_uchar { FLAGS = NODYNSORT };
atomic_cas_uint { FLAGS = NODYNSORT };
atomic_cas_ulong { FLAGS = NODYNSORT };
atomic_cas_ushort { FLAGS = NODYNSORT };
atomic_clear_long_excl { FLAGS = NODYNSORT };
atomic_dec_16;
atomic_dec_16_nv;
atomic_dec_32;
atomic_dec_32_nv;
atomic_dec_64;
atomic_dec_64_nv;
atomic_dec_8;
atomic_dec_8_nv;
atomic_dec_uchar { FLAGS = NODYNSORT };
atomic_dec_uchar_nv { FLAGS = NODYNSORT };
atomic_dec_uint { FLAGS = NODYNSORT };
atomic_dec_uint_nv { FLAGS = NODYNSORT };
atomic_dec_ulong { FLAGS = NODYNSORT };
atomic_dec_ulong_nv { FLAGS = NODYNSORT };
atomic_dec_ushort { FLAGS = NODYNSORT };
atomic_dec_ushort_nv { FLAGS = NODYNSORT };
atomic_inc_16;
atomic_inc_16_nv;
atomic_inc_32;
atomic_inc_32_nv;
atomic_inc_64;
atomic_inc_64_nv;
atomic_inc_8;
atomic_inc_8_nv;
atomic_inc_uchar { FLAGS = NODYNSORT };
atomic_inc_uchar_nv { FLAGS = NODYNSORT };
atomic_inc_uint { FLAGS = NODYNSORT };
atomic_inc_uint_nv { FLAGS = NODYNSORT };
atomic_inc_ulong { FLAGS = NODYNSORT };
atomic_inc_ulong_nv { FLAGS = NODYNSORT };
atomic_inc_ushort { FLAGS = NODYNSORT };
atomic_inc_ushort_nv { FLAGS = NODYNSORT };
atomic_or_16;
atomic_or_16_nv;
atomic_or_32_nv;
atomic_or_64;
atomic_or_64_nv;
atomic_or_8;
atomic_or_8_nv;
atomic_or_uchar { FLAGS = NODYNSORT };
atomic_or_uchar_nv { FLAGS = NODYNSORT };
atomic_or_uint_nv { FLAGS = NODYNSORT };
atomic_or_ulong { FLAGS = NODYNSORT };
atomic_or_ulong_nv { FLAGS = NODYNSORT };
atomic_or_ushort { FLAGS = NODYNSORT };
atomic_or_ushort_nv { FLAGS = NODYNSORT };
atomic_set_long_excl { FLAGS = NODYNSORT };
atomic_swap_16;
atomic_swap_32;
atomic_swap_64;
atomic_swap_8;
atomic_swap_ptr { FLAGS = NODYNSORT };
atomic_swap_uchar { FLAGS = NODYNSORT };
atomic_swap_uint { FLAGS = NODYNSORT };
atomic_swap_ulong { FLAGS = NODYNSORT };
atomic_swap_ushort { FLAGS = NODYNSORT };
membar_consumer;
membar_enter;
membar_exit;
membar_producer;
$if _ELF32
enable_extended_FILE_stdio;
$endif
$if i386
# Note: atomic_[and,dec,inc,or]_64_nv are also defined above. Here,
# we add the NODYNSORT attribute to them. On this platform, they are
# aliases for the non-_nv versions. If that is changed, these lines
# should be removed.
atomic_and_64_nv { FLAGS = NODYNSORT };
atomic_dec_64_nv { FLAGS = NODYNSORT };
atomic_inc_64_nv { FLAGS = NODYNSORT };
atomic_or_64_nv { FLAGS = NODYNSORT };
$endif
$if _sparc
# Note: atomic_OP_WIDTH_nv symbols are also defined above. Here,
# we add the NODYNSORT attribute to them. On this platform, they are
# aliases for the non-_nv versions. If that is changed, these lines
# should be removed.
atomic_add_8_nv { FLAGS = NODYNSORT };
atomic_and_8_nv { FLAGS = NODYNSORT };
atomic_and_16_nv { FLAGS = NODYNSORT };
atomic_and_32_nv { FLAGS = NODYNSORT };
atomic_and_64_nv { FLAGS = NODYNSORT };
atomic_dec_8_nv { FLAGS = NODYNSORT };
atomic_dec_16_nv { FLAGS = NODYNSORT };
atomic_dec_32_nv { FLAGS = NODYNSORT };
atomic_dec_64_nv { FLAGS = NODYNSORT };
atomic_inc_8_nv { FLAGS = NODYNSORT };
atomic_inc_16_nv { FLAGS = NODYNSORT };
atomic_inc_32_nv { FLAGS = NODYNSORT };
atomic_inc_64_nv { FLAGS = NODYNSORT };
atomic_or_8_nv { FLAGS = NODYNSORT };
atomic_or_16_nv { FLAGS = NODYNSORT };
atomic_or_32_nv { FLAGS = NODYNSORT };
atomic_or_64_nv { FLAGS = NODYNSORT };
$endif
} SUNW_1.22;
SYMBOL_VERSION SUNW_1.22 { # SunOS 5.10 (Solaris 10)
global:
$if _ELF32
dladdr { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dlclose { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dldump { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dlerror { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dlopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
dlsym { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
$elif sparcv9
dladdr { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dlclose { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dldump { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dlerror { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dlopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
dlsym { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
$elif amd64
dladdr { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dlamd64getunwind { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dlclose { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dldump { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dlerror { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dlopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
dlsym { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
$else
$error unknown platform
$endif
protected:
alphasort;
_alphasort;
atomic_add_16;
atomic_add_16_nv;
atomic_add_32;
atomic_add_32_nv;
atomic_add_64;
atomic_add_64_nv;
atomic_add_long { FLAGS = NODYNSORT };
atomic_add_long_nv { FLAGS = NODYNSORT };
atomic_and_32;
atomic_and_uint { FLAGS = NODYNSORT };
atomic_or_32;
atomic_or_uint { FLAGS = NODYNSORT };
_Exit;
getisax;
_getisax;
getopt_clip;
_getopt_clip;
getopt_long;
_getopt_long;
getopt_long_only;
_getopt_long_only;
getpeerucred;
_getpeerucred;
getpflags;
_getpflags;
getppriv;
_getppriv;
getprivimplinfo;
_getprivimplinfo;
getzoneid;
getzoneidbyname;
getzonenamebyid;
imaxabs;
imaxdiv;
isblank;
iswblank;
port_alert;
port_associate;
port_create;
port_dissociate;
port_get;
port_getn;
port_send;
port_sendn;
posix_openpt;
posix_spawn;
posix_spawnattr_destroy;
posix_spawnattr_getflags;
posix_spawnattr_getpgroup;
posix_spawnattr_getschedparam;
posix_spawnattr_getschedpolicy;
posix_spawnattr_getsigdefault;
posix_spawnattr_getsigmask;
posix_spawnattr_init;
posix_spawnattr_setflags;
posix_spawnattr_setpgroup;
posix_spawnattr_setschedparam;
posix_spawnattr_setschedpolicy;
posix_spawnattr_setsigdefault;
posix_spawnattr_setsigmask;
posix_spawn_file_actions_addclose;
posix_spawn_file_actions_adddup2;
posix_spawn_file_actions_addopen;
posix_spawn_file_actions_destroy;
posix_spawn_file_actions_init;
posix_spawnp;
priv_addset;
_priv_addset;
priv_allocset;
_priv_allocset;
priv_copyset;
_priv_copyset;
priv_delset;
_priv_delset;
priv_emptyset;
_priv_emptyset;
priv_fillset;
_priv_fillset;
__priv_free_info;
priv_freeset;
_priv_freeset;
priv_getbyname;
_priv_getbyname;
__priv_getbyname;
priv_getbynum;
_priv_getbynum;
__priv_getbynum;
__priv_getdata;
priv_getsetbyname;
_priv_getsetbyname;
__priv_getsetbyname;
priv_getsetbynum;
_priv_getsetbynum;
__priv_getsetbynum;
priv_gettext;
_priv_gettext;
priv_ineffect;
_priv_ineffect;
priv_intersect;
_priv_intersect;
priv_inverse;
_priv_inverse;
priv_isemptyset;
_priv_isemptyset;
priv_isequalset;
_priv_isequalset;
priv_isfullset;
_priv_isfullset;
priv_ismember;
_priv_ismember;
priv_issubset;
_priv_issubset;
__priv_parse_info;
priv_set;
_priv_set;
priv_set_to_str;
_priv_set_to_str;
__priv_set_to_str;
priv_str_to_set;
_priv_str_to_set;
priv_union;
_priv_union;
pselect;
pthread_attr_getstack;
pthread_attr_setstack;
pthread_barrierattr_destroy;
pthread_barrierattr_getpshared;
pthread_barrierattr_init;
pthread_barrierattr_setpshared;
pthread_barrier_destroy;
pthread_barrier_init;
pthread_barrier_wait;
pthread_condattr_getclock;
pthread_condattr_setclock;
pthread_mutexattr_getrobust_np { FLAGS = NODYNSORT };
pthread_mutexattr_setrobust_np { FLAGS = NODYNSORT };
pthread_mutex_consistent_np { FLAGS = NODYNSORT };
pthread_mutex_reltimedlock_np;
pthread_mutex_timedlock;
pthread_rwlock_reltimedrdlock_np;
pthread_rwlock_reltimedwrlock_np;
pthread_rwlock_timedrdlock;
pthread_rwlock_timedwrlock;
pthread_setschedprio;
pthread_spin_destroy;
pthread_spin_init;
pthread_spin_lock;
pthread_spin_trylock;
pthread_spin_unlock;
rctlblk_set_recipient_pid;
scandir;
_scandir;
schedctl_exit;
schedctl_init;
schedctl_lookup;
sema_reltimedwait;
sema_timedwait;
setenv;
setpflags;
_setpflags;
setppriv;
_setppriv;
strerror_r;
strtof;
strtoimax;
strtold;
strtoumax;
ucred_free;
_ucred_free;
ucred_get;
_ucred_get;
ucred_getegid;
_ucred_getegid;
ucred_geteuid;
_ucred_geteuid;
ucred_getgroups;
_ucred_getgroups;
ucred_getpflags;
_ucred_getpflags;
ucred_getpid;
_ucred_getpid;
ucred_getprivset;
_ucred_getprivset;
ucred_getprojid;
_ucred_getprojid;
ucred_getrgid;
_ucred_getrgid;
ucred_getruid;
_ucred_getruid;
ucred_getsgid;
_ucred_getsgid;
ucred_getsuid;
_ucred_getsuid;
ucred_getzoneid;
_ucred_getzoneid;
ucred_size;
_ucred_size;
unsetenv;
wcstof;
wcstoimax;
wcstold;
wcstoll;
wcstoull;
wcstoumax;
$if lf64
alphasort64;
_alphasort64;
pselect_large_fdset;
scandir64;
_scandir64;
$endif
$if _ELF64
walkcontext;
$endif
$if _sparc
# Note: atomic_add_[16,32,64]_nv are also defined above. Here, we add
# the NODYNSORT attribute to them. On this platform, they are aliases
# for the non-_nv versions. If that is changed, these lines should be
# removed.
atomic_add_16_nv { FLAGS = NODYNSORT };
atomic_add_32_nv { FLAGS = NODYNSORT };
atomic_add_64_nv { FLAGS = NODYNSORT };
$endif
$if i386
# Note: atomic_add_64_nv is also defined above. Here, we add the
# NODYNSORT attribute to it. On this platform, it is an aliases for
# atomic_add_64. If that is changed, this line should be removed.
atomic_add_64_nv { FLAGS = NODYNSORT };
$endif
$if amd64
# Exception unwind APIs required by the amd64 ABI
_SUNW_Unwind_DeleteException;
_SUNW_Unwind_ForcedUnwind;
_SUNW_Unwind_GetCFA;
_SUNW_Unwind_GetGR;
_SUNW_Unwind_GetIP;
_SUNW_Unwind_GetLanguageSpecificData;
_SUNW_Unwind_GetRegionStart;
_SUNW_Unwind_RaiseException;
_SUNW_Unwind_Resume;
_SUNW_Unwind_SetGR;
_SUNW_Unwind_SetIP;
_UA_CLEANUP_PHASE { ASSERT { TYPE=data; SIZE=4 } };
_UA_FORCE_UNWIND { ASSERT { TYPE=data; SIZE=4 } };
_UA_HANDLER_FRAME { ASSERT { TYPE=data; SIZE=4 } };
_UA_SEARCH_PHASE { ASSERT { TYPE=data; SIZE=4 } };
_Unwind_DeleteException;
_Unwind_ForcedUnwind;
_Unwind_GetCFA;
_Unwind_GetGR;
_Unwind_GetIP;
_Unwind_GetLanguageSpecificData;
_Unwind_GetRegionStart;
_Unwind_RaiseException;
_Unwind_Resume;
_Unwind_SetGR;
_Unwind_SetIP;
$endif
} SUNW_1.21.3;
SYMBOL_VERSION SUNW_1.21.3 { # SunOS 5.9 (Solaris 9) patch additions
protected:
forkall;
} SUNW_1.21.2;
SYMBOL_VERSION SUNW_1.21.2 { # SunOS 5.9 (Solaris 9) patch additions
protected:
getustack;
_getustack;
setustack;
_setustack;
stack_getbounds;
_stack_getbounds;
_stack_grow;
stack_inbounds;
_stack_inbounds;
stack_setbounds;
_stack_setbounds;
stack_violation;
_stack_violation;
$if _sparc
__makecontext_v2;
___makecontext_v2;
$endif
} SUNW_1.21.1;
SYMBOL_VERSION SUNW_1.21.1 { # SunOS 5.9 (Solaris 9) patch additions
protected:
crypt_gensalt;
} SUNW_1.21;
SYMBOL_VERSION SUNW_1.21 { # SunOS 5.9 (Solaris 9)
protected:
attropen;
_attropen;
bind_textdomain_codeset;
closefrom;
_closefrom;
cond_reltimedwait;
dcngettext;
dngettext;
fchownat;
_fchownat;
fdopendir;
_fdopendir;
fdwalk;
_fdwalk;
fstatat;
_fstatat;
futimesat;
_futimesat;
getcpuid;
_getcpuid;
gethomelgroup;
_gethomelgroup { FLAGS = NODYNSORT };
getpagesizes;
getrctl;
_getrctl;
issetugid;
_issetugid;
_lwp_cond_reltimedwait;
meminfo;
_meminfo;
ngettext;
openat;
_openat;
printstack;
priocntl;
priocntlset;
pset_getattr;
pset_getloadavg;
pset_list;
pset_setattr;
pthread_cond_reltimedwait_np;
rctlblk_get_enforced_value;
rctlblk_get_firing_time;
rctlblk_get_global_action;
rctlblk_get_global_flags;
rctlblk_get_local_action;
rctlblk_get_local_flags;
rctlblk_get_privilege;
rctlblk_get_recipient_pid;
rctlblk_get_value;
rctlblk_set_local_action;
rctlblk_set_local_flags;
rctlblk_set_privilege;
rctlblk_set_value;
rctlblk_size;
rctl_walk;
renameat;
setrctl;
_setrctl;
unlinkat;
_unlinkat;
vfscanf;
_vfscanf;
vfwscanf;
vscanf;
_vscanf;
vsscanf;
_vsscanf;
vswscanf;
vwscanf;
$if _ELF32
walkcontext;
$endif
$if lf64
attropen64;
_attropen64;
fstatat64;
_fstatat64;
openat64;
_openat64;
$endif
} SUNW_1.20.4;
SYMBOL_VERSION SUNW_1.20.4 { # SunOS 5.8 (Solaris 8) patch additions
protected:
semtimedop;
_semtimedop;
} SUNW_1.20.1;
SYMBOL_VERSION SUNW_1.20.1 { # SunOS 5.8 (Solaris 8) patch additions
protected:
getacct;
_getacct;
getprojid;
_getprojid;
gettaskid;
_gettaskid;
msgids;
_msgids;
msgsnap;
_msgsnap;
putacct;
_putacct;
semids;
_semids;
settaskid;
_settaskid;
shmids;
_shmids;
wracct;
_wracct;
} SUNW_1.20;
SYMBOL_VERSION SUNW_1.20 { # SunOS 5.8 (Solaris 8)
protected:
getextmntent;
resetmnttab;
} SUNW_1.19;
SYMBOL_VERSION SUNW_1.19 {
protected:
strlcat;
strlcpy;
umount2;
_umount2;
} SUNW_1.18.1;
SYMBOL_VERSION SUNW_1.18.1 {
protected:
__fsetlocking;
} SUNW_1.18;
SYMBOL_VERSION SUNW_1.18 { # SunOS 5.7 (Solaris 7)
protected:
btowc;
__fbufsize;
__flbf;
_flushlbf;
__fpending;
__fpurge;
__freadable;
__freading;
fwide;
fwprintf;
__fwritable;
__fwriting;
fwscanf;
getloadavg;
isaexec;
mbrlen;
mbrtowc;
mbsinit;
mbsrtowcs;
pcsample;
pthread_attr_getguardsize;
pthread_attr_setguardsize;
pthread_getconcurrency;
pthread_mutexattr_gettype;
pthread_mutexattr_settype;
pthread_rwlockattr_destroy;
pthread_rwlockattr_getpshared;
pthread_rwlockattr_init;
pthread_rwlockattr_setpshared;
pthread_rwlock_destroy;
pthread_rwlock_init;
pthread_rwlock_rdlock;
pthread_rwlock_tryrdlock;
pthread_rwlock_trywrlock;
pthread_rwlock_unlock;
pthread_rwlock_wrlock;
pthread_setconcurrency;
swprintf;
swscanf;
__sysconf_xpg5;
vfwprintf;
vswprintf;
vwprintf;
wcrtomb;
wcsrtombs;
wcsstr;
wctob;
wmemchr;
wmemcmp;
wmemcpy;
wmemmove;
wmemset;
wprintf;
wscanf;
$if _ELF32
select_large_fdset;
$endif
} SUNW_1.17;
# The empty versions SUNW_1.2 through SUNW_1.17 must be preserved because
# applications built on Solaris 2.6 Beta (when they did contain symbols)
# may depend on them. All symbol content for SunOS 5.6 is now in SUNW_1.1
SYMBOL_VERSION SUNW_1.17 {
protected:
SUNW_1.17;
} SUNW_1.16;
SYMBOL_VERSION SUNW_1.16 {
protected:
SUNW_1.16;
} SUNW_1.15;
SYMBOL_VERSION SUNW_1.15 {
protected:
SUNW_1.15;
} SUNW_1.14;
SYMBOL_VERSION SUNW_1.14 {
protected:
SUNW_1.14;
} SUNW_1.13;
SYMBOL_VERSION SUNW_1.13 {
protected:
SUNW_1.13;
} SUNW_1.12;
SYMBOL_VERSION SUNW_1.12 {
protected:
SUNW_1.12;
} SUNW_1.11;
SYMBOL_VERSION SUNW_1.11 {
protected:
SUNW_1.11;
} SUNW_1.10;
SYMBOL_VERSION SUNW_1.10 {
protected:
SUNW_1.10;
} SUNW_1.9;
SYMBOL_VERSION SUNW_1.9 {
protected:
SUNW_1.9;
} SUNW_1.8;
SYMBOL_VERSION SUNW_1.8 {
protected:
SUNW_1.8;
} SUNW_1.7;
SYMBOL_VERSION SUNW_1.7 {
protected:
SUNW_1.7;
} SUNW_1.6;
SYMBOL_VERSION SUNW_1.6 {
protected:
SUNW_1.6;
} SUNW_1.5;
SYMBOL_VERSION SUNW_1.5 {
protected:
SUNW_1.5;
} SUNW_1.4;
SYMBOL_VERSION SUNW_1.4 {
protected:
SUNW_1.4;
} SUNW_1.3;
SYMBOL_VERSION SUNW_1.3 {
protected:
SUNW_1.3;
} SUNW_1.2;
SYMBOL_VERSION SUNW_1.2 {
protected:
SUNW_1.2;
} SUNW_1.1;
SYMBOL_VERSION SUNW_1.1 { # SunOS 5.6 (Solaris 2.6)
global:
__loc1 {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
protected:
basename;
bindtextdomain;
bsd_signal;
dbm_clearerr;
dbm_error;
dcgettext;
dgettext;
directio;
dirname;
endusershell;
_exithandle;
fgetwc;
fgetws;
fpgetround;
fpsetround;
fputwc;
fputws;
fseeko;
ftello;
ftrylockfile;
getexecname;
_getexecname;
getpassphrase;
gettext;
getusershell;
getwc;
getwchar;
getws;
isenglish;
isideogram;
isnumber;
isphonogram;
isspecial;
iswalnum;
iswalpha;
iswcntrl;
iswctype;
iswdigit;
iswgraph;
iswlower;
iswprint;
iswpunct;
iswspace;
iswupper;
iswxdigit;
____loc1;
_longjmp;
_lwp_sema_trywait;
ntp_adjtime;
_ntp_adjtime;
ntp_gettime;
_ntp_gettime;
__posix_asctime_r;
__posix_ctime_r;
__posix_getgrgid_r;
__posix_getgrnam_r;
__posix_getlogin_r;
__posix_getpwnam_r;
__posix_getpwuid_r;
__posix_sigwait;
__posix_ttyname_r;
pset_assign;
pset_bind;
pset_create;
pset_destroy;
pset_info;
pthread_atfork;
pthread_attr_destroy;
pthread_attr_getdetachstate;
pthread_attr_getinheritsched;
pthread_attr_getschedparam;
pthread_attr_getschedpolicy;
pthread_attr_getscope;
pthread_attr_getstackaddr;
pthread_attr_getstacksize;
pthread_attr_init;
pthread_attr_setdetachstate;
pthread_attr_setinheritsched;
pthread_attr_setschedparam;
pthread_attr_setschedpolicy;
pthread_attr_setscope;
pthread_attr_setstackaddr;
pthread_attr_setstacksize;
pthread_cancel;
__pthread_cleanup_pop;
__pthread_cleanup_push;
pthread_create;
pthread_detach;
pthread_equal;
pthread_exit;
pthread_getschedparam;
pthread_getspecific;
pthread_join;
pthread_key_create;
pthread_key_delete;
pthread_kill;
pthread_once;
pthread_self;
pthread_setcancelstate;
pthread_setcanceltype;
pthread_setschedparam;
pthread_setspecific;
pthread_sigmask;
pthread_testcancel;
putwc;
putwchar;
putws;
regcmp;
regex;
resolvepath;
_resolvepath;
rwlock_destroy { FLAGS = NODYNSORT };
_rwlock_destroy { FLAGS = NODYNSORT };
sema_destroy;
_sema_destroy;
_setjmp;
setusershell;
siginterrupt;
sigstack;
snprintf;
strtows;
sync_instruction_memory;
textdomain;
thr_main;
towctrans;
towlower;
towupper;
ungetwc;
vsnprintf;
watoll;
wcscat;
wcschr;
wcscmp;
wcscoll;
wcscpy;
wcscspn;
wcsftime;
wcslen;
wcsncat;
wcsncmp;
wcsncpy;
wcspbrk;
wcsrchr;
wcsspn;
wcstod;
wcstok;
wcstol;
wcstoul;
wcswcs;
wcswidth;
wcsxfrm;
wctrans;
wctype;
wcwidth;
wscasecmp;
wscat;
wschr;
wscmp;
wscol;
wscoll;
wscpy;
wscspn;
wsdup;
wslen;
wsncasecmp;
wsncat;
wsncmp;
wsncpy;
wspbrk;
wsprintf;
wsrchr;
wsscanf;
wsspn;
wstod;
wstok;
wstol;
wstoll;
wstostr;
wsxfrm;
__xpg4_putmsg;
__xpg4_putpmsg;
$if lf64
creat64;
_creat64;
fgetpos64;
fopen64;
freopen64;
fseeko64;
fsetpos64;
fstat64;
_fstat64;
fstatvfs64;
_fstatvfs64;
ftello64;
ftruncate64;
_ftruncate64;
ftw64;
_ftw64;
getdents64;
_getdents64;
getrlimit64;
_getrlimit64;
lockf64;
_lockf64;
lseek64;
_lseek64;
lstat64;
_lstat64;
mkstemp64;
_mkstemp64;
mmap64;
_mmap64;
nftw64;
_nftw64;
open64;
_open64;
__posix_readdir_r;
pread64;
_pread64;
pwrite64;
_pwrite64;
readdir64;
_readdir64;
readdir64_r;
_readdir64_r;
setrlimit64;
_setrlimit64;
s_fcntl;
_s_fcntl { FLAGS = NODYNSORT };
s_ioctl;
stat64;
_stat64;
statvfs64;
_statvfs64;
tell64;
_tell64;
tmpfile64;
truncate64;
_truncate64;
_xftw64;
$endif
$if _sparc
__flt_rounds;
$endif
} SUNW_0.9;
SYMBOL_VERSION SUNW_0.9 { # SunOS 5.5 (Solaris 2.5)
protected:
acl;
bcmp;
bcopy;
bzero;
facl;
ftime;
getdtablesize;
gethostid;
gethostname;
getpagesize;
getpriority;
getrusage;
getwd;
index;
initstate;
killpg;
_nsc_trydoorcall;
pthread_condattr_destroy;
pthread_condattr_getpshared;
pthread_condattr_init;
pthread_condattr_setpshared;
pthread_cond_broadcast;
pthread_cond_destroy;
pthread_cond_init;
pthread_cond_signal;
pthread_cond_timedwait;
pthread_cond_wait;
pthread_mutexattr_destroy;
pthread_mutexattr_getprioceiling;
pthread_mutexattr_getprotocol;
pthread_mutexattr_getpshared;
pthread_mutexattr_init;
pthread_mutexattr_setprioceiling;
pthread_mutexattr_setprotocol;
pthread_mutexattr_setpshared;
pthread_mutex_destroy;
pthread_mutex_getprioceiling;
pthread_mutex_init;
pthread_mutex_lock;
pthread_mutex_setprioceiling;
pthread_mutex_trylock;
pthread_mutex_unlock;
random;
reboot;
re_comp;
re_exec;
rindex;
setbuffer;
sethostname;
setlinebuf;
setpriority;
setregid;
setreuid;
setstate;
srandom;
thr_min_stack;
thr_stksegment;
ualarm;
usleep;
wait3;
wait4;
} SUNW_0.8;
SYMBOL_VERSION SUNW_0.8 { # SunOS 5.4 (Solaris 2.4)
global:
__xpg4 {
FLAGS = NODIRECT;
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=4;
};
};
protected:
addsev;
cond_broadcast { FLAGS = NODYNSORT };
cond_destroy { FLAGS = NODYNSORT };
cond_init;
cond_signal { FLAGS = NODYNSORT };
cond_timedwait;
cond_wait;
confstr;
fnmatch;
_getdate_err_addr;
glob;
globfree;
iconv;
iconv_close;
iconv_open;
lfmt;
mutex_destroy { FLAGS = NODYNSORT };
mutex_init;
mutex_lock { FLAGS = NODYNSORT };
mutex_trylock { FLAGS = NODYNSORT };
mutex_unlock { FLAGS = NODYNSORT };
pfmt;
regcomp;
regerror;
regexec;
regfree;
rwlock_init;
rw_rdlock { FLAGS = NODYNSORT };
rw_read_held;
rw_tryrdlock { FLAGS = NODYNSORT };
rw_trywrlock { FLAGS = NODYNSORT };
rw_unlock { FLAGS = NODYNSORT };
rw_write_held;
rw_wrlock { FLAGS = NODYNSORT };
sema_held;
sema_init;
sema_post;
sema_trywait;
sema_wait;
setcat;
sigfpe;
strfmon;
strptime;
thr_continue;
thr_create;
thr_exit;
thr_getconcurrency;
thr_getprio;
thr_getspecific;
thr_join;
thr_keycreate;
thr_kill;
thr_self { FLAGS = NODYNSORT };
thr_setconcurrency;
thr_setprio;
thr_setspecific;
thr_sigsetmask;
thr_suspend;
thr_yield;
vlfmt;
vpfmt;
wordexp;
wordfree;
} SUNW_0.7;
SYMBOL_VERSION SUNW_0.7 { # SunOS 5.3 (Solaris 2.3)
global:
altzone {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=addrsize;
};
};
_ctype {
ASSERT {
TYPE=data;
SIZE=0x209;
BINDING=weak;
};
};
isnanf { TYPE = FUNCTION; FILTER = libm.so.2 };
lone { ASSERT { TYPE=data; SIZE=8 } };
lten { ASSERT { TYPE=data; SIZE=8 } };
lzero {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=8;
};
};
memalign { FLAGS = NODIRECT };
modff { TYPE = FUNCTION; FILTER = libm.so.2 };
nss_default_finders { ASSERT { TYPE=data; SIZE=addrsize } };
_sibuf {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=0x408;
};
};
_sobuf {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=0x408;
};
};
_sys_buslist { ASSERT { TYPE=data; SIZE=addrsize[3] } };
_sys_cldlist { ASSERT { TYPE=data; SIZE=addrsize[6] } };
_sys_fpelist {
ASSERT {
TYPE=data;
$if _x86
SIZE=addrsize[9];
$elif _sparc
SIZE=addrsize[8];
$else
$error unknown platform
$endif
};
};
_sys_illlist { ASSERT { TYPE=data; SIZE=addrsize[8] } };
_sys_segvlist { ASSERT { TYPE=data; SIZE=addrsize[2] } };
_sys_siginfolistp { ASSERT { TYPE=data; SIZE=addrsize } };
_sys_siglist { ASSERT { TYPE=data; SIZE=addrsize[34] } };
_sys_siglistn { ASSERT { TYPE=data; SIZE=4 } };
_sys_siglistp { ASSERT { TYPE=data; SIZE=addrsize } };
_sys_traplist { ASSERT { TYPE=data; SIZE=addrsize[6] } };
valloc { FLAGS = NODIRECT };
$if _ELF32
_bufendtab {
ASSERT {
TYPE=data;
$if _x86
SIZE=0xf4;
$elif _sparc
SIZE=0x54;
$else
$error unknown platform
$endif
};
};
_lastbuf { ASSERT { TYPE=data; SIZE=addrsize } };
sys_errlist { ASSERT { TYPE=data; SIZE=0x260 } };
sys_nerr { ASSERT { TYPE=data; SIZE=4; BINDING=weak } };
_sys_nsig { ASSERT { TYPE=data; SIZE=4 } };
$endif
protected:
a64l;
adjtime;
ascftime;
_assert;
atoll;
brk;
__builtin_alloca;
cftime;
closelog;
csetcol;
csetlen;
ctermid_r;
dbm_close;
dbm_delete;
dbm_fetch;
dbm_firstkey;
dbm_nextkey;
dbm_open;
dbm_store;
decimal_to_double;
decimal_to_extended;
decimal_to_quadruple;
decimal_to_single;
double_to_decimal;
drand48;
econvert;
ecvt;
endnetgrent;
endspent;
endutent;
endutxent;
erand48;
euccol;
euclen;
eucscol;
extended_to_decimal;
fchroot;
fconvert;
fcvt;
ffs;
fgetspent;
fgetspent_r;
_filbuf;
file_to_decimal;
finite;
_flsbuf;
fork1 { FLAGS = NODYNSORT };
fpclass;
fpgetmask;
fpgetsticky;
fpsetmask;
fpsetsticky;
fstatfs;
ftruncate;
ftw;
func_to_decimal;
gconvert;
gcvt;
getdents;
gethrtime;
gethrvtime;
getmntany;
getmntent;
getnetgrent;
getnetgrent_r;
getpw;
getspent;
getspent_r;
getspnam;
getspnam_r;
getutent;
getutid;
getutline;
getutmp;
getutmpx;
getutxent;
getutxid;
getutxline;
getvfsany;
getvfsent;
getvfsfile;
getvfsspec;
getwidth;
gsignal;
hasmntopt;
innetgr;
insque;
_insque;
jrand48;
l64a;
ladd;
lckpwdf;
lcong48;
ldivide;
lexp10;
llabs;
lldiv;
llog10;
llseek;
lltostr;
lmul;
lrand48;
lshiftl;
lsub;
_lwp_cond_broadcast;
_lwp_cond_signal;
_lwp_cond_timedwait;
_lwp_cond_wait;
_lwp_continue;
_lwp_info;
_lwp_kill;
_lwp_mutex_lock;
_lwp_mutex_trylock;
_lwp_mutex_unlock;
_lwp_self;
_lwp_sema_init;
_lwp_sema_post;
_lwp_sema_wait;
_lwp_suspend;
madvise;
__major;
__makedev;
mincore;
__minor;
mkstemp;
_mkstemp;
mlockall;
mrand48;
munlockall;
_mutex_held { FLAGS = NODYNSORT };
_mutex_lock { FLAGS = NODYNSORT };
nrand48;
_nss_netdb_aliases;
_nss_XbyY_buf_alloc;
_nss_XbyY_buf_free;
__nsw_extended_action;
__nsw_freeconfig;
__nsw_getconfig;
openlog;
plock;
p_online;
pread;
__priocntl;
__priocntlset;
processor_bind;
processor_info;
psiginfo;
psignal;
putpwent;
putspent;
pututline;
pututxline;
pwrite;
qeconvert;
qecvt;
qfconvert;
qfcvt;
qgconvert;
qgcvt;
quadruple_to_decimal;
realpath;
remque;
_remque;
_rw_read_held;
_rw_write_held;
seconvert;
seed48;
select;
_sema_held;
setegid;
seteuid;
setlogmask;
setnetgrent;
setspent;
settimeofday;
setutent;
setutxent;
sfconvert;
sgconvert;
sig2str;
sigwait;
single_to_decimal;
srand48;
ssignal;
statfs;
str2sig;
strcasecmp;
string_to_decimal;
strncasecmp;
strsignal;
strtoll;
strtoull;
swapctl;
_syscall;
sysfs;
syslog;
_syslog;
tmpnam_r;
truncate;
ttyslot;
uadmin;
ulckpwdf;
ulltostr;
unordered;
updwtmp;
updwtmpx;
ustat;
utimes;
utmpname;
utmpxname;
vfork;
vhangup;
vsyslog;
yield;
$if i386
# Note: _syscall is also defined above. Here, we add the NODYNSORT
# attribute to it. On this platform, it is an alias to syscall.
# If that is changed, this lines should be removed.
_syscall { FLAGS = NODYNSORT };
$endif
# The 32-bit sparc ABI requires SISCD_2.3. On other platforms, those symbols
# go directly into SUNW_0.7.
$if sparc32
} SISCD_2.3;
SYMBOL_VERSION SISCD_2.3 {
$endif
global:
errno {
FLAGS = NODIRECT;
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
_iob { ASSERT {
TYPE=data;
$if _ELF64
SIZE=0xa00;
$elif sparc32
SIZE=0x140;
$elif i386
SIZE=0x3c0;
$else
$error unknown platform
$endif
};
};
protected:
addseverity;
_addseverity;
asctime_r;
crypt;
_crypt;
ctime_r;
encrypt;
_encrypt;
endgrent;
endpwent;
___errno;
fgetgrent;
fgetgrent_r;
fgetpwent;
fgetpwent_r;
flockfile;
funlockfile;
getchar_unlocked;
getc_unlocked;
getgrent;
getgrent_r;
getgrgid_r;
getgrnam_r;
getitimer;
_getitimer;
getlogin_r;
getpwent;
getpwent_r;
getpwnam_r;
getpwuid_r;
gettimeofday;
_gettimeofday { FLAGS = NODYNSORT };
gmtime_r;
localtime_r;
putchar_unlocked;
putc_unlocked;
rand_r;
readdir_r;
setgrent;
setitimer;
_setitimer;
setkey;
_setkey;
setpwent;
strtok_r;
sysinfo;
_sysinfo;
ttyname_r;
$if _ELF32
__div64;
__mul64;
__rem64;
__udiv64;
__urem64;
$endif
$if sparc32
__dtoll;
__dtoull;
__ftoll;
__ftoull;
_Q_lltoq;
_Q_qtoll;
_Q_qtoull;
_Q_ulltoq;
sbrk;
_sbrk;
__umul64 { FLAGS = NODYNSORT }; # Same address as __mul64
$endif
# On 32-bit platforms, the following symbols go into SYSVABI_1.3, but on
# other platforms they go directly into the current version (which will be
# either SUNW_0.7, or SISCD_2.3, depending on the similar issue described above.
$if _ELF32
} SYSVABI_1.3;
SYMBOL_VERSION SYSVABI_1.3 {
$endif
global:
_altzone { ASSERT { ALIAS=altzone; BINDING=weak } };
calloc { FLAGS = NODIRECT };
__ctype { ASSERT { ALIAS=_ctype } };
daylight {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=4;
};
};
_daylight { ASSERT { ALIAS=daylight; BINDING=weak } };
environ {
FLAGS = NODIRECT;
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=addrsize;
BINDING=weak;
};
};
_environ {
FLAGS = NODIRECT;
ASSERT { ALIAS=environ };
};
free { FLAGS = NODIRECT };
frexp { TYPE = FUNCTION; FILTER = libm.so.2 };
getdate_err {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=4;
};
};
_getdate_err { ASSERT { ALIAS=getdate_err; BINDING=weak } };
getenv;
__huge_val { ASSERT { TYPE=data; SIZE=8 } };
__iob { ASSERT { ALIAS=_iob; BINDING=weak } };
isnan { TYPE = FUNCTION; FILTER = libm.so.2 };
_isnan { TYPE = FUNCTION; FILTER = libm.so.2 };
isnand { TYPE = FUNCTION; FILTER = libm.so.2 };
_isnand { TYPE = FUNCTION; FILTER = libm.so.2 };
ldexp { TYPE = FUNCTION; FILTER = libm.so.2 };
logb { TYPE = FUNCTION; FILTER = libm.so.2 };
malloc { FLAGS = NODIRECT };
memcmp;
memcpy;
memmove;
memset;
modf { TYPE = FUNCTION; FILTER = libm.so.2 };
_modf { TYPE = FUNCTION; FILTER = libm.so.2 };
nextafter { TYPE = FUNCTION; FILTER = libm.so.2 };
_nextafter { TYPE = FUNCTION; FILTER = libm.so.2 };
_numeric { ASSERT { TYPE=data; SIZE=2 } };
optarg {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=addrsize;
};
};
opterr { ASSERT { TYPE=data; SIZE=4 } };
optind { ASSERT { TYPE=data; SIZE=4 } };
optopt {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=4;
};
};
realloc { FLAGS = NODIRECT };
scalb { TYPE = FUNCTION; FILTER = libm.so.2 };
_scalb { TYPE = FUNCTION; FILTER = libm.so.2 };
timezone {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=addrsize;
};
};
_timezone { ASSERT { ALIAS=timezone; BINDING=weak } };
tzname { ASSERT { TYPE=data; SIZE=addrsize[2] } };
_tzname { ASSERT { ALIAS=tzname; BINDING=weak } };
$if i386
_fp_hw {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
$endif
protected:
abort;
abs;
access;
_access;
acct;
_acct;
alarm;
_alarm;
asctime;
__assert;
atexit;
atof;
atoi;
atol;
bsearch;
catclose;
_catclose;
catgets;
_catgets;
catopen;
_catopen;
cfgetispeed;
_cfgetispeed;
cfgetospeed;
_cfgetospeed;
cfsetispeed;
_cfsetispeed;
cfsetospeed;
_cfsetospeed;
chdir;
_chdir;
chmod;
_chmod;
chown;
_chown;
chroot;
_chroot;
_cleanup;
clearerr;
clock;
_close;
close;
closedir;
_closedir;
creat;
_creat;
ctermid;
ctime;
cuserid;
_cuserid;
difftime;
div;
dup;
_dup;
dup2;
_dup2;
execl;
_execl;
execle;
_execle;
execlp;
_execlp;
execv;
_execv;
execve;
_execve;
execvp;
_execvp;
exit;
_exit;
fattach;
_fattach;
fchdir;
_fchdir;
fchmod;
_fchmod;
fchown;
_fchown;
fclose;
fcntl;
_fcntl;
fdetach;
_fdetach;
fdopen;
_fdopen;
feof;
ferror;
fflush;
fgetc;
fgetpos;
fgets;
__filbuf;
fileno;
_fileno;
__flsbuf;
fmtmsg;
_fmtmsg;
fopen;
_fork;
fork;
fpathconf;
_fpathconf;
fprintf;
fputc;
fputs;
fread;
freopen;
fscanf;
fseek;
fsetpos;
fstat;
_fstat;
fstatvfs;
_fstatvfs;
fsync;
_fsync;
ftell;
ftok;
_ftok;
fwrite;
getc;
getchar;
getcontext;
_getcontext;
getcwd;
_getcwd;
getdate;
_getdate;
getegid;
_getegid;
geteuid;
_geteuid;
getgid;
_getgid;
getgrgid;
getgrnam;
getgroups;
_getgroups;
getlogin;
getmsg;
_getmsg;
getopt;
_getopt;
getpass;
_getpass;
getpgid;
_getpgid;
getpgrp;
_getpgrp;
getpid;
_getpid;
getpmsg;
_getpmsg;
getppid;
_getppid;
getpwnam;
getpwuid;
getrlimit;
_getrlimit;
gets;
getsid;
_getsid;
getsubopt;
_getsubopt;
gettxt;
_gettxt;
getuid;
_getuid;
getw;
_getw;
gmtime;
grantpt;
_grantpt;
hcreate;
_hcreate;
hdestroy;
_hdestroy;
hsearch;
_hsearch;
initgroups;
_initgroups;
ioctl;
_ioctl;
isalnum;
isalpha;
isascii;
_isascii;
isastream;
_isastream;
isatty;
_isatty;
iscntrl;
isdigit;
isgraph;
islower;
isprint;
ispunct;
isspace;
isupper;
isxdigit;
kill;
_kill;
labs;
lchown;
_lchown;
ldiv;
lfind;
_lfind;
link;
_link;
localeconv;
localtime;
lockf;
_lockf;
longjmp;
lsearch;
_lsearch;
lseek;
_lseek;
lstat;
_lstat;
makecontext;
_makecontext;
mblen;
mbstowcs;
mbtowc;
memccpy;
_memccpy;
memchr;
memcntl;
_memcntl;
mkdir;
_mkdir;
mkfifo;
_mkfifo;
mknod;
_mknod;
mktemp;
_mktemp;
mktime;
mlock;
_mlock;
mmap;
_mmap;
monitor;
_monitor;
mount;
_mount;
mprotect;
_mprotect;
msgctl;
_msgctl;
msgget;
_msgget;
msgrcv;
_msgrcv;
msgsnd;
_msgsnd;
msync;
_msync;
munlock;
_munlock;
munmap;
_munmap;
nftw;
_nftw;
nice;
_nice;
nl_langinfo;
_nl_langinfo;
open;
_open;
opendir;
_opendir;
pathconf;
_pathconf;
pause;
_pause;
pclose;
_pclose;
perror;
pipe;
_pipe;
poll;
_poll;
popen;
_popen;
printf;
profil;
_profil;
ptsname;
_ptsname;
putc;
putchar;
putenv;
_putenv;
putmsg;
_putmsg;
putpmsg;
_putpmsg;
puts;
putw;
_putw;
qsort;
raise;
rand;
read;
_read;
readdir;
_readdir;
readlink;
_readlink;
readv;
_readv;
remove;
rename;
_rename;
rewind;
rewinddir;
_rewinddir;
rmdir;
_rmdir;
scanf;
seekdir;
_seekdir;
semctl;
_semctl;
semget;
_semget;
semop;
_semop;
setbuf;
setcontext;
_setcontext { FLAGS = NODYNSORT };
setgid;
_setgid;
setgroups;
_setgroups;
setjmp;
setlabel;
setlocale;
setpgid;
_setpgid;
setpgrp;
_setpgrp;
setrlimit;
_setrlimit;
setsid;
_setsid;
setuid;
_setuid;
setvbuf;
shmat;
_shmat;
shmctl;
_shmctl;
shmdt;
_shmdt;
shmget;
_shmget;
sigaction;
_sigaction { FLAGS = NODYNSORT };
sigaddset;
_sigaddset;
sigaltstack;
_sigaltstack;
sigdelset;
_sigdelset;
sigemptyset;
_sigemptyset;
sigfillset;
_sigfillset;
sighold;
_sighold;
sigignore;
_sigignore;
sigismember;
_sigismember;
siglongjmp;
_siglongjmp;
signal;
sigpause;
_sigpause;
sigpending;
_sigpending;
sigprocmask;
_sigprocmask;
sigrelse;
_sigrelse;
sigsend;
_sigsend;
sigsendset;
_sigsendset;
sigset;
_sigset;
sigsetjmp;
_sigsetjmp { FLAGS = NODYNSORT };
sigsuspend;
_sigsuspend;
sleep;
_sleep;
sprintf;
srand;
sscanf;
stat;
_stat;
statvfs;
_statvfs;
stime;
_stime;
strcat;
strchr;
strcmp;
strcoll;
strcpy;
strcspn;
strdup;
_strdup;
strerror;
strftime;
strlen;
strncat;
strncmp;
strncpy;
strpbrk;
strrchr;
strspn;
strstr;
strtod;
strtok;
strtol;
strtoul;
strxfrm;
swab;
_swab;
swapcontext;
_swapcontext;
symlink;
_symlink;
sync;
_sync;
sysconf;
_sysconf;
system;
tcdrain;
_tcdrain;
tcflow;
_tcflow;
tcflush;
_tcflush;
tcgetattr;
_tcgetattr;
tcgetpgrp;
_tcgetpgrp;
tcgetsid;
_tcgetsid;
tcsendbreak;
_tcsendbreak;
tcsetattr;
_tcsetattr;
tcsetpgrp;
_tcsetpgrp;
tdelete;
_tdelete;
tell;
_tell;
telldir;
_telldir;
tempnam;
_tempnam;
tfind;
_tfind;
time;
_time;
times;
_times;
tmpfile;
tmpnam;
toascii;
_toascii;
tolower;
_tolower;
toupper;
_toupper;
tsearch;
_tsearch;
ttyname;
twalk;
_twalk;
tzset;
_tzset;
ulimit;
_ulimit;
umask;
_umask;
umount;
_umount;
uname;
_uname;
ungetc;
unlink;
_unlink;
unlockpt;
_unlockpt;
utime;
_utime;
vfprintf;
vprintf;
vsprintf;
wait;
_wait;
waitid;
_waitid;
waitpid;
_waitpid;
wcstombs;
wctomb;
write;
_write;
writev;
_writev;
_xftw;
$if _ELF32
ptrace;
_ptrace;
$endif
$if i386
_fxstat;
_lxstat;
nuname;
_nuname;
_xmknod;
_xstat;
$endif
$if !sparc32
sbrk;
$endif
$if _sparc
__dtou;
__ftou;
$endif
$if sparc32
.div;
.mul;
.rem;
.stret1;
.stret2;
.stret4;
# .stret4 and .stret8 are the same thing
.stret8 { FLAGS = NODYNSORT };
.udiv;
.umul;
.urem;
_Q_add;
_Q_cmp;
_Q_cmpe;
_Q_div;
_Q_dtoq;
_Q_feq;
_Q_fge;
_Q_fgt;
_Q_fle;
_Q_flt;
_Q_fne;
_Q_itoq;
_Q_mul;
_Q_neg;
_Q_qtod;
_Q_qtoi;
_Q_qtos;
_Q_qtou;
_Q_sqrt;
_Q_stoq;
_Q_sub;
_Q_utoq;
$endif
$if sparcv9
# __align_cpy_1 is an alias for memcpy. Filter it out of
# the .SUNW_dynsymsort section
__align_cpy_1 { FLAGS = NODYNSORT };
__align_cpy_16;
__align_cpy_2;
__align_cpy_4;
# __align_cpy_8 is same as __align_cpy_16
__align_cpy_8 { FLAGS = NODYNSORT };
__dtoul;
__ftoul;
_Qp_add;
_Qp_cmp;
_Qp_cmpe;
_Qp_div;
_Qp_dtoq;
_Qp_feq;
_Qp_fge;
_Qp_fgt;
_Qp_fle;
_Qp_flt;
_Qp_fne;
_Qp_itoq;
_Qp_mul;
_Qp_neg;
_Qp_qtod;
_Qp_qtoi;
_Qp_qtos;
_Qp_qtoui;
_Qp_qtoux;
_Qp_qtox;
_Qp_sqrt;
_Qp_stoq;
_Qp_sub;
_Qp_uitoq;
_Qp_uxtoq;
_Qp_xtoq;
__sparc_utrap_install;
$endif
# On amd64, we also have SYSVABI_1.3, but it contains a small subset of
# the symbols put in that version on other platforms.
$if amd64
} SYSVABI_1.3;
SYMBOL_VERSION SYSVABI_1.3 {
$endif
global:
$if !_sparc
__flt_rounds {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
$endif
protected:
_ctermid;
_getgrgid;
_getgrnam;
_getlogin;
_getpwnam;
_getpwuid;
_ttyname;
$if !sparc32
_sbrk;
$endif
$if _x86
_fpstart;
__fpstart;
$endif
};
# There should never be more than one SUNWprivate version.
# Don't add any more. Add new private symbols to SUNWprivate_1.1
SYMBOL_VERSION SUNWprivate_1.1 {
global:
_escape;
_readbufline;
_strdup_null;
_strpbrk_escape;
_strtok_escape;
_unescape;
_doexeclist;
_exec_cleanup;
_exec_wild_id;
_auth_match;
_authstr2attr;
_do_unescape;
_enum_attrs;
_enum_auths;
_enum_profs;
_insert2kva;
_execstr2attr;
_kva2str;
_kva2strx;
_kva_dup;
_kva_free;
_kva_free_value;
_new_kva;
_profstr2attr;
_str2authattr;
_str2execattr;
_str2kva;
_str2profattr;
_str2userattr;
_userstr2attr;
__get_default_prof;
___Argv {
FLAGS = NODIRECT;
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=addrsize;
};
};
cfree { FLAGS = NODIRECT };
_cswidth { ASSERT { TYPE=data; SIZE=4[4] } };
__ctype_mask { ASSERT { TYPE=data; SIZE=addrsize } };
__environ_lock {
FLAGS = NODIRECT;
ASSERT { TYPE=data; SIZE=0x18 };
};
__inf_read {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
__inf_written {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
__i_size {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
_isnanf { TYPE = FUNCTION; FILTER = libm.so.2 };
__lc_charmap { ASSERT { TYPE=data; SIZE=addrsize } };
__lc_collate { ASSERT { TYPE=data; SIZE=addrsize } };
__lc_ctype { ASSERT { TYPE=data; SIZE=addrsize } };
__lc_locale { ASSERT { TYPE=data; SIZE=addrsize } };
__lc_messages { ASSERT { TYPE=data; SIZE=addrsize } };
__lc_monetary { ASSERT { TYPE=data; SIZE=addrsize } };
__lc_numeric { ASSERT { TYPE=data; SIZE=addrsize } };
__lc_time { ASSERT { TYPE=data; SIZE=addrsize } };
__libc_threaded {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=4;
};
};
_lib_version {
FLAGS = NODIRECT;
ASSERT { TYPE=data; SIZE=4 };
};
_logb { TYPE = FUNCTION; FILTER = libm.so.2 };
_lone {
FLAGS = NODYNSORT;
ASSERT { ALIAS=lone; BINDING=weak };
};
_lten {
FLAGS = NODYNSORT;
ASSERT { ALIAS=lten; BINDING=weak };
};
_lzero {
FLAGS = NODYNSORT;
ASSERT { ALIAS=lzero; BINDING=weak };
};
__malloc_lock { ASSERT { TYPE=data; SIZE=0x18 } };
_memcmp;
_memcpy { FLAGS = NODYNSORT };
_memmove;
_memset;
_modff { TYPE = FUNCTION; FILTER = libm.so.2 };
__nan_read {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
__nan_written {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
__nis_debug_bind {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
__nis_debug_calls {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
__nis_debug_file { ASSERT { TYPE=data; SIZE=addrsize } };
__nis_debug_rpc {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
__nis_prefsrv {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
__nis_preftype {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
__nis_server {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
_nss_default_finders {
ASSERT {
ALIAS=nss_default_finders;
BINDING=weak;
};
};
__progname {
FLAGS = NODIRECT;
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
_smbuf { ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
$if i386
SIZE=0x1e8;
$else
SIZE=0xa8;
$endif
};
};
_sp { ASSERT { TYPE=data; SIZE=4 } };
__strdupa_str {
FLAGS = NODIRECT;
ASSERT {
TYPE=tls;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
__strdupa_len {
FLAGS = NODIRECT;
ASSERT {
TYPE=tls;
SH_ATTR=nobits;
SIZE=addrsize;
};
};
_tdb_bootstrap {
ASSERT {
TYPE=data;
$if __GNUC
SH_ATTR=nobits;
$endif
SIZE=addrsize;
BINDING=weak;
};
};
__threaded { ASSERT { TYPE=data; SIZE=4 } };
thr_probe_getfunc_addr { ASSERT { TYPE=data; SIZE=addrsize } };
__trans_lower { ASSERT { TYPE=data; SIZE=addrsize } };
__trans_upper { ASSERT { TYPE=data; SIZE=addrsize } };
_uberdata { ASSERT {
TYPE=data;
BINDING=weak;
$if _ELF32
SIZE=0x29d0;
$elif _ELF64
SIZE=0x2a28;
$else
$error unknown platform
$endif
};
};
__xpg6 {
FLAGS = NODIRECT;
ASSERT { TYPE=data; SIZE=4 };
};
$if _ELF32
_dladdr { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dlclose { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dldump { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dlerror { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dlopen { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_dlsym { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_ld_libc { TYPE = FUNCTION; FILTER = /usr/lib/ld.so.1 };
_sys_errlist { ASSERT { ALIAS=sys_errlist; BINDING=weak } };
_sys_errs { ASSERT { TYPE=data; SIZE=0xc8c } };
_sys_index { ASSERT { TYPE=data; SIZE=0x260 } };
_sys_nerr {
FLAGS = NODYNSORT;
ASSERT { ALIAS=sys_nerr; BINDING=weak };
};
_sys_num_err { ASSERT { ALIAS=sys_nerr } };
$elif sparcv9
_dladdr { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dlclose { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dldump { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dlerror { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dlopen { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_dlsym { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
_ld_libc { TYPE = FUNCTION; FILTER = /usr/lib/sparcv9/ld.so.1 };
$elif amd64
_dladdr { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dladdr1 { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dlamd64getunwind { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dlclose { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dldump { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dlerror { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dlinfo { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dlmopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dlopen { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_dlsym { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
_ld_libc { TYPE = FUNCTION; FILTER = /usr/lib/amd64/ld.so.1 };
$else
$error unknown platform
$endif
$if _sparc
__lyday_to_month { ASSERT { TYPE=data; SIZE=0x30 } };
__mon_lengths { ASSERT { TYPE=data; SIZE=0x60 } };
__yday_to_month { ASSERT { TYPE=data; SIZE=0x30 } };
$endif
$if i386
_sse_hw {
ASSERT {
TYPE=data;
SH_ATTR=nobits;
SIZE=4;
};
};
$endif
protected:
acctctl;
allocids;
_assert_c99;
__assert_c99;
_assfail;
attr_count;
attr_to_data_type;
attr_to_name;
attr_to_option;
attr_to_xattr_view;
_autofssys;
__btowc_dense;
__btowc_euc;
__btowc_sb;
_bufsync;
__charmap_init;
_cladm;
__class_quadruple;
__collate_init;
core_get_default_content;
core_get_default_path;
core_get_global_content;
core_get_global_path;
core_get_options;
core_get_process_content;
core_get_process_path;
core_set_default_content;
core_set_default_path;
core_set_global_content;
core_set_global_path;
core_set_options;
core_set_process_content;
core_set_process_path;
__ctype_init;
dbm_close_status;
dbm_do_nextkey;
dbm_setdefwrite;
_D_cplx_div;
_D_cplx_div_ix;
_D_cplx_div_rx;
_D_cplx_mul;
defclose_r;
defcntl;
defcntl_r;
defopen;
defopen_r;
defread;
defread_r;
_delete;
_dgettext;
_doprnt;
_doscan;
_errfp;
_errxfp;
__eucpctowc_gen;
_F_cplx_div;
_F_cplx_div_ix;
_F_cplx_div_rx;
_F_cplx_mul;
__fgetwc_dense;
__fgetwc_euc;
__fgetwc_sb;
__fgetwc_xpg5;
__fgetws_xpg5;
_findbuf;
_findiop;
__fini_daemon_priv;
_finite;
__fnmatch_C;
__fnmatch_sb;
__fnmatch_std;
_fork1 { FLAGS = NODYNSORT };
_forkall { FLAGS = NODYNSORT };
_fpclass;
_fpgetmask;
_fpgetround;
_fpgetsticky;
_fprintf;
_fpsetmask;
_fpsetround;
_fpsetsticky;
__fputwc_xpg5;
__fputws_xpg5;
__fseterror_u;
_ftw;
_gcvt;
_getarg;
__getcontext;
__getdate_std;
_getdents;
_get_exit_frame_monitor;
_getfp;
_getgroupsbymember;
_getlogin_r;
_getsp;
__gettsp;
getvmusage;
__getwchar_xpg5;
__getwc_xpg5;
gtty;
__idmap_flush_kcache;
__idmap_reg;
__idmap_unreg;
__init_daemon_priv;
__init_suid_priv;
_insert;
inst_sync;
_is_euc_fc;
_is_euc_pc;
_iswctype;
__iswctype_bc;
__iswctype_sb;
__iswctype_std;
_lgrp_home_fast { FLAGS = NODYNSORT };
_lgrpsys;
_lltostr;
__localeconv_std;
__locale_init;
_lock_clear;
_lock_try;
_ltzset;
lwp_self;
makeut;
makeutx;
_mbftowc;
__mbftowc_dense;
__mbftowc_euc;
__mbftowc_sb;
__mblen_gen;
__mblen_sb;
__mbrlen_gen;
__mbrlen_sb;
__mbrtowc_dense;
__mbrtowc_euc;
__mbrtowc_sb;
__mbsinit_gen;
__mbsrtowcs_dense;
__mbsrtowcs_euc;
__mbsrtowcs_sb;
__mbst_get_consumed_array;
__mbst_get_locale;
__mbst_get_nconsumed;
__mbstowcs_dense;
__mbstowcs_euc;
__mbstowcs_sb;
__mbst_set_consumed_array;
__mbst_set_locale;
__mbst_set_nconsumed;
__mbtowc_dense;
__mbtowc_euc;
__mbtowc_sb;
mcfiller;
__messages_init;
mntopt;
modctl;
modutx;
__monetary_init;
msgctl64;
__multi_innetgr;
_mutex_destroy { FLAGS = NODYNSORT };
mutex_held;
_mutex_init { FLAGS = NODYNSORT };
_mutex_unlock { FLAGS = NODYNSORT };
name_to_attr;
nfs_getfh;
nfssvc;
_nfssys;
__nis_get_environment;
__nl_langinfo_std;
_nss_db_state_destr;
nss_default_key2str;
nss_delete;
nss_endent;
nss_getent;
_nss_initf_group;
_nss_initf_netgroup;
_nss_initf_passwd;
_nss_initf_shadow;
nss_packed_arg_init;
nss_packed_context_init;
nss_packed_getkey;
nss_packed_set_status;
nss_search;
nss_setent;
_nss_XbyY_fgets;
__nsw_extended_action_v1;
__nsw_freeconfig_v1;
__nsw_getconfig_v1;
__nthreads;
__numeric_init;
__openattrdirat;
option_to_attr;
__priv_bracket;
__priv_relinquish;
pset_assign_forced;
pset_bind_lwp;
_psignal;
_pthread_setcleanupinit;
__putwchar_xpg5;
__putwc_xpg5;
rctlctl;
rctllist;
_realbufend;
__regcomp_C;
__regcomp_std;
__regerror_std;
__regexec_C;
__regexec_std;
__regfree_std;
_resume;
_resume_ret;
_rpcsys;
_sbrk_grow_aligned;
scrwidth;
semctl64;
_semctl64;
set_setcontext_enforcement;
set_l10n_alternate_root;
_setbufend;
__set_errno;
setprojrctl;
_setregid;
_setreuid;
setsigacthandler;
shmctl64;
_shmctl64;
shmget_osm;
shmxctl64;
sigflag;
_signal;
_sigoff;
_sigon;
_so_accept;
_so_bind;
_sockconfig;
_so_connect;
_so_getpeername;
_so_getsockname;
_so_getsockopt;
_so_listen;
_so_recv;
_so_recvfrom;
_so_recvmsg;
_so_send;
_so_sendmsg;
_so_sendto;
_so_setsockopt;
_so_shutdown;
_so_socket;
_so_socketpair;
str2group;
str2passwd;
str2spwd;
__strcoll_C;
__strcoll_sb;
__strcoll_std;
__strfmon_std;
__strftime_std;
__strptime_dontzero;
__strptime_std;
__strxfrm_C;
__strxfrm_sb;
__strxfrm_std;
stty;
syscall;
_sysconfig;
__systemcall;
thr_continue_allmutators;
_thr_continue_allmutators;
thr_continue_mutator;
_thr_continue_mutator;
thr_getstate;
_thr_getstate;
thr_mutators_barrier;
_thr_mutators_barrier;
thr_probe_setup;
_thr_schedctl;
thr_setmutator;
_thr_setmutator;
thr_setstate;
_thr_setstate;
thr_sighndlrinfo;
_thr_sighndlrinfo;
_thr_slot_offset;
thr_suspend_allmutators;
_thr_suspend_allmutators;
thr_suspend_mutator;
_thr_suspend_mutator;
thr_wait_mutator;
_thr_wait_mutator;
__time_init;
__tls_get_addr;
__towctrans_bc;
__towctrans_std;
__towlower_bc;
__towlower_std;
__towupper_bc;
__towupper_std;
tpool_create;
tpool_dispatch;
tpool_destroy;
tpool_wait;
tpool_suspend;
tpool_suspended;
tpool_resume;
tpool_member;
_trwctype;
__trwctype_std;
_ttyname_dev;
_ucred_alloc;
ucred_getamask;
_ucred_getamask;
ucred_getasid;
_ucred_getasid;
ucred_getatid;
_ucred_getatid;
ucred_getauid;
_ucred_getauid;
_ulltostr;
_uncached_getgrgid_r;
_uncached_getgrnam_r;
_uncached_getpwnam_r;
_uncached_getpwuid_r;
__ungetwc_xpg5;
_unordered;
utssys;
_verrfp;
_verrxfp;
_vwarnfp;
_vwarnxfp;
_warnfp;
_warnxfp;
__wcrtomb_dense;
__wcrtomb_euc;
__wcrtomb_sb;
__wcscoll_bc;
__wcscoll_C;
__wcscoll_std;
__wcsftime_std;
__wcsftime_xpg5;
__wcsrtombs_dense;
__wcsrtombs_euc;
__wcsrtombs_sb;
__wcstok_xpg5;
__wcstombs_dense;
__wcstombs_euc;
__wcstombs_sb;
__wcswidth_bc;
__wcswidth_dense;
__wcswidth_euc;
__wcswidth_sb;
__wcswidth_std;
__wcsxfrm_bc;
__wcsxfrm_C;
__wcsxfrm_std;
__wctob_dense;
__wctob_euc;
__wctob_sb;
__wctoeucpc_gen;
__wctomb_dense;
__wctomb_euc;
__wctomb_sb;
__wctrans_std;
__wctype_std;
__wcwidth_bc;
__wcwidth_dense;
__wcwidth_euc;
__wcwidth_sb;
__wcwidth_std;
wdbindf;
wdchkind;
wddelim;
_wrtchk;
_xflsbuf;
_xgetwidth;
__xpg5_iconv;
zone_add_datalink;
zone_boot;
zone_check_datalink;
zone_create;
zone_destroy;
zone_enter;
zone_getattr;
zone_getattr_defunct;
zone_get_id;
zone_get_zoneids;
zone_list;
zone_list_datalink;
zone_list_defunct;
zonept;
zone_remove_datalink;
zone_setattr;
zone_shutdown;
$if _ELF32
__divdi3;
_file_set;
_fprintf_c89;
_fscanf_c89;
_fwprintf_c89;
_fwscanf_c89;
_imaxabs_c89;
_imaxdiv_c89;
__moddi3;
_printf_c89;
_scanf_c89;
_snprintf_c89;
_sprintf_c89;
_sscanf_c89;
_strtoimax_c89;
_strtoumax_c89;
_swprintf_c89;
_swscanf_c89;
__udivdi3;
__umoddi3;
_vfprintf_c89;
_vfscanf_c89;
_vfwprintf_c89;
_vfwscanf_c89;
_vprintf_c89;
_vscanf_c89;
_vsnprintf_c89;
_vsprintf_c89;
_vsscanf_c89;
_vswprintf_c89;
_vswscanf_c89;
_vwprintf_c89;
_vwscanf_c89;
_wcstoimax_c89;
_wcstoumax_c89;
_wprintf_c89;
_wscanf_c89;
$endif
$if _sparc
_cerror;
install_utrap;
_install_utrap;
nop;
_Q_cplx_div;
_Q_cplx_div_ix;
_Q_cplx_div_rx;
_Q_cplx_lr_div;
_Q_cplx_lr_div_ix;
_Q_cplx_lr_div_rx;
_Q_cplx_lr_mul;
_Q_cplx_mul;
_QgetRD;
_xregs_clrptr;
$endif
$if sparc32
__ashldi3;
__ashrdi3;
_cerror64;
__cmpdi2;
__floatdidf;
__floatdisf;
__lshrdi3;
__muldi3;
__ucmpdi2;
$endif
$if _x86
_D_cplx_lr_div;
_D_cplx_lr_div_ix;
_D_cplx_lr_div_rx;
_F_cplx_lr_div;
_F_cplx_lr_div_ix;
_F_cplx_lr_div_rx;
__fltrounds;
sysi86;
_sysi86;
_X_cplx_div;
_X_cplx_div_ix;
_X_cplx_div_rx;
_X_cplx_lr_div;
_X_cplx_lr_div_ix;
_X_cplx_lr_div_rx;
_X_cplx_mul;
__xgetRD;
__xtol;
__xtoll;
__xtoul;
__xtoull;
$endif
$if i386
__divrem64;
___tls_get_addr;
__udivrem64;
$endif
# The following functions should not be exported from libc,
# but /lib/libm.so.2, some older versions of the Studio
# compiler/debugger components, and some ancient programs
# found in /usr/dist reference them. When we no longer
# care about these old and broken binary objects, these
# symbols should be deleted.
_brk { FLAGS = NODYNSORT };
_cond_broadcast { FLAGS = NODYNSORT };
_cond_init { FLAGS = NODYNSORT };
_cond_signal { FLAGS = NODYNSORT };
_cond_wait { FLAGS = NODYNSORT };
_ecvt { FLAGS = NODYNSORT };
_fcvt { FLAGS = NODYNSORT };
_getc_unlocked { FLAGS = NODYNSORT };
_llseek { FLAGS = NODYNSORT };
_pthread_attr_getdetachstate { FLAGS = NODYNSORT };
_pthread_attr_getinheritsched { FLAGS = NODYNSORT };
_pthread_attr_getschedparam { FLAGS = NODYNSORT };
_pthread_attr_getschedpolicy { FLAGS = NODYNSORT };
_pthread_attr_getscope { FLAGS = NODYNSORT };
_pthread_attr_getstackaddr { FLAGS = NODYNSORT };
_pthread_attr_getstacksize { FLAGS = NODYNSORT };
_pthread_attr_init { FLAGS = NODYNSORT };
_pthread_condattr_getpshared { FLAGS = NODYNSORT };
_pthread_condattr_init { FLAGS = NODYNSORT };
_pthread_cond_init { FLAGS = NODYNSORT };
_pthread_create { FLAGS = NODYNSORT };
_pthread_getschedparam { FLAGS = NODYNSORT };
_pthread_join { FLAGS = NODYNSORT };
_pthread_key_create { FLAGS = NODYNSORT };
_pthread_mutexattr_getprioceiling { FLAGS = NODYNSORT };
_pthread_mutexattr_getprotocol { FLAGS = NODYNSORT };
_pthread_mutexattr_getpshared { FLAGS = NODYNSORT };
_pthread_mutexattr_init { FLAGS = NODYNSORT };
_pthread_mutex_getprioceiling { FLAGS = NODYNSORT };
_pthread_mutex_init { FLAGS = NODYNSORT };
_pthread_sigmask { FLAGS = NODYNSORT };
_rwlock_init { FLAGS = NODYNSORT };
_rw_rdlock { FLAGS = NODYNSORT };
_rw_unlock { FLAGS = NODYNSORT };
_rw_wrlock { FLAGS = NODYNSORT };
_sbrk_unlocked { FLAGS = NODYNSORT };
_select { FLAGS = NODYNSORT };
_sema_init { FLAGS = NODYNSORT };
_sema_post { FLAGS = NODYNSORT };
_sema_trywait { FLAGS = NODYNSORT };
_sema_wait { FLAGS = NODYNSORT };
_sysfs { FLAGS = NODYNSORT };
_thr_create { FLAGS = NODYNSORT };
_thr_exit { FLAGS = NODYNSORT };
_thr_getprio { FLAGS = NODYNSORT };
_thr_getspecific { FLAGS = NODYNSORT };
_thr_join { FLAGS = NODYNSORT };
_thr_keycreate { FLAGS = NODYNSORT };
_thr_kill { FLAGS = NODYNSORT };
_thr_main { FLAGS = NODYNSORT };
_thr_self { FLAGS = NODYNSORT };
_thr_setspecific { FLAGS = NODYNSORT };
_thr_sigsetmask { FLAGS = NODYNSORT };
_thr_stksegment { FLAGS = NODYNSORT };
_ungetc_unlocked { FLAGS = NODYNSORT };
local:
__imax_lldiv { FLAGS = NODYNSORT };
_ti_thr_self { FLAGS = NODYNSORT };
_gethrtime { FLAGS = NODYNSORT };
*;
$if lf64
_seekdir64 { FLAGS = NODYNSORT };
_telldir64 { FLAGS = NODYNSORT };
$endif
$if _sparc
__cerror { FLAGS = NODYNSORT };
$endif
$if sparc32
__cerror64 { FLAGS = NODYNSORT };
$endif
$if sparcv9
__cleanup { FLAGS = NODYNSORT };
$endif
$if i386
_syscall6 { FLAGS = NODYNSORT };
__systemcall6 { FLAGS = NODYNSORT };
$endif
$if amd64
___tls_get_addr { FLAGS = NODYNSORT };
$endif
};