This file is indexed.

/usr/include/ComUtil/comterp.h is in ivtools-dev 1.2.11a1-8.

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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
/*
 * Copyright (c) 1993-1995 Vectaport Inc.
 * Copyright (c) 1989 Triple Vision, Inc.
 *
 * Permission to use, copy, modify, distribute, and sell this software and its
 * documentation for any purpose is hereby granted without fee, provided
 * that the above copyright notice appear in all copies and that both that
 * copyright notice and this permission notice appear in supporting
 * documentation, and that the names of the copyright holders not be used in 
 * advertising or publicity pertaining to distribution of the software 
 * without specific, written prior permission.  The copyright holders make 
 * no representation about the suitability of this software for any purpose.  
 * It is provided "as is" without express or implied warranty.
 *
 * THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS.
 * IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL,
 * INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
 * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
 * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
 * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 */

#ifndef COMTERP_INCLUDED

#define COMTERP_INCLUDED

#include <ComUtil/comutil.h>

/*
** GLOBAL debug flag
*/
extern int com_debug;

/* C Function macros for COMTERP */
#define COMCFUNC(name) name(flag, argc, argv) int flag,argc; void *argv[];
#define IOPNTR(comtype) ((comtype *)argv[0])

/* Token types returned from SCANNER.C */
#define TOK_LPAREN      17      /* Left parenthesis */
#define TOK_RPAREN      18      /* Right parenthesis */
#define TOK_LBRACKET	19	/* Left bracket */
#define TOK_RBRACKET	20	/* Right bracket */
#define TOK_LBRACE	21	/* Left brace */
#define TOK_RBRACE	22	/* Right brace */ 
#define TOK_LANGBRACK   23      /* left angle bracket (less than) */
#define TOK_RANGBRACK   24      /* right angle bracket (greater than) */
#define TOK_LANGBRACK2  25      /* double left angle bracket  */
#define TOK_RANGBRACK2  26      /* double right angle bracket */
#define TOK_KEYWORD     27      /* Keyword for free format parameters */

/* Token types returned from OPTABLE.C */
#define TOK_COMMAND     28      /* Command name */

#define TOK_BLANK       29      /* generated by empty parens: () */
 
/* OPTABLE.C Constants */

/* Kind of operator in operator table */
#define OPTYPE_BINARY		0
#define OPTYPE_UNARY_PREFIX	1
#define OPTYPE_UNARY_POSTFIX	2
#define OPTYPE_NUM		3

/* Ways to print operator table */
#define OPBY_PRIORITY		0
#define OPBY_OPERATOR		1
#define OPBY_COMMAND		2

/* TYPES.C Constants/Enums */
/* simple type strings */
#define   TYPE_STRING_CHAR		"CHAR"
#define   TYPE_STRING_SHORT  		"SHORT"
#define   TYPE_STRING_INT		"INT"
#define   TYPE_STRING_LONG		"LONG"
#define   TYPE_STRING_UCHAR		"UCHAR"
#define   TYPE_STRING_USHORT  		"USHORT"
#define   TYPE_STRING_UINT		"UINT"
#define   TYPE_STRING_ULONG		"ULONG"
#define   TYPE_STRING_FLOAT		"FLOAT"
#define   TYPE_STRING_DOUBLE  		"DOUBLE"
#define   TYPE_STRING_BOOLEAN		"BOOLEAN"
#define   TYPE_STRING_SYMBOL		"SYMBOL"
#define   TYPE_STRING_ENUM		"ENUM"
/* aggregate type strings */
#define   TYPE_STRING_ARRAY		"ARRAY"
#define   TYPE_STRING_STREAM		"STREAM"

/* simple type flag identifiers */
#define   TYPE_CHAR		0
#define   TYPE_SHORT  		1
#define   TYPE_INT		2
#define   TYPE_LONG		3
#define   TYPE_UCHAR		4
#define   TYPE_USHORT  		5
#define   TYPE_UINT		6
#define   TYPE_ULONG		7
#define   TYPE_FLOAT		8
#define   TYPE_DOUBLE  		9 
#define   TYPE_BOOLEAN		10
#define   TYPE_SYMBOL		11
#define   TYPE_ENUM		12
/* Number of simple types: UPDATE IF YOU ADD OR REMOVE ANY */
#define   TYPE_NUM_SIMPLES	13

/* aggregate type strings */
#define   TYPE_ARRAY		100
#define   TYPE_STREAM		101

/* other type defines */
#define   TYPE_FIRST		1
#define   TYPE_NEXT		2

/* Reference Parameter Structure */
typedef struct
{
    void (*comfunc)();
    void *valptr;
} REFPARAM;

/* Union for data storage */
typedef union data_value_union
{
      int               dfintval;
      unsigned int      dfunsval;
      long              lnintval;
      unsigned long     lnunsval;
      double            doublval;
      char              char_val;
      int               symbolid;
      void *            ptrval;
} data_value;


/* Structure for token in postfix expression */
typedef struct postfix_token_struct
{
   data_value v;	/* Location to store data value */
   unsigned type;       /* Token type */
   int narg;            /* Number of arguments to command */
   int nkey;		/* Number of keywords to command */
   int nids;		/* Number of ids in compound command name */
   int ln;		/* Line number */
} postfix_token;

#define PAREN_STACK_EXPERIMENT

/* Structure of stack to count command arguments and keywords */
typedef struct _paren_stack paren_stack;
struct _paren_stack 
{
  unsigned nids;
  unsigned narg;
  unsigned nkey;
  unsigned paren_type;
  int comm_id;
#ifdef PAREN_STACK_EXPERIMENT

  int pfnum;   // to keep track of postfix output prior this paren pushed on stack
#endif
};

/* Structure of stack to store operators and keywords */
typedef struct _oper_stack oper_stack;
struct _oper_stack 
{
  int id;
  int oper_type;
};

/* Package function prototypes */
#if !defined(OSK)
#include <ComUtil/comterp.arg>
#endif

#endif /* not COMTERP_INCLUDED */