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 2008 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 dladdr1; 46 dldump; 47 dlclose; 48 dlerror; 49 dlinfo; 50 dlopen; 51 dlmopen; 52 dlsym; 53 54 _dladdr; # these should not exist 55 _dladdr1; 56 _dldump; 57 _dlclose; 58 _dlerror; 59 _dlinfo; 60 _dlopen; 61 _dlmopen; 62 _dlsym; 63 64 _ld_libc; # provides libc initialization 65 66 _elf_rtbndr; # dbx expects to find these 67 elf_rtbndr; 68 _rt_boot; # Provides basic adb symbol offsets 69 70 rtld_db_dlactivity; # Required to support librtld_db 71 rtld_db_preinit; 72 rtld_db_postinit; 73 r_debug; 74 75 elf_plt_write; 76 is_so_loaded; 77 lml_main; 78 lookup_sym; 79 80 alist_append; # librtld support 81 ld_entry_cnt; 82 dbg_desc; # Diagnostic support 83 dbg_print; 84 eprintf; # Error message printing 85 86 dgettext; # Messaging support 87 strerror; 88 89 calloc; # Memory management (mapmalloc). 90 dz_fd; 91 free; 92 malloc; 93 realloc; 94 95 _environ; # PLT tracing getenv() support. 96 environ; 97 98 memcpy; # Some routines are useful for support 99 snprintf; # libraries such as liblddbg. 100 sprintf; # Note that some of these functions 101 strcat; # (like sprintf) may have reduced 102 strcmp; # functionality over libc, as a simpler 103 strcpy; # implementation is provided in ld.so.1. 104 strlen; 105 strrchr; 106 strtok_r; 107 ___errno; 108 qsort; 109 local: 110 *; 111}; 112