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