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# 235891Sraf# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 241618Srie# Use is subject to license terms. 251618Srie# 260Sstevel@tonic-gate# ident "%Z%%M% %I% %E% SMI" 270Sstevel@tonic-gate# 280Sstevel@tonic-gate# Generic interface definition for usr/src/cmd/sgs/rtld. 290Sstevel@tonic-gate# 300Sstevel@tonic-gate# For information regarding the establishment of versioned definitions see: 310Sstevel@tonic-gate# The Linker and Libraries Manual (version 2.5 or greater) 320Sstevel@tonic-gate# This is part of the Developers Guide in the Answerbook. Specifically refer 330Sstevel@tonic-gate# to Chapter 2 under section "Defining Additional Symbols" through section 340Sstevel@tonic-gate# "Reducing Symbol Scope", and Chapter 5 "Versioning". 350Sstevel@tonic-gate# 360Sstevel@tonic-gate# For specific OSNET rules for the modification (evolution) of these version 370Sstevel@tonic-gate# definitions see: 380Sstevel@tonic-gate# Policy for Shared Library Version Names and Interface Definitions 390Sstevel@tonic-gate# 400Sstevel@tonic-gate# All symbols in ld.so.1 are private as no-one should bind to these directly. 410Sstevel@tonic-gate 420Sstevel@tonic-gateSUNWprivate_1.2 { 433466Srie protected: 44*6812Sraf dladdr; # Standard dlopen(3x) family 450Sstevel@tonic-gate dladdr1; 46*6812Sraf dldump; 47*6812Sraf dlclose; 48*6812Sraf dlerror; 49*6812Sraf dlinfo; 50*6812Sraf dlopen; 51*6812Sraf dlmopen; 52*6812Sraf dlsym; 53*6812Sraf 54*6812Sraf _dladdr; # these should not exist 55*6812Sraf _dladdr1; 560Sstevel@tonic-gate _dldump; 570Sstevel@tonic-gate _dlclose; 580Sstevel@tonic-gate _dlerror; 590Sstevel@tonic-gate _dlinfo; 600Sstevel@tonic-gate _dlopen; 610Sstevel@tonic-gate _dlmopen; 620Sstevel@tonic-gate _dlsym; 630Sstevel@tonic-gate 640Sstevel@tonic-gate _ld_libc; # provides libc initialization 650Sstevel@tonic-gate 660Sstevel@tonic-gate _elf_rtbndr; # dbx expects to find these 670Sstevel@tonic-gate elf_rtbndr; 680Sstevel@tonic-gate _rt_boot; # Provides basic adb symbol offsets 690Sstevel@tonic-gate 700Sstevel@tonic-gate rtld_db_dlactivity; # Required to support librtld_db 710Sstevel@tonic-gate rtld_db_preinit; 720Sstevel@tonic-gate rtld_db_postinit; 730Sstevel@tonic-gate r_debug; 740Sstevel@tonic-gate 750Sstevel@tonic-gate elf_plt_write; 760Sstevel@tonic-gate is_so_loaded; 770Sstevel@tonic-gate lml_main; 780Sstevel@tonic-gate lookup_sym; 790Sstevel@tonic-gate 802850Srie alist_append; # librtld support 815950Srie ld_entry_cnt; 821618Srie dbg_desc; # Diagnostic support 830Sstevel@tonic-gate dbg_print; 840Sstevel@tonic-gate eprintf; # Error message printing 850Sstevel@tonic-gate 86*6812Sraf dgettext; # Messaging support 870Sstevel@tonic-gate strerror; 880Sstevel@tonic-gate 890Sstevel@tonic-gate calloc; # Memory management (mapmalloc). 900Sstevel@tonic-gate dz_fd; 910Sstevel@tonic-gate free; 920Sstevel@tonic-gate malloc; 930Sstevel@tonic-gate realloc; 940Sstevel@tonic-gate 950Sstevel@tonic-gate _environ; # PLT tracing getenv() support. 960Sstevel@tonic-gate environ; 970Sstevel@tonic-gate 985891Sraf memcpy; # Some routines are useful for support 995891Sraf snprintf; # libraries such as liblddbg. 1005891Sraf sprintf; # Note that some of these functions 1015891Sraf strcat; # (like sprintf) may have reduced 1025891Sraf strcmp; # functionality over libc, as a simpler 1035891Sraf strcpy; # implementation is provided in ld.so.1. 1045891Sraf strlen; 1055891Sraf strrchr; 1065891Sraf strtok_r; 1070Sstevel@tonic-gate ___errno; 1080Sstevel@tonic-gate qsort; 1090Sstevel@tonic-gate local: 1100Sstevel@tonic-gate *; 1110Sstevel@tonic-gate}; 112