17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 55aefb655Srie# Common Development and Distribution License (the "License"). 65aefb655Srie# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 215aefb655Srie 225aefb655Srie# 23cd3e9333SAli Bahrami# Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. 245aefb655Srie# 257c478bd9Sstevel@tonic-gate# Generic interface definition for usr/src/cmd/sgs/rtld. 267c478bd9Sstevel@tonic-gate# 27bfed486aSAli Bahrami 287c478bd9Sstevel@tonic-gate# 29bfed486aSAli Bahrami# MAPFILE HEADER START 30bfed486aSAli Bahrami# 31bfed486aSAli Bahrami# WARNING: STOP NOW. DO NOT MODIFY THIS FILE. 32bfed486aSAli Bahrami# Object versioning must comply with the rules detailed in 33bfed486aSAli Bahrami# 34bfed486aSAli Bahrami# usr/src/lib/README.mapfiles 35bfed486aSAli Bahrami# 36bfed486aSAli Bahrami# You should not be making modifications here until you've read the most current 37bfed486aSAli Bahrami# copy of that file. If you need help, contact a gatekeeper for guidance. 38bfed486aSAli Bahrami# 39bfed486aSAli Bahrami# MAPFILE HEADER END 40bfed486aSAli Bahrami# 41bfed486aSAli Bahrami 42cd3e9333SAli Bahrami$mapfile_version 2 43cd3e9333SAli Bahrami 447c478bd9Sstevel@tonic-gate# 457c478bd9Sstevel@tonic-gate# All symbols in ld.so.1 are private as no-one should bind to these directly. 46bfed486aSAli Bahrami# 47cd3e9333SAli BahramiSYMBOL_VERSION SUNWprivate_1.3 { 489a411307Srie protected: 497257d1b4Sraf dladdr; # Standard dlopen(3x) family 507c478bd9Sstevel@tonic-gate dladdr1; 517c478bd9Sstevel@tonic-gate dldump; 527c478bd9Sstevel@tonic-gate dlclose; 537c478bd9Sstevel@tonic-gate dlerror; 547c478bd9Sstevel@tonic-gate dlinfo; 557c478bd9Sstevel@tonic-gate dlopen; 567c478bd9Sstevel@tonic-gate dlmopen; 577c478bd9Sstevel@tonic-gate dlsym; 587c478bd9Sstevel@tonic-gate 597257d1b4Sraf _dladdr; # these should not exist 607257d1b4Sraf _dladdr1; 617257d1b4Sraf _dldump; 627257d1b4Sraf _dlclose; 637257d1b4Sraf _dlerror; 647257d1b4Sraf _dlinfo; 657257d1b4Sraf _dlopen; 667257d1b4Sraf _dlmopen; 677257d1b4Sraf _dlsym; 687257d1b4Sraf 697c478bd9Sstevel@tonic-gate _ld_libc; # provides libc initialization 707c478bd9Sstevel@tonic-gate 717c478bd9Sstevel@tonic-gate _elf_rtbndr; # dbx expects to find these 727c478bd9Sstevel@tonic-gate elf_rtbndr; 737c478bd9Sstevel@tonic-gate _rt_boot; # Provides basic adb symbol offsets 747c478bd9Sstevel@tonic-gate 757c478bd9Sstevel@tonic-gate rtld_db_dlactivity; # Required to support librtld_db 767c478bd9Sstevel@tonic-gate rtld_db_preinit; 777c478bd9Sstevel@tonic-gate rtld_db_postinit; 787c478bd9Sstevel@tonic-gate r_debug; 797c478bd9Sstevel@tonic-gate 807c478bd9Sstevel@tonic-gate elf_plt_write; 817c478bd9Sstevel@tonic-gate is_so_loaded; 827c478bd9Sstevel@tonic-gate lml_main; 837c478bd9Sstevel@tonic-gate lookup_sym; 847c478bd9Sstevel@tonic-gate 852926dd2eSrie alist_append; # librtld support 8675e7992aSrie ld_entry_cnt; 875aefb655Srie dbg_desc; # Diagnostic support 887c478bd9Sstevel@tonic-gate dbg_print; 897c478bd9Sstevel@tonic-gate eprintf; # Error message printing 90*1007fd6fSAli Bahrami veprintf; 917c478bd9Sstevel@tonic-gate 927257d1b4Sraf dgettext; # Messaging support 937c478bd9Sstevel@tonic-gate strerror; 947c478bd9Sstevel@tonic-gate 957c478bd9Sstevel@tonic-gate calloc; # Memory management (mapmalloc). 967c478bd9Sstevel@tonic-gate free; 977c478bd9Sstevel@tonic-gate malloc; 987c478bd9Sstevel@tonic-gate realloc; 997c478bd9Sstevel@tonic-gate 1007c478bd9Sstevel@tonic-gate _environ; # PLT tracing getenv() support. 1017c478bd9Sstevel@tonic-gate environ; 1027c478bd9Sstevel@tonic-gate 103a574db85Sraf memcpy; # Some routines are useful for support 104a574db85Sraf snprintf; # libraries such as liblddbg. 105a574db85Sraf sprintf; # Note that some of these functions 106a574db85Sraf strcat; # (like sprintf) may have reduced 107a574db85Sraf strcmp; # functionality over libc, as a simpler 108a574db85Sraf strcpy; # implementation is provided in ld.so.1. 109a574db85Sraf strlen; 110a574db85Sraf strrchr; 111a574db85Sraf strtok_r; 1127c478bd9Sstevel@tonic-gate ___errno; 1137c478bd9Sstevel@tonic-gate qsort; 11420272c2eSAli Bahrami dl_iterate_phdr; 115cd3e9333SAli Bahrami 116cd3e9333SAli Bahrami$if _x86 && _ELF64 117cd3e9333SAli Bahrami # amd64 ABI exception unwinding 118cd3e9333SAli Bahrami _dlamd64getunwind; 119cd3e9333SAli Bahrami dlamd64getunwind; 120cd3e9333SAli Bahrami$endif 121cd3e9333SAli Bahrami 122cd3e9333SAli Bahrami # doXX_reloc_rtld and relocXX_table are required to 123cd3e9333SAli Bahrami # support librtld.so. 124cd3e9333SAli Bahrami$if _ELF32 125cd3e9333SAli Bahrami do32_reloc_rtld; 126cd3e9333SAli Bahrami reloc32_table; 127cd3e9333SAli Bahrami$elif _ELF64 128cd3e9333SAli Bahrami do64_reloc_rtld; 129cd3e9333SAli Bahrami reloc64_table; 130cd3e9333SAli Bahrami$else 131cd3e9333SAli Bahrami$error unknown ELFCLASS 132cd3e9333SAli Bahrami$endif 1337c478bd9Sstevel@tonic-gate local: 1347c478bd9Sstevel@tonic-gate *; 1357c478bd9Sstevel@tonic-gate}; 136