xref: /illumos-gate/usr/src/cmd/sgs/rtld/common/mapfile-vers (revision 7c478bd95313f5f23a4c958a745db2134aa03244)
1*7c478bd9Sstevel@tonic-gate#
2*7c478bd9Sstevel@tonic-gate# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
3*7c478bd9Sstevel@tonic-gate# Use is subject to license terms.
4*7c478bd9Sstevel@tonic-gate#
5*7c478bd9Sstevel@tonic-gate# CDDL HEADER START
6*7c478bd9Sstevel@tonic-gate#
7*7c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the
8*7c478bd9Sstevel@tonic-gate# Common Development and Distribution License, Version 1.0 only
9*7c478bd9Sstevel@tonic-gate# (the "License").  You may not use this file except in compliance
10*7c478bd9Sstevel@tonic-gate# with the License.
11*7c478bd9Sstevel@tonic-gate#
12*7c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
13*7c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing.
14*7c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions
15*7c478bd9Sstevel@tonic-gate# and limitations under the License.
16*7c478bd9Sstevel@tonic-gate#
17*7c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each
18*7c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
19*7c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the
20*7c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying
21*7c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner]
22*7c478bd9Sstevel@tonic-gate#
23*7c478bd9Sstevel@tonic-gate# CDDL HEADER END
24*7c478bd9Sstevel@tonic-gate#
25*7c478bd9Sstevel@tonic-gate# ident	"%Z%%M%	%I%	%E% SMI"
26*7c478bd9Sstevel@tonic-gate#
27*7c478bd9Sstevel@tonic-gate# Generic interface definition for usr/src/cmd/sgs/rtld.
28*7c478bd9Sstevel@tonic-gate#
29*7c478bd9Sstevel@tonic-gate# For information regarding the establishment of versioned definitions see:
30*7c478bd9Sstevel@tonic-gate#	The Linker and Libraries Manual (version 2.5 or greater)
31*7c478bd9Sstevel@tonic-gate# This is part of the Developers Guide in the Answerbook.  Specifically refer
32*7c478bd9Sstevel@tonic-gate# to Chapter 2 under section "Defining Additional Symbols" through section
33*7c478bd9Sstevel@tonic-gate# "Reducing Symbol Scope", and Chapter 5 "Versioning".
34*7c478bd9Sstevel@tonic-gate#
35*7c478bd9Sstevel@tonic-gate# For specific OSNET rules for the modification (evolution) of these version
36*7c478bd9Sstevel@tonic-gate# definitions see:
37*7c478bd9Sstevel@tonic-gate#	Policy for Shared Library Version Names and Interface Definitions
38*7c478bd9Sstevel@tonic-gate#
39*7c478bd9Sstevel@tonic-gate# All symbols in ld.so.1 are private as no-one should bind to these directly.
40*7c478bd9Sstevel@tonic-gate
41*7c478bd9Sstevel@tonic-gateSUNWprivate_1.2 {
42*7c478bd9Sstevel@tonic-gate	global:
43*7c478bd9Sstevel@tonic-gate		_dladdr;		# Standard dlopen(3x) family
44*7c478bd9Sstevel@tonic-gate		 dladdr;
45*7c478bd9Sstevel@tonic-gate		_dladdr1;
46*7c478bd9Sstevel@tonic-gate		 dladdr1;
47*7c478bd9Sstevel@tonic-gate		_dldump;
48*7c478bd9Sstevel@tonic-gate		 dldump;
49*7c478bd9Sstevel@tonic-gate		_dlclose;
50*7c478bd9Sstevel@tonic-gate		 dlclose;
51*7c478bd9Sstevel@tonic-gate		_dlerror;
52*7c478bd9Sstevel@tonic-gate		 dlerror;
53*7c478bd9Sstevel@tonic-gate		_dlinfo;
54*7c478bd9Sstevel@tonic-gate		 dlinfo;
55*7c478bd9Sstevel@tonic-gate		_dlopen;
56*7c478bd9Sstevel@tonic-gate		 dlopen;
57*7c478bd9Sstevel@tonic-gate		_dlmopen;
58*7c478bd9Sstevel@tonic-gate		 dlmopen;
59*7c478bd9Sstevel@tonic-gate		_dlsym;
60*7c478bd9Sstevel@tonic-gate		 dlsym;
61*7c478bd9Sstevel@tonic-gate
62*7c478bd9Sstevel@tonic-gate		_ld_concurrency;	# Provides libthread initialization
63*7c478bd9Sstevel@tonic-gate		_ld_libc;		# provides libc initialization
64*7c478bd9Sstevel@tonic-gate
65*7c478bd9Sstevel@tonic-gate		_elf_rtbndr;		# dbx expects to find these
66*7c478bd9Sstevel@tonic-gate		 elf_rtbndr;
67*7c478bd9Sstevel@tonic-gate		_rt_boot;		# Provides basic adb symbol offsets
68*7c478bd9Sstevel@tonic-gate
69*7c478bd9Sstevel@tonic-gate		 rtld_db_dlactivity;	# Required to support librtld_db
70*7c478bd9Sstevel@tonic-gate		 rtld_db_preinit;
71*7c478bd9Sstevel@tonic-gate		 rtld_db_postinit;
72*7c478bd9Sstevel@tonic-gate		 r_debug;
73*7c478bd9Sstevel@tonic-gate
74*7c478bd9Sstevel@tonic-gate		 do_reloc;		# Required to support librtld.so
75*7c478bd9Sstevel@tonic-gate		 elf_plt_write;
76*7c478bd9Sstevel@tonic-gate		 is_so_loaded;
77*7c478bd9Sstevel@tonic-gate		 lml_main;
78*7c478bd9Sstevel@tonic-gate		 lookup_sym;
79*7c478bd9Sstevel@tonic-gate		 reloc_table;
80*7c478bd9Sstevel@tonic-gate
81*7c478bd9Sstevel@tonic-gate		 dbg_mask;		# Required to support liblddbg.so
82*7c478bd9Sstevel@tonic-gate		 dbg_print;
83*7c478bd9Sstevel@tonic-gate		 eprintf;		# Error message printing
84*7c478bd9Sstevel@tonic-gate
85*7c478bd9Sstevel@tonic-gate		_dgettext;		# Messaging support
86*7c478bd9Sstevel@tonic-gate		 strerror;
87*7c478bd9Sstevel@tonic-gate
88*7c478bd9Sstevel@tonic-gate		 calloc;		# Memory management (mapmalloc).
89*7c478bd9Sstevel@tonic-gate		 dz_fd;
90*7c478bd9Sstevel@tonic-gate		 free;
91*7c478bd9Sstevel@tonic-gate		 malloc;
92*7c478bd9Sstevel@tonic-gate		 realloc;
93*7c478bd9Sstevel@tonic-gate
94*7c478bd9Sstevel@tonic-gate		_environ;		# PLT tracing getenv() support.
95*7c478bd9Sstevel@tonic-gate		 environ;
96*7c478bd9Sstevel@tonic-gate
97*7c478bd9Sstevel@tonic-gate		_open;			# Some routines are useful for support
98*7c478bd9Sstevel@tonic-gate		_close;			# libraries such as liblddbg (this
99*7c478bd9Sstevel@tonic-gate		 memcpy;		# reduces the cost of debugging as the
100*7c478bd9Sstevel@tonic-gate		 snprintf;		# library doesn't have its own
101*7c478bd9Sstevel@tonic-gate		 sprintf;		# dependency on libc).
102*7c478bd9Sstevel@tonic-gate		 strcat;
103*7c478bd9Sstevel@tonic-gate		 strcmp;
104*7c478bd9Sstevel@tonic-gate		 strcpy;		# Note that some of these functions
105*7c478bd9Sstevel@tonic-gate		 strlen;		# (like sprintf) may have reduced
106*7c478bd9Sstevel@tonic-gate		 strrchr;		# functionality over libc, as a simpler
107*7c478bd9Sstevel@tonic-gate		 strtok_r;		# implementation is provided in ld.so.1.
108*7c478bd9Sstevel@tonic-gate		_write;
109*7c478bd9Sstevel@tonic-gate	      ___errno;
110*7c478bd9Sstevel@tonic-gate		 qsort;
111*7c478bd9Sstevel@tonic-gate	local:
112*7c478bd9Sstevel@tonic-gate		*;
113*7c478bd9Sstevel@tonic-gate};
114