1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21 22# 23# Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved. 24# Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. 25# Copyright 2018 Nexenta Systems, Inc. 26# 27 28# 29# MAPFILE HEADER START 30# 31# WARNING: STOP NOW. DO NOT MODIFY THIS FILE. 32# Object versioning must comply with the rules detailed in 33# 34# usr/src/lib/README.mapfiles 35# 36# You should not be making modifications here until you've read the most current 37# copy of that file. If you need help, contact a gatekeeper for guidance. 38# 39# MAPFILE HEADER END 40# 41 42$mapfile_version 2 43 44SYMBOL_VERSION ILLUMOS_0.2 { # reentrant ethers(3SOCKET) 45 global: 46 ether_aton_r; 47 ether_ntoa_r; 48} ILLUMOS_0.1; 49 50SYMBOL_VERSION ILLUMOS_0.1 { # illumos additions 51 global: 52 accept4; 53} SUNW_1.7; 54 55SYMBOL_VERSION SUNW_1.7 { 56 global: 57 freeifaddrs; 58 getifaddrs; 59} SUNW_1.6; 60 61SYMBOL_VERSION SUNW_1.6 { 62 global: 63 getipv4sourcefilter; 64 getsourcefilter; 65 setipv4sourcefilter; 66 setsourcefilter; 67} SUNW_1.5; 68 69SYMBOL_VERSION SUNW_1.5 { 70 global: 71 inet6_opt_append; 72 inet6_opt_find; 73 inet6_opt_finish; 74 inet6_opt_get_val; 75 inet6_opt_init; 76 inet6_opt_next; 77 inet6_opt_set_val; 78 inet6_rth_add; 79 inet6_rth_getaddr; 80 inet6_rth_init; 81 inet6_rth_reverse; 82 inet6_rth_segments; 83 inet6_rth_space; 84 sockatmark; 85 __xnet_getaddrinfo; 86} SUNW_1.4; 87 88SYMBOL_VERSION SUNW_1.4 { 89 global: 90 freeaddrinfo; 91 gai_strerror; 92 getaddrinfo; 93 getnameinfo; 94 if_freenameindex; 95 if_indextoname; 96 if_nameindex; 97 if_nametoindex; 98 in6addr_any { 99 ASSERT = { 100 TYPE = OBJECT; 101 SIZE = 16; 102 }; 103 }; 104 in6addr_loopback { 105 ASSERT = { 106 TYPE = OBJECT; 107 SIZE = 16; 108 }; 109 }; 110 rcmd_af; 111 rexec_af; 112 rresvport_af; 113} SUNW_1.3; 114 115# Due to mistakes made early in the history of this library, there are 116# no SUNW_1.2 or SUNW_1.3 symbols, but they are now kept as placeholders. 117# Don't add any symbols to these versions. 118 119SYMBOL_VERSION SUNW_1.3 { 120 global: 121 SUNW_1.3; 122} SUNW_1.2; 123 124SYMBOL_VERSION SUNW_1.2 { 125 global: 126 SUNW_1.2; 127} SUNW_1.1; 128 129SYMBOL_VERSION SUNW_1.1 { 130 global: 131 __xnet_bind; 132 __xnet_connect; 133 __xnet_getsockopt; 134 __xnet_listen; 135 __xnet_recvmsg; 136 __xnet_sendmsg; 137 __xnet_sendto; 138 __xnet_socket; 139 __xnet_socketpair; 140} SUNW_0.7; 141 142SYMBOL_VERSION SUNW_0.7 { 143 global: 144 endnetent; 145 endprotoent; 146 endservent; 147 ether_aton; 148 ether_hostton; 149 ether_line; 150 ether_ntoa; 151 ether_ntohost; 152 getnetbyaddr; 153 getnetbyaddr_r; 154 getnetbyname; 155 getnetbyname_r; 156 getnetent; 157 getnetent_r; 158 getprotobyname_r; 159 getprotobynumber_r; 160 getprotoent_r; 161 getservbyname_r; 162 getservbyport_r; 163 getservent; 164 getservent_r; 165 htonl { TYPE = FUNCTION; FILTER = libc.so.1; }; 166 htons { TYPE = FUNCTION; FILTER = libc.so.1; }; 167 ntohl { TYPE = FUNCTION; FILTER = libc.so.1; }; 168 ntohs { TYPE = FUNCTION; FILTER = libc.so.1; }; 169 rcmd; 170 rexec; 171 rresvport; 172 ruserok; 173 setnetent; 174 setprotoent; 175 setservent; 176 socketpair; 177 178 # For ABI reasons, the following symbols are in SISCD_2.3 on 32-bit 179 # sparc, which is inherited by SUNW_0.7. On all other platforms, 180 # they are simply in SUNW_0.7 181$if _sparc && _ELF32 182} SISCD_2.3; 183 184SYMBOL_VERSION SISCD_2.3 { 185 global: 186$endif 187 accept; 188 bind; 189 connect; 190 getpeername; 191 getprotobyname; 192 getprotobynumber; 193 getprotoent; 194 getservbyname; 195 getservbyport; 196 getsockname; 197 getsockopt; 198 inet_lnaof { TYPE = FUNCTION; FILTER = libc.so.1; }; 199 inet_makeaddr { TYPE = FUNCTION; FILTER = libc.so.1; }; 200 inet_network { TYPE = FUNCTION; FILTER = libc.so.1; }; 201 listen; 202 recv; 203 recvfrom; 204 recvmsg; 205 send; 206 sendmsg; 207 sendto; 208 setsockopt; 209 shutdown; 210 socket; 211}; 212 213# There really should be only one SUNWprivate version. 214# Don't add any more. Add new private symbols to SUNWprivate_1.3 215 216SYMBOL_VERSION SUNWprivate_1.3 { 217 global: 218 _accept4; 219 _link_aton; 220 _link_ntoa; 221 _nss_initf_ethers; 222 _nss_initf_net; 223 _nss_initf_netmasks; 224 _nss_initf_proto; 225 _nss_initf_services; 226 getallifaddrs; 227 getallifs; 228 str2ether; 229 str2addr; 230 str2netent; 231 str2protoent; 232} SUNWprivate_1.2; 233 234SYMBOL_VERSION SUNWprivate_1.2 { 235 global: 236 getnetmaskbyaddr; 237 getnetmaskbynet; 238} SUNWprivate_1.1; 239 240SYMBOL_VERSION SUNWprivate_1.1 { 241 global: 242 _accept; 243 _bind; 244 bindresvport; 245 bootparams_getbyname; 246 _connect; 247 _getpeername; 248 _getsockname; 249 _getsockopt; 250 _listen; 251 _recv; 252 _recvfrom; 253 _recvmsg; 254 rresvport_addr; 255 _ruserpass; 256 _send; 257 _sendmsg; 258 _sendto; 259 _setsockopt; 260 _shutdown; 261 _socket; 262 _socket_bsd; 263 _socketpair; 264 _socketpair_bsd; 265 local: 266 *; 267}; 268