This file is indexed.

/usr/lib/x86_64-linux-gnu/fis-gtm/V6.3-000A_x86_64/_randstr.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
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;								;
;	Copyright 2011, 2014 Fidelity Information Services, Inc	;
;								;
;	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.	;
;								;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
%RANDSTR(strlen,charranges,patcodes,charset)	; random string generator
	;
	; This generates a random string of length strlen from an alphabet
	;  defined by charset or by charranges and patcodes.
	; strlen defaults to 8
	; charranges is defined in a series of ranges corresponding to for
	;  loop ranges, e.g., 48:2:57 to select the even decimal digits in
	;  ASCII or 48:1:57,65:1:70 to select the hexadecimal digits
	;  charranges defaults to 1:1:127 in both M and UTF-8 modes
	; patcodes is used to restrict the characters in the random string
	;  to those from charranges that match the pattern codes (use pattern
	;  code "E" for no restrictions); patcodes defaults to "AN"
	; if charset is pass-by-reference, the returned value can be used in
	;  future calls to save time rebuilding it, since this can be expensive.
	; if called as a function, returns random string
	; if called as a routine, writes random string on current output device
	;
	new i,n,z
	if '$length($get(charset)) do
	. new a,x,y		; if charset not provided, initialize it to alphabet from which to generate random string
	. xecute "for i="_$select($length($get(charranges)):charranges,1:"1:1:127")_" set x=$get(x)_$char(i)"
	. for i=$ascii("A"):1:$ascii("Z"),$ascii("a"):1:$ascii("z") set a=$get(a)_$char(i) ;	a has all legal pattern codes
	. ; default patcodes to "AN" if not specified; restrict to legal patcodes otherwise
	. set patcodes="1."_$select($length($get(patcodes)):$translate(patcodes,$translate(patcodes,a)),1:"AN")
	. for i=1:1:$length(x) set y=$extract(x,i) set:y?@patcodes charset=$get(charset)_y
	. quit
	set n=$length(charset),z=""	 				; n has number of characters in alphabet; z is result
	for i=1:1:$select($length($get(strlen)):strlen,1:8) set z=z_$extract(charset,$random(n)+1) ; generate random string
	quit:$quit z	; extrinsic
	write z
	quit