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 44 SYMBOL_VERSION ILLUMOS_0.2 { # reentrant ethers(3SOCKET) 45 global: 46 ether_aton_r; 47 ether_ntoa_r; 48 } ILLUMOS_0.1; 49 50 SYMBOL_VERSION ILLUMOS_0.1 { # illumos additions 51 global: 52 accept4 { TYPE = FUNCTION; FILTER = libc.so.1 }; 53 } SUNW_1.7; 54 55 SYMBOL_VERSION SUNW_1.7 { 56 global: 57 freeifaddrs; 58 getifaddrs; 59 } SUNW_1.6; 60 61 SYMBOL_VERSION SUNW_1.6 { 62 global: 63 getipv4sourcefilter; 64 getsourcefilter; 65 setipv4sourcefilter; 66 setsourcefilter; 67 } SUNW_1.5; 68 69 SYMBOL_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 { TYPE = FUNCTION; FILTER = libc.so.1 }; 85 __xnet_getaddrinfo; 86 } SUNW_1.4; 87 88 SYMBOL_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 in6addr_loopback; 100 rcmd_af; 101 rexec_af; 102 rresvport_af; 103 } SUNW_1.3; 104 105 # Due to mistakes made early in the history of this library, there are 106 # no SUNW_1.2 or SUNW_1.3 symbols, but they are now kept as placeholders. 107 # Don't add any symbols to these versions. 108 109 SYMBOL_VERSION SUNW_1.3 { 110 global: 111 SUNW_1.3; 112 } SUNW_1.2; 113 114 SYMBOL_VERSION SUNW_1.2 { 115 global: 116 SUNW_1.2; 117 } SUNW_1.1; 118 119 SYMBOL_VERSION SUNW_1.1 { 120 global: 121 __xnet_bind { TYPE = FUNCTION; FILTER = libc.so.1 }; 122 __xnet_connect { TYPE = FUNCTION; FILTER = libc.so.1 }; 123 __xnet_getsockopt { TYPE = FUNCTION; FILTER = libc.so.1 }; 124 __xnet_listen { TYPE = FUNCTION; FILTER = libc.so.1 }; 125 __xnet_recvmsg { TYPE = FUNCTION; FILTER = libc.so.1 }; 126 __xnet_sendmsg { TYPE = FUNCTION; FILTER = libc.so.1 }; 127 __xnet_sendto { TYPE = FUNCTION; FILTER = libc.so.1 }; 128 __xnet_socket { TYPE = FUNCTION; FILTER = libc.so.1 }; 129 __xnet_socketpair { TYPE = FUNCTION; FILTER = libc.so.1 }; 130 } SUNW_0.7; 131 132 SYMBOL_VERSION SUNW_0.7 { 133 global: 134 endnetent; 135 endprotoent; 136 endservent; 137 ether_aton; 138 ether_hostton; 139 ether_line; 140 ether_ntoa; 141 ether_ntohost; 142 getnetbyaddr; 143 getnetbyaddr_r; 144 getnetbyname; 145 getnetbyname_r; 146 getnetent; 147 getnetent_r; 148 getprotobyname_r; 149 getprotobynumber_r; 150 getprotoent_r; 151 getservbyname_r; 152 getservbyport_r; 153 getservent; 154 getservent_r; 155 htonl { TYPE = FUNCTION; FILTER = libc.so.1 }; 156 htons { TYPE = FUNCTION; FILTER = libc.so.1 }; 157 ntohl { TYPE = FUNCTION; FILTER = libc.so.1 }; 158 ntohs { TYPE = FUNCTION; FILTER = libc.so.1 }; 159 rcmd; 160 rexec; 161 rresvport; 162 ruserok; 163 setnetent; 164 setprotoent; 165 setservent; 166 socketpair { TYPE = FUNCTION; FILTER = libc.so.1 }; 167 168 # For ABI reasons, the following symbols are in SISCD_2.3 on 32-bit 169 # sparc, which is inherited by SUNW_0.7. On all other platforms, 170 # they are simply in SUNW_0.7 171 $if _sparc && _ELF32 172 } SISCD_2.3; 173 174 SYMBOL_VERSION SISCD_2.3 { 175 global: 176 $endif 177 accept { TYPE = FUNCTION; FILTER = libc.so.1 }; 178 bind { TYPE = FUNCTION; FILTER = libc.so.1 }; 179 connect { TYPE = FUNCTION; FILTER = libc.so.1 }; 180 getpeername { TYPE = FUNCTION; FILTER = libc.so.1 }; 181 getprotobyname; 182 getprotobynumber; 183 getprotoent; 184 getservbyname; 185 getservbyport; 186 getsockname { TYPE = FUNCTION; FILTER = libc.so.1 }; 187 getsockopt { TYPE = FUNCTION; FILTER = libc.so.1 }; 188 inet_lnaof { TYPE = FUNCTION; FILTER = libc.so.1 }; 189 inet_makeaddr { TYPE = FUNCTION; FILTER = libc.so.1 }; 190 inet_network { TYPE = FUNCTION; FILTER = libc.so.1 }; 191 listen { TYPE = FUNCTION; FILTER = libc.so.1 }; 192 recv { TYPE = FUNCTION; FILTER = libc.so.1 }; 193 recvfrom { TYPE = FUNCTION; FILTER = libc.so.1 }; 194 recvmsg { TYPE = FUNCTION; FILTER = libc.so.1 }; 195 send { TYPE = FUNCTION; FILTER = libc.so.1 }; 196 sendmsg { TYPE = FUNCTION; FILTER = libc.so.1 }; 197 sendto { TYPE = FUNCTION; FILTER = libc.so.1 }; 198 setsockopt { TYPE = FUNCTION; FILTER = libc.so.1 }; 199 shutdown { TYPE = FUNCTION; FILTER = libc.so.1 }; 200 socket { TYPE = FUNCTION; FILTER = libc.so.1 }; 201 }; 202 203 # There really should be only one SUNWprivate version. 204 # Don't add any more. Add new private symbols to SUNWprivate_1.3 205 206 SYMBOL_VERSION SUNWprivate_1.3 { 207 global: 208 _accept4 { TYPE = FUNCTION; FILTER = libc.so.1 }; 209 _link_aton; 210 _link_ntoa; 211 _nss_initf_ethers; 212 _nss_initf_net; 213 _nss_initf_netmasks; 214 _nss_initf_proto; 215 _nss_initf_services; 216 getallifaddrs; 217 getallifs; 218 str2ether; 219 str2addr; 220 str2netent; 221 str2protoent; 222 } SUNWprivate_1.2; 223 224 SYMBOL_VERSION SUNWprivate_1.2 { 225 global: 226 getnetmaskbyaddr; 227 getnetmaskbynet; 228 } SUNWprivate_1.1; 229 230 SYMBOL_VERSION SUNWprivate_1.1 { 231 global: 232 _accept { TYPE = FUNCTION; FILTER = libc.so.1 }; 233 _bind { TYPE = FUNCTION; FILTER = libc.so.1 }; 234 bindresvport; 235 bootparams_getbyname; 236 _connect { TYPE = FUNCTION; FILTER = libc.so.1 }; 237 _getpeername { TYPE = FUNCTION; FILTER = libc.so.1 }; 238 _getsockname { TYPE = FUNCTION; FILTER = libc.so.1 }; 239 _getsockopt { TYPE = FUNCTION; FILTER = libc.so.1 }; 240 _listen { TYPE = FUNCTION; FILTER = libc.so.1 }; 241 _recv { TYPE = FUNCTION; FILTER = libc.so.1 }; 242 _recvfrom { TYPE = FUNCTION; FILTER = libc.so.1 }; 243 _recvmsg { TYPE = FUNCTION; FILTER = libc.so.1 }; 244 rresvport_addr; 245 _ruserpass; 246 _send { TYPE = FUNCTION; FILTER = libc.so.1 }; 247 _sendmsg { TYPE = FUNCTION; FILTER = libc.so.1 }; 248 _sendto { TYPE = FUNCTION; FILTER = libc.so.1 }; 249 _setsockopt { TYPE = FUNCTION; FILTER = libc.so.1 }; 250 _shutdown { TYPE = FUNCTION; FILTER = libc.so.1 }; 251 _socket { TYPE = FUNCTION; FILTER = libc.so.1 }; 252 _socket_bsd { TYPE = FUNCTION; FILTER = libc.so.1 }; 253 _socketpair { TYPE = FUNCTION; FILTER = libc.so.1 }; 254 _socketpair_bsd { TYPE = FUNCTION; FILTER = libc.so.1 }; 255 local: 256 *; 257 };