# # 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, 2010, Oracle and/or its affiliates. All rights reserved. # Copyright (c) 2013, OmniTI Computer Consulting, Inc. All rights reserved. # Copyright 2018 Nexenta Systems, Inc. # # # 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 SYMBOL_VERSION ILLUMOS_0.3 { # AF_LINK workaround global: __getifaddrs; } ILLUMOS_0.2; SYMBOL_VERSION ILLUMOS_0.2 { # reentrant ethers(3SOCKET) global: ether_aton_r; ether_ntoa_r; } ILLUMOS_0.1; SYMBOL_VERSION ILLUMOS_0.1 { # illumos additions global: accept4; } SUNW_1.7; SYMBOL_VERSION SUNW_1.7 { global: freeifaddrs; getifaddrs; } SUNW_1.6; SYMBOL_VERSION SUNW_1.6 { global: getipv4sourcefilter; getsourcefilter; setipv4sourcefilter; setsourcefilter; } SUNW_1.5; SYMBOL_VERSION SUNW_1.5 { global: inet6_opt_append; inet6_opt_find; inet6_opt_finish; inet6_opt_get_val; inet6_opt_init; inet6_opt_next; inet6_opt_set_val; inet6_rth_add; inet6_rth_getaddr; inet6_rth_init; inet6_rth_reverse; inet6_rth_segments; inet6_rth_space; sockatmark; __xnet_getaddrinfo; } SUNW_1.4; SYMBOL_VERSION SUNW_1.4 { global: freeaddrinfo; gai_strerror; getaddrinfo; getnameinfo; if_freenameindex; if_indextoname; if_nameindex; if_nametoindex; in6addr_any { ASSERT = { TYPE = OBJECT; SIZE = 16; }; }; in6addr_loopback { ASSERT = { TYPE = OBJECT; SIZE = 16; }; }; rcmd_af; rexec_af; rresvport_af; } SUNW_1.3; # Due to mistakes made early in the history of this library, there are # no SUNW_1.2 or SUNW_1.3 symbols, but they are now kept as placeholders. # Don't add any symbols to these versions. SYMBOL_VERSION SUNW_1.3 { global: SUNW_1.3; } SUNW_1.2; SYMBOL_VERSION SUNW_1.2 { global: SUNW_1.2; } SUNW_1.1; SYMBOL_VERSION SUNW_1.1 { global: __xnet_bind; __xnet_connect; __xnet_getsockopt; __xnet_listen; __xnet_recvmsg; __xnet_sendmsg; __xnet_sendto; __xnet_socket; __xnet_socketpair; } SUNW_0.7; SYMBOL_VERSION SUNW_0.7 { global: endnetent; endprotoent; endservent; ether_aton; ether_hostton; ether_line; ether_ntoa; ether_ntohost; getnetbyaddr; getnetbyaddr_r; getnetbyname; getnetbyname_r; getnetent; getnetent_r; getprotobyname_r; getprotobynumber_r; getprotoent_r; getservbyname_r; getservbyport_r; getservent; getservent_r; htonl { TYPE = FUNCTION; FILTER = libc.so.1; }; htons { TYPE = FUNCTION; FILTER = libc.so.1; }; ntohl { TYPE = FUNCTION; FILTER = libc.so.1; }; ntohs { TYPE = FUNCTION; FILTER = libc.so.1; }; rcmd; rexec; rresvport; ruserok; setnetent; setprotoent; setservent; socketpair; # For ABI reasons, the following symbols are in SISCD_2.3 on 32-bit # sparc, which is inherited by SUNW_0.7. On all other platforms, # they are simply in SUNW_0.7 $if _sparc && _ELF32 } SISCD_2.3; SYMBOL_VERSION SISCD_2.3 { global: $endif accept; bind; connect; getpeername; getprotobyname; getprotobynumber; getprotoent; getservbyname; getservbyport; getsockname; getsockopt; inet_lnaof { TYPE = FUNCTION; FILTER = libc.so.1; }; inet_makeaddr { TYPE = FUNCTION; FILTER = libc.so.1; }; inet_network { TYPE = FUNCTION; FILTER = libc.so.1; }; listen; recv; recvfrom; recvmsg; send; sendmsg; sendto; setsockopt; shutdown; socket; }; # There really should be only one SUNWprivate version. # Don't add any more. Add new private symbols to SUNWprivate_1.3 SYMBOL_VERSION SUNWprivate_1.3 { global: _accept4; _link_aton; _link_ntoa; _nss_initf_ethers; _nss_initf_net; _nss_initf_netmasks; _nss_initf_proto; _nss_initf_services; getallifaddrs; getallifs; str2ether; str2addr; str2netent; str2protoent; } SUNWprivate_1.2; SYMBOL_VERSION SUNWprivate_1.2 { global: getnetmaskbyaddr; getnetmaskbynet; } SUNWprivate_1.1; SYMBOL_VERSION SUNWprivate_1.1 { global: _accept; _bind; bindresvport; bootparams_getbyname; _connect; _getpeername; _getsockname; _getsockopt; _listen; _recv; _recvfrom; _recvmsg; rresvport_addr; _ruserpass; _send; _sendmsg; _sendto; _setsockopt; _shutdown; _socket; _socket_bsd; _socketpair; _socketpair_bsd; local: *; };