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