1*2be1a816SJohn Birrell#!/bin/ksh -p 2*2be1a816SJohn Birrell# 3*2be1a816SJohn Birrell# CDDL HEADER START 4*2be1a816SJohn Birrell# 5*2be1a816SJohn Birrell# The contents of this file are subject to the terms of the 6*2be1a816SJohn Birrell# Common Development and Distribution License (the "License"). 7*2be1a816SJohn Birrell# You may not use this file except in compliance with the License. 8*2be1a816SJohn Birrell# 9*2be1a816SJohn Birrell# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10*2be1a816SJohn Birrell# or http://www.opensolaris.org/os/licensing. 11*2be1a816SJohn Birrell# See the License for the specific language governing permissions 12*2be1a816SJohn Birrell# and limitations under the License. 13*2be1a816SJohn Birrell# 14*2be1a816SJohn Birrell# When distributing Covered Code, include this CDDL HEADER in each 15*2be1a816SJohn Birrell# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16*2be1a816SJohn Birrell# If applicable, add the following below this CDDL HEADER, with the 17*2be1a816SJohn Birrell# fields enclosed by brackets "[]" replaced with your own identifying 18*2be1a816SJohn Birrell# information: Portions Copyright [yyyy] [name of copyright owner] 19*2be1a816SJohn Birrell# 20*2be1a816SJohn Birrell# CDDL HEADER END 21*2be1a816SJohn Birrell# 22*2be1a816SJohn Birrell 23*2be1a816SJohn Birrell# 24*2be1a816SJohn Birrell# Copyright 2006 Sun Microsystems, Inc. All rights reserved. 25*2be1a816SJohn Birrell# Use is subject to license terms. 26*2be1a816SJohn Birrell# 27*2be1a816SJohn Birrell 28*2be1a816SJohn Birrell#ident "%Z%%M% %I% %E% SMI" 29*2be1a816SJohn Birrell 30*2be1a816SJohn Birrell## 31*2be1a816SJohn Birrell# 32*2be1a816SJohn Birrell# ASSERTION: 33*2be1a816SJohn Birrell# The -D option can be used to define a name when used in conjunction 34*2be1a816SJohn Birrell# with the -C option. The -U option can be used to undefine a name in 35*2be1a816SJohn Birrell# conjunction with the -C option. 36*2be1a816SJohn Birrell# 37*2be1a816SJohn Birrell# SECTION: dtrace Utility/-C Option; 38*2be1a816SJohn Birrell# dtrace Utility/-D Option; 39*2be1a816SJohn Birrell# dtrace Utility/-U Option 40*2be1a816SJohn Birrell# 41*2be1a816SJohn Birrell## 42*2be1a816SJohn Birrell 43*2be1a816SJohn Birrellscript() 44*2be1a816SJohn Birrell{ 45*2be1a816SJohn Birrell $dtrace -C -D VALUE=40 -U VALUE -s /dev/stdin <<EOF 46*2be1a816SJohn Birrell #pragma D option quiet 47*2be1a816SJohn Birrell 48*2be1a816SJohn Birrell BEGIN 49*2be1a816SJohn Birrell { 50*2be1a816SJohn Birrell printf("Value of VALUE: %d\n", VALUE); 51*2be1a816SJohn Birrell exit(0); 52*2be1a816SJohn Birrell } 53*2be1a816SJohn BirrellEOF 54*2be1a816SJohn Birrell} 55*2be1a816SJohn Birrell 56*2be1a816SJohn Birrellif [ $# != 1 ]; then 57*2be1a816SJohn Birrell echo expected one argument: '<'dtrace-path'>' 58*2be1a816SJohn Birrell exit 2 59*2be1a816SJohn Birrellfi 60*2be1a816SJohn Birrell 61*2be1a816SJohn Birrelldtrace=$1 62*2be1a816SJohn Birrell 63*2be1a816SJohn Birrellscript 64*2be1a816SJohn Birrellstatus=$? 65*2be1a816SJohn Birrell 66*2be1a816SJohn Birrellif [ "$status" -ne 0 ]; then 67*2be1a816SJohn Birrell exit 0 68*2be1a816SJohn Birrellfi 69*2be1a816SJohn Birrell 70*2be1a816SJohn Birrellecho $tst: dtrace failed 71*2be1a816SJohn Birrellexit $status 72