5 # The contents of this file are subject to the terms of the
6 # Common Development and Distribution License (the "License").
7 # You may not use this file except in compliance with the License.
9 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 # or http://www.opensolaris.org/os/licensing.
11 # See the License for the specific language governing permissions
12 # and limitations under the License.
14 # When distributing Covered Code, include this CDDL HEADER in each
15 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 # If applicable, add the following below this CDDL HEADER, with the
17 # fields enclosed by brackets "[]" replaced with your own identifying
18 # information: Portions Copyright [yyyy] [name of copyright owner]
22 # Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved.
26 usage
: whocalls
[sl
:] <funcname
> <utility
> [utility arguments
]
28 whocalls will audit all
function bindings between
<utility
> and any library
29 it utilizes. Each
time the
function <funcname
> is called
, a stack
30 backtrace is displayed
33 specify an alternate who.so to use.
35 -s When available
, examine and use the .symtab symbol table
36 for local symbols
(more expensive
).
42 if [[ $# -lt 2 ]]; then
47 wholib32
="/usr/lib/link_audit/32/who.so.1"
48 wholib64
="/usr/lib/link_audit/64/who.so.1"
51 while getopts $optlet c
68 shift `expr $OPTIND - 1`
72 LD_AUDIT_32
="$wholib32" \
73 LD_AUDIT_64
="$wholib64" \
74 WHO_DETAIL
="$detail" \