xref: /illumos-gate/usr/src/cmd/sgs/rtld/common/mapfile-vers (revision 4764d912222e53f8386bae7bf491f5780fd102ec)
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 2008 Sun Microsystems, Inc.  All rights reserved.
24# Use is subject to license terms.
25#
26# ident	"%Z%%M%	%I%	%E% SMI"
27#
28# Generic interface definition for usr/src/cmd/sgs/rtld.
29#
30# For information regarding the establishment of versioned definitions see:
31#	The Linker and Libraries Manual (version 2.5 or greater)
32# This is part of the Developers Guide in the Answerbook.  Specifically refer
33# to Chapter 2 under section "Defining Additional Symbols" through section
34# "Reducing Symbol Scope", and Chapter 5 "Versioning".
35#
36# For specific OSNET rules for the modification (evolution) of these version
37# definitions see:
38#	Policy for Shared Library Version Names and Interface Definitions
39#
40# All symbols in ld.so.1 are private as no-one should bind to these directly.
41
42SUNWprivate_1.2 {
43	protected:
44		 dladdr;		# Standard dlopen(3x) family
45		 dladdr1;
46		 dldump;
47		 dlclose;
48		 dlerror;
49		 dlinfo;
50		 dlopen;
51		 dlmopen;
52		 dlsym;
53
54		_dladdr;		# these should not exist
55		_dladdr1;
56		_dldump;
57		_dlclose;
58		_dlerror;
59		_dlinfo;
60		_dlopen;
61		_dlmopen;
62		_dlsym;
63
64		_ld_libc;		# provides libc initialization
65
66		_elf_rtbndr;		# dbx expects to find these
67		 elf_rtbndr;
68		_rt_boot;		# Provides basic adb symbol offsets
69
70		 rtld_db_dlactivity;	# Required to support librtld_db
71		 rtld_db_preinit;
72		 rtld_db_postinit;
73		 r_debug;
74
75		 elf_plt_write;
76		 is_so_loaded;
77		 lml_main;
78		 lookup_sym;
79
80		 alist_append;		# librtld support
81		 ld_entry_cnt;
82		 dbg_desc;		# Diagnostic support
83		 dbg_print;
84		 eprintf;		# Error message printing
85
86		 dgettext;		# Messaging support
87		 strerror;
88
89		 calloc;		# Memory management (mapmalloc).
90		 dz_fd;
91		 free;
92		 malloc;
93		 realloc;
94
95		_environ;		# PLT tracing getenv() support.
96		 environ;
97
98		 memcpy;		# Some routines are useful for support
99		 snprintf;		# libraries such as liblddbg.
100		 sprintf;		# Note that some of these functions
101		 strcat;		# (like sprintf) may have reduced
102		 strcmp;		# functionality over libc, as a simpler
103		 strcpy;		# implementation is provided in ld.so.1.
104		 strlen;
105		 strrchr;
106		 strtok_r;
107	      ___errno;
108		 qsort;
109	local:
110		*;
111};
112