10Sstevel@tonic-gate# 20Sstevel@tonic-gate# CDDL HEADER START 30Sstevel@tonic-gate# 40Sstevel@tonic-gate# The contents of this file are subject to the terms of the 51618Srie# Common Development and Distribution License (the "License"). 61618Srie# You may not use this file except in compliance with the License. 70Sstevel@tonic-gate# 80Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 90Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 100Sstevel@tonic-gate# See the License for the specific language governing permissions 110Sstevel@tonic-gate# and limitations under the License. 120Sstevel@tonic-gate# 130Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 140Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 150Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 160Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 170Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 180Sstevel@tonic-gate# 190Sstevel@tonic-gate# CDDL HEADER END 200Sstevel@tonic-gate# 211618Srie 221618Srie# 2312692SAli.Bahrami@Oracle.COM# Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. 241618Srie# 250Sstevel@tonic-gate# Generic interface definition for usr/src/cmd/sgs/rtld. 260Sstevel@tonic-gate# 278744SAli.Bahrami@Sun.COM 288744SAli.Bahrami@Sun.COM# 298744SAli.Bahrami@Sun.COM# MAPFILE HEADER START 308744SAli.Bahrami@Sun.COM# 318744SAli.Bahrami@Sun.COM# WARNING: STOP NOW. DO NOT MODIFY THIS FILE. 328744SAli.Bahrami@Sun.COM# Object versioning must comply with the rules detailed in 330Sstevel@tonic-gate# 348744SAli.Bahrami@Sun.COM# usr/src/lib/README.mapfiles 358744SAli.Bahrami@Sun.COM# 368744SAli.Bahrami@Sun.COM# You should not be making modifications here until you've read the most current 378744SAli.Bahrami@Sun.COM# copy of that file. If you need help, contact a gatekeeper for guidance. 388744SAli.Bahrami@Sun.COM# 398744SAli.Bahrami@Sun.COM# MAPFILE HEADER END 408744SAli.Bahrami@Sun.COM# 418744SAli.Bahrami@Sun.COM 4212692SAli.Bahrami@Oracle.COM$mapfile_version 2 4312692SAli.Bahrami@Oracle.COM 440Sstevel@tonic-gate# 450Sstevel@tonic-gate# All symbols in ld.so.1 are private as no-one should bind to these directly. 468744SAli.Bahrami@Sun.COM# 4712692SAli.Bahrami@Oracle.COMSYMBOL_VERSION SUNWprivate_1.3 { 483466Srie protected: 496812Sraf dladdr; # Standard dlopen(3x) family 500Sstevel@tonic-gate dladdr1; 516812Sraf dldump; 526812Sraf dlclose; 536812Sraf dlerror; 546812Sraf dlinfo; 556812Sraf dlopen; 566812Sraf dlmopen; 576812Sraf dlsym; 586812Sraf 596812Sraf _dladdr; # these should not exist 606812Sraf _dladdr1; 610Sstevel@tonic-gate _dldump; 620Sstevel@tonic-gate _dlclose; 630Sstevel@tonic-gate _dlerror; 640Sstevel@tonic-gate _dlinfo; 650Sstevel@tonic-gate _dlopen; 660Sstevel@tonic-gate _dlmopen; 670Sstevel@tonic-gate _dlsym; 680Sstevel@tonic-gate 690Sstevel@tonic-gate _ld_libc; # provides libc initialization 700Sstevel@tonic-gate 710Sstevel@tonic-gate _elf_rtbndr; # dbx expects to find these 720Sstevel@tonic-gate elf_rtbndr; 730Sstevel@tonic-gate _rt_boot; # Provides basic adb symbol offsets 740Sstevel@tonic-gate 750Sstevel@tonic-gate rtld_db_dlactivity; # Required to support librtld_db 760Sstevel@tonic-gate rtld_db_preinit; 770Sstevel@tonic-gate rtld_db_postinit; 780Sstevel@tonic-gate r_debug; 790Sstevel@tonic-gate 800Sstevel@tonic-gate elf_plt_write; 810Sstevel@tonic-gate is_so_loaded; 820Sstevel@tonic-gate lml_main; 830Sstevel@tonic-gate lookup_sym; 840Sstevel@tonic-gate 852850Srie alist_append; # librtld support 865950Srie ld_entry_cnt; 871618Srie dbg_desc; # Diagnostic support 880Sstevel@tonic-gate dbg_print; 890Sstevel@tonic-gate eprintf; # Error message printing 90*13074SAli.Bahrami@Oracle.COM veprintf; 910Sstevel@tonic-gate 926812Sraf dgettext; # Messaging support 930Sstevel@tonic-gate strerror; 940Sstevel@tonic-gate 950Sstevel@tonic-gate calloc; # Memory management (mapmalloc). 960Sstevel@tonic-gate free; 970Sstevel@tonic-gate malloc; 980Sstevel@tonic-gate realloc; 990Sstevel@tonic-gate 1000Sstevel@tonic-gate _environ; # PLT tracing getenv() support. 1010Sstevel@tonic-gate environ; 1020Sstevel@tonic-gate 1035891Sraf memcpy; # Some routines are useful for support 1045891Sraf snprintf; # libraries such as liblddbg. 1055891Sraf sprintf; # Note that some of these functions 1065891Sraf strcat; # (like sprintf) may have reduced 1075891Sraf strcmp; # functionality over libc, as a simpler 1085891Sraf strcpy; # implementation is provided in ld.so.1. 1095891Sraf strlen; 1105891Sraf strrchr; 1115891Sraf strtok_r; 1120Sstevel@tonic-gate ___errno; 1130Sstevel@tonic-gate qsort; 11411690SAli.Bahrami@Sun.COM dl_iterate_phdr; 11512692SAli.Bahrami@Oracle.COM 11612692SAli.Bahrami@Oracle.COM$if _x86 && _ELF64 11712692SAli.Bahrami@Oracle.COM # amd64 ABI exception unwinding 11812692SAli.Bahrami@Oracle.COM _dlamd64getunwind; 11912692SAli.Bahrami@Oracle.COM dlamd64getunwind; 12012692SAli.Bahrami@Oracle.COM$endif 12112692SAli.Bahrami@Oracle.COM 12212692SAli.Bahrami@Oracle.COM # doXX_reloc_rtld and relocXX_table are required to 12312692SAli.Bahrami@Oracle.COM # support librtld.so. 12412692SAli.Bahrami@Oracle.COM$if _ELF32 12512692SAli.Bahrami@Oracle.COM do32_reloc_rtld; 12612692SAli.Bahrami@Oracle.COM reloc32_table; 12712692SAli.Bahrami@Oracle.COM$elif _ELF64 12812692SAli.Bahrami@Oracle.COM do64_reloc_rtld; 12912692SAli.Bahrami@Oracle.COM reloc64_table; 13012692SAli.Bahrami@Oracle.COM$else 13112692SAli.Bahrami@Oracle.COM$error unknown ELFCLASS 13212692SAli.Bahrami@Oracle.COM$endif 1330Sstevel@tonic-gate local: 1340Sstevel@tonic-gate *; 1350Sstevel@tonic-gate}; 136