This file is indexed.

/usr/share/systemtap/tapset/pn.stp is in systemtap-common 2.6-0.2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
// probe-name tapset
// Copyright (C) 2010, 2014 Red Hat Inc.
//
// This file is part of systemtap, and is free software.  You can
// redistribute it and/or modify it under the terms of the GNU General
// Public License (GPL); either version 2, or (at your option) any
// later version.
%{
#ifndef STP_NEED_PROBE_NAME
#define STP_NEED_PROBE_NAME 1
#endif
%}

/**
 * sfunction pn - Returns the active probe name
 *
 * Description: This function returns the script-level probe point
 * associated with a currently running probe handler, including
 * wild-card expansion effects. Context: The current probe point.
 */
function pn:string ()
%{ /* pure */ /* unprivileged */
	const char* name = CONTEXT->probe_name ?: CONTEXT->probe_point;
	strlcpy (STAP_RETVALUE, name, MAXSTRINGLEN);
%}

/**
 * sfunction pnlabel - Returns the label name parsed from the probe name
 *
 * Description: This returns the label name as parsed from the
 * script-level probe point. This function will only work if called
 * directly from the body of a '.label' probe point (i.e. no aliases).
 * Context: The current probe point.
 */
function pnlabel:string ()
%{ /* pure */ /* unprivileged */
	char *ptr, *start;

	if (!CONTEXT->probe_name) {
		STAP_RETURN("");
	}

	/* This function is modelled after ppfunc() */
	STAP_RETVALUE[0] = '\0';
	start = strstr(CONTEXT->probe_name, "label(\""); /* XXX: could be smarter */
	ptr = start + 7;

	if (start) {
		int len = MAXSTRINGLEN;
		char *dst = STAP_RETVALUE;
		while (*ptr != '"' && --len > 0 && *ptr)
			*dst++ = *ptr++;
		*dst = 0;
	}
%}