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# 23*9a411307Srie# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 245aefb655Srie# Use is subject to license terms. 255aefb655Srie# 267c478bd9Sstevel@tonic-gate# ident "%Z%%M% %I% %E% SMI" 277c478bd9Sstevel@tonic-gate# 287c478bd9Sstevel@tonic-gate# Generic interface definition for usr/src/cmd/sgs/rtld. 297c478bd9Sstevel@tonic-gate# 307c478bd9Sstevel@tonic-gate# For information regarding the establishment of versioned definitions see: 317c478bd9Sstevel@tonic-gate# The Linker and Libraries Manual (version 2.5 or greater) 327c478bd9Sstevel@tonic-gate# This is part of the Developers Guide in the Answerbook. Specifically refer 337c478bd9Sstevel@tonic-gate# to Chapter 2 under section "Defining Additional Symbols" through section 347c478bd9Sstevel@tonic-gate# "Reducing Symbol Scope", and Chapter 5 "Versioning". 357c478bd9Sstevel@tonic-gate# 367c478bd9Sstevel@tonic-gate# For specific OSNET rules for the modification (evolution) of these version 377c478bd9Sstevel@tonic-gate# definitions see: 387c478bd9Sstevel@tonic-gate# Policy for Shared Library Version Names and Interface Definitions 397c478bd9Sstevel@tonic-gate# 407c478bd9Sstevel@tonic-gate# All symbols in ld.so.1 are private as no-one should bind to these directly. 417c478bd9Sstevel@tonic-gate 427c478bd9Sstevel@tonic-gateSUNWprivate_1.2 { 43*9a411307Srie protected: 447c478bd9Sstevel@tonic-gate _dladdr; # Standard dlopen(3x) family 457c478bd9Sstevel@tonic-gate dladdr; 467c478bd9Sstevel@tonic-gate _dladdr1; 477c478bd9Sstevel@tonic-gate dladdr1; 487c478bd9Sstevel@tonic-gate _dldump; 497c478bd9Sstevel@tonic-gate dldump; 507c478bd9Sstevel@tonic-gate _dlclose; 517c478bd9Sstevel@tonic-gate dlclose; 527c478bd9Sstevel@tonic-gate _dlerror; 537c478bd9Sstevel@tonic-gate dlerror; 547c478bd9Sstevel@tonic-gate _dlinfo; 557c478bd9Sstevel@tonic-gate dlinfo; 567c478bd9Sstevel@tonic-gate _dlopen; 577c478bd9Sstevel@tonic-gate dlopen; 587c478bd9Sstevel@tonic-gate _dlmopen; 597c478bd9Sstevel@tonic-gate dlmopen; 607c478bd9Sstevel@tonic-gate _dlsym; 617c478bd9Sstevel@tonic-gate dlsym; 627c478bd9Sstevel@tonic-gate 637c478bd9Sstevel@tonic-gate _ld_libc; # provides libc initialization 647c478bd9Sstevel@tonic-gate 657c478bd9Sstevel@tonic-gate _elf_rtbndr; # dbx expects to find these 667c478bd9Sstevel@tonic-gate elf_rtbndr; 677c478bd9Sstevel@tonic-gate _rt_boot; # Provides basic adb symbol offsets 687c478bd9Sstevel@tonic-gate 697c478bd9Sstevel@tonic-gate rtld_db_dlactivity; # Required to support librtld_db 707c478bd9Sstevel@tonic-gate rtld_db_preinit; 717c478bd9Sstevel@tonic-gate rtld_db_postinit; 727c478bd9Sstevel@tonic-gate r_debug; 737c478bd9Sstevel@tonic-gate 747c478bd9Sstevel@tonic-gate elf_plt_write; 757c478bd9Sstevel@tonic-gate is_so_loaded; 767c478bd9Sstevel@tonic-gate lml_main; 777c478bd9Sstevel@tonic-gate lookup_sym; 787c478bd9Sstevel@tonic-gate 792926dd2eSrie alist_append; # librtld support 805aefb655Srie dbg_desc; # Diagnostic support 817c478bd9Sstevel@tonic-gate dbg_print; 827c478bd9Sstevel@tonic-gate eprintf; # Error message printing 837c478bd9Sstevel@tonic-gate 847c478bd9Sstevel@tonic-gate _dgettext; # Messaging support 857c478bd9Sstevel@tonic-gate strerror; 867c478bd9Sstevel@tonic-gate 877c478bd9Sstevel@tonic-gate calloc; # Memory management (mapmalloc). 887c478bd9Sstevel@tonic-gate dz_fd; 897c478bd9Sstevel@tonic-gate free; 907c478bd9Sstevel@tonic-gate malloc; 917c478bd9Sstevel@tonic-gate realloc; 927c478bd9Sstevel@tonic-gate 937c478bd9Sstevel@tonic-gate _environ; # PLT tracing getenv() support. 947c478bd9Sstevel@tonic-gate environ; 957c478bd9Sstevel@tonic-gate 967c478bd9Sstevel@tonic-gate _open; # Some routines are useful for support 977c478bd9Sstevel@tonic-gate _close; # libraries such as liblddbg (this 987c478bd9Sstevel@tonic-gate memcpy; # reduces the cost of debugging as the 997c478bd9Sstevel@tonic-gate snprintf; # library doesn't have its own 1007c478bd9Sstevel@tonic-gate sprintf; # dependency on libc). 1017c478bd9Sstevel@tonic-gate strcat; 1027c478bd9Sstevel@tonic-gate strcmp; 1037c478bd9Sstevel@tonic-gate strcpy; # Note that some of these functions 1047c478bd9Sstevel@tonic-gate strlen; # (like sprintf) may have reduced 1057c478bd9Sstevel@tonic-gate strrchr; # functionality over libc, as a simpler 1067c478bd9Sstevel@tonic-gate strtok_r; # implementation is provided in ld.so.1. 1077c478bd9Sstevel@tonic-gate _write; 1087c478bd9Sstevel@tonic-gate ___errno; 1097c478bd9Sstevel@tonic-gate qsort; 1107c478bd9Sstevel@tonic-gate local: 1117c478bd9Sstevel@tonic-gate *; 1127c478bd9Sstevel@tonic-gate}; 113