This file is indexed.

/usr/share/gnudatalanguage/astrolib/fxbdimen.pro is in gdl-astrolib 2018.02.16+dfsg-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
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
        FUNCTION FXBDIMEN, UNIT, COL, ERRMSG=ERRMSG
;+
; NAME:
;     FXBDIMEN()
;
; PURPOSE:      
;      Returns the dimensions for a column in a FITS binary table.
;
; Explanation : This procedure returns the dimensions associated with a column
;               in a binary table opened for read with the command FXBOPEN.
;
; Use         : Result = FXBDIMEN(UNIT,COL)
;
; Inputs      : UNIT    = Logical unit number returned by FXBOPEN routine.
;                         Must be a scalar integer.
;
;               COL     = Column in the binary table to read data from, either
;                         as a character string containing a column label
;                         (TTYPE), or as a numerical column index starting from
;                         column one.
;
; Opt. Inputs : None.
;
; Outputs     : The result of the function is an array containing the
;               dimensions for the specified column in the FITS binary table
;               that UNIT points to.
;
; Opt. Outputs: None.
;
; Keywords :    ERRMSG  = If defined and passed, then any error messages will
;                         be returned to the user in this parameter rather than
;                         depending on the MESSAGE routine in IDL.  If no
;                         errors are encountered, then a null string is
;                         returned.  In order to use this feature, ERRMSG must
;                         be defined first, e.g.
;
;                               ERRMSG = ''
;                               Result = FXBDIMEN( ERRMSG=ERRMSG, ... )
;                               IF ERRMSG NE '' THEN ...
;
; Calls       : FXBCOLNUM, FXBFINDLUN
;
; Common      : Uses common block FXBINTABLE--see "fxbintable.pro" for more
;               information.
;
; Restrictions: None.
;
; Side effects: The dimensions will be returned whether or not the table is
;               still open or not.
;
;               If UNIT does not point to a binary table, then 0 is returned.
;
;               If UNIT is an undefined variable, then 0 is returned.
;
; Category    : Data Handling, I/O, FITS, Generic.
;
; Prev. Hist. : None.
;
; Written     : William Thompson, GSFC, 4 March 1994.
;
; Modified    : Version 1, William Thompson, GSFC, 4 March 1994.
;               Version 2, William Thompson, GSFC, 21 June 1994
;                       Added ERRMSG keyword.
;               Version 3, William Thompson, GSFC, 23 June 1994
;                       Modified so that ERRMSG is not touched if not defined.
;
; Version     : Version 3, 23 June 1994
;       Converted to IDL V5.0   W. Landsman   September 1997
;-
;
@fxbintable
        ON_ERROR, 2
;
;  Check the number of parameters.
;
        IF N_PARAMS() NE 2 THEN BEGIN
                MESSAGE = 'Syntax:  Result = FXBDIMEN(UNIT,COL)'
                IF N_ELEMENTS(ERRMSG) NE 0 THEN BEGIN
                        ERRMSG = MESSAGE
                        RETURN, 0
                END ELSE MESSAGE, MESSAGE
        ENDIF
;
;  If UNIT is undefined, then return zero.
;
        IF N_ELEMENTS(UNIT) EQ 0 THEN RETURN, 0
;
;  Check the validity of UNIT.
;
        IF N_ELEMENTS(UNIT) GT 1 THEN BEGIN
                MESSAGE = 'UNIT must be a scalar'
                IF N_ELEMENTS(ERRMSG) NE 0 THEN BEGIN
                        ERRMSG = MESSAGE
                        RETURN, 0
                END ELSE MESSAGE, MESSAGE
        ENDIF
        SZ = SIZE(UNIT)
        IF SZ[SZ[0]+1] GT 3 THEN BEGIN
                MESSAGE = 'UNIT must be an integer'
                IF N_ELEMENTS(ERRMSG) NE 0 THEN BEGIN
                        ERRMSG = MESSAGE
                        RETURN, 0
                END ELSE MESSAGE, MESSAGE
        ENDIF
;
;  Find the column number for the requested column.
;
        IF N_ELEMENTS(ERRMSG) NE 0 THEN BEGIN
                ICOL = FXBCOLNUM(UNIT,COL,ERRMSG=ERRMSG)
                IF MESSAGE NE '' THEN RETURN, 0
        END ELSE ICOL = FXBCOLNUM(UNIT,COL)
        IF ICOL EQ 0 THEN BEGIN
                MESSAGE = 'No such column'
                IF N_ELEMENTS(ERRMSG) NE 0 THEN BEGIN
                        ERRMSG = MESSAGE
                        RETURN, 0
                END ELSE MESSAGE, MESSAGE
        ENDIF
;
;  Get the dimensions associated with UNIT and COL.
;
        ILUN = FXBFINDLUN(UNIT)
        DIMS = N_DIMS[*,ICOL-1,ILUN]
        IF N_ELEMENTS(ERRMSG) NE 0 THEN ERRMSG = ''
        RETURN, DIMS[1:DIMS[0]]
;
        END