This file is indexed.

/usr/lib/x86_64-linux-gnu/fis-gtm/V6.3-000A_x86_64/_xcmd.m is in fis-gtm-6.3-000a 6.3-000A-1.

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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;								;
; Copyright (c) 2016 Fidelity National Information		;
; Services, Inc. and/or its subsidiaries. All rights reserved.	;
;								;
;	This source code contains the intellectual property	;
;	of its copyright holder(s), and is made available	;
;	under a license.  If you do not know the terms of	;
;	the license, please stop and do not read further.	;
;								;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
	; Utility to execute a shell command and return a non-zero status on error
	;
%XCMD	; Usage: mumps -run %XCMD '<string>'
	; If no $ETRAP defined, use CLIERR^%XCMD overriding a potential $ZTRAP error handler
	if ""=$ETRAP new $ETRAP set $ETRAP="goto CLIERR^%XCMD"
	new etrap set etrap=$ETRAP
	; Protect %XCMD's error handler by NEWing and SETing $ETRAP at the beginning of the XECUTEd command
	xecute "new $ETRAP set $ETRAP=etrap "_$zcmdline
	quit

CLIERR
	for i=1:1:$length($zstatus,",")  quit:i>$length($zstatus,",")  do
	. if $piece($zstatus,",",i)?1(1"%",1"-")3.U1"-"1U1"-".E do 	; split on GTM error format
	. . write:$data(lasti) $piece($zstatus,",",lasti,i-1),!
	. . set lasti=i
	write $piece($zstatus,",",$get(lasti,3),i),!
	zhalt +$piece($zstatus,",",1)
	quit

	; Perform a given command on every line of input
	;
LOOP	; Usage: mumps -run LOOP^%XCMD [--before=|<string>|] [--after=|<string>|] [--xec=|<string>|]
	; %l keeps the current line contents and %NR keeps its line #
	; If no $ETRAP defined, use LOOPERR^%XCMD overriding a potential $ZTRAP error handler
	if ""=$ETRAP new $ETRAP set $ETRAP="goto LOOPERR^%XCMD"
	new %cli,%l,%NR,%xcmd,etrap,xec
	set %cli=$zcmdline,etrap=$ETRAP
	for  quit:'$$trimleadingstr(.%cli,"--")  do 	; process command line options
	. if $$trimleadingstr(.%cli,"after=") set %xcmd("after")=$$trimleadingdelimstr(.%cli)
	. else  if $$trimleadingstr(.%cli,"before=") set %xcmd("before")=$$trimleadingdelimstr(.%cli)
	. else  if $$trimleadingstr(.%cli,"xec=") set %xcmd("xec")=$$trimleadingdelimstr(.%cli)
	. else  set $ecode=",U254,"
	. if $$trimleadingstr(.%cli," ")
	set:$length(%cli) $ecode=",U252,"
	kill %cli
	set xec=$length($get(%xcmd("xec"))) ; xec=0 means nothing to do on each line
	do cmd($get(%xcmd("before")),0,"",etrap)
	for %NR=1:1 read %l quit:$zeof  do:xec cmd(%xcmd("xec"),%NR,%l,etrap)
	do cmd($get(%xcmd("after")),%NR,%l,etrap)
	quit

cmd(cmd,%NR,%l,ltrap)
	quit:$length(cmd)=0
	; Protect LOOP^%XCMD's internal variables %xcmd and etrap and $ETRAP from modification by the XECUTEd command
	new %xcmd,etrap,$ETRAP
	set $ETRAP=ltrap
	xecute cmd
	quit

LOOPERR
	; attempt to trap internal errors
	set uecode=$piece($ecode,",",2),uemsg=$text(@uecode)
	if $length(uemsg) write $text(+0),@$piece(uemsg,";",2),! zhalt +$extract(uecode,2,$length(uecode))
	use $principal
	write $zstatus,!
	zhalt 1
	quit

	; Remove and optionally return leading delimited string from str
trimleadingdelimstr(str)
	new delim,substr
	set delim=$extract(str,1)
	set substr=$piece(str,delim,2)
	set str=$extract(str,$length(substr)+3,$length(str))
	quit:$quit substr quit

	; Remove and optionally return first piece of s with space as piece separator
trimleadingpiece(str)
	new tmp
	set tmp=$piece(str," ",1)
	set str=$piece(str," ",2,$length(str," "))
	quit:$quit tmp quit

	; Return s without leading $length(x) characters; return 1/0 if called as function
trimleadingstr(str,x)
	if x=$extract(str,1,$length(x)) set str=$extract(str,$length(x)+1,$length(str)) quit:$quit 1 quit
	else  quit:$quit 0 quit

;	Error message texts
U252	;"-F-UNRECCMD Unrecognized commands starting with "_%cli
U254	;"-F-ILLEGALCMD Illegal command line option(s) starting with --"_%cli