This file is indexed.

/usr/include/xview_private/sel_impl.h is in xviewg-dev 3.2p1.4-28.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
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
#ifndef lint
#ifdef SCCS
static char     sccsid[] = "@(#)sel_impl.h 1.10 91/03/01";
#endif
#endif

/*
 *	(c) Copyright 1990 Sun Microsystems, Inc. Sun design patents 
 *	pending in the U.S. and foreign countries. See LEGAL NOTICE 
 *	file for terms of the license.
 */

#ifndef sel_impl_defined
#define sel_impl_defined

#include <xview/sel_pkg.h>
#include <xview_private/portable.h>


#define SEL_PUBLIC(object)	XV_PUBLIC(object)
#define SEL_PRIVATE(object)	XV_PRIVATE(Sel_info, Xv_sel, object)

#define SEL_OWNER_PUBLIC(object) XV_PUBLIC(object)
#define SEL_OWNER_PRIVATE(object) \
    XV_PRIVATE(Sel_owner_info, Xv_sel_owner, object)

#define SEL_REQUESTOR_PUBLIC(object) XV_PUBLIC(object)
#define SEL_REQUESTOR_PRIVATE(object) \
    XV_PRIVATE(Sel_req_info, Xv_sel_requestor, object)

#define SEL_ITEM_PUBLIC(object)	XV_PUBLIC(object)
#define SEL_ITEM_PRIVATE(object) \
    XV_PRIVATE(Sel_item_info, Xv_sel_item, object)


#define SEL_ADD_CLIENT     0
#define SEL_DELETE_CLIENT  1



typedef struct sel_type_tbl {
    Atom	       type;	
    char	       *type_name;	
    int            status;
    Sel_prop_info  *propInfo;
} Sel_type_tbl;


/*
 * Selection object private data
 */
typedef struct sel_info {
    Selection	    public_self;  /* back pointer to public object */
    Atom	    rank;
    char	    *rank_name;
    struct timeval  time;
    u_int	    timeout;
    Display         *dpy;
} Sel_info;



/*
 * Selection_requestor object private data
 */
typedef struct sel_req_info {
    Selection_requestor	    public_self;  /* back pointer to public object */
    int		    nbr_types;	/* number of types and type names */
    void	    (*reply_proc)();
    Sel_type_tbl    *typeTbl;
    int             typeIndex;
} Sel_req_info;


/*
 * Selection_owner object private data
 */
typedef struct requestor {
    XID        requestor;
    Atom       property;
    Atom       target;
    Atom       type;
    int        format;
    char       *data;
    int        bytelength;
    int        offset;
    int        timeout;
    Time       time;
    int        incr;              /* reply in increments */
    int        numIncr;           /* number of incrs in a request */
    int        multiple;  
    void       (*reply_proc)();
    Atom       *incrPropList;
    struct sel_owner_info  *owner;
} Requestor;


typedef struct  sel_prop_list {
    Atom     prop;
    int      avail;
    struct  sel_prop_list *next;
} Sel_prop_list;


typedef struct  sel_atom_list {
    Atom         multiple;
    Atom         targets;
    Atom         timestamp;
    Atom         file_name;
    Atom         string;
    Atom         incr;
    Atom         integer;
#ifdef OW_I18N
    Atom	 ctext;
#endif /* OW_I18N */
} Sel_atom_list;


typedef struct {
    Atom  target;
    Atom  property;
} atom_pair;


typedef struct sel_owner_info {
    Selection_owner      public_self;  /* back pointer to public object */
    Bool	        (*convert_proc)();
    void	        (*done_proc)();
    void	        (*lose_proc)();
    Bool	        own;	/* True: acquired, False: lost */
    struct sel_item_info *first_item;
    struct sel_item_info *last_item;
    Display         *dpy;
    Time	    time;
    XID             xid;
    Atom            property;
    Atom            selection;
    int             status;
    Sel_atom_list   *atomList;
    Sel_prop_info   *propInfo;
    Sel_req_info    *req_info;
    Requestor       *req;
} Sel_owner_info;


/*
 * Selection_item object private data
 */
typedef struct sel_item_info {
    Selection_item  public_self;  /* back pointer to public object */
    Bool	    copy;	/* True: malloc & copy data */
    Xv_opaque	    data;
    int		    format;	/* data element size: 8, 16 or 32 bits */
    unsigned long   length;	/* nbr of elements in data */
    struct sel_item_info *next;
    struct sel_owner_info *owner;
    struct sel_item_info *previous;
    Atom	    type;
    char	   *type_name;
} Sel_item_info;


/*
 *  Reply data
 */
typedef struct {
    Window         requestor;
    Atom           *target;
    Atom           property;
    int            format;
    Xv_opaque      data;
    unsigned long  length;
    int            timeout;
    int            multiple;
    atom_pair      *atomPair;
    Time           time;
    int            status;
    int            incr;
    Sel_owner_info *seln;
    Sel_req_info   *req_info;
} Sel_reply_info;
    

typedef struct sel_req_tbl {
    int            done;
    Sel_reply_info   *reply;
    struct  sel_req_tbl   *next;
} Sel_req_tbl;


typedef struct sel_client_info {
    Sel_owner_info          *client;
    struct sel_client_info  *next;
} Sel_client_info;



Pkg_private int xv_sel_add_prop_notify_mask();
Pkg_private Atom xv_sel_get_property();
Pkg_private void xv_sel_free_property();
Pkg_private int xv_sel_predicate();
Pkg_private int xv_sel_check_property_event();
Pkg_private int xv_sel_handle_incr();
Pkg_private struct timeval *xv_sel_cvt_xtime_to_timeval();
Pkg_private Time xv_sel_cvt_timeval_to_xtime();
Pkg_private Sel_atom_list *xv_sel_find_atom_list();
Pkg_private Sel_prop_list *xv_sel_get_prop_list();
Pkg_private Sel_req_tbl *xv_sel_add_new_req();
Pkg_private Sel_req_tbl *xv_sel_set_reply();
Pkg_private Sel_reply_info *xv_sel_get_reply();
Pkg_private Sel_cmpat_info  *xv_sel_get_compat_data();

Pkg_private int SelOwnerIsLocal();
Pkg_private void xv_sel_send_old_pkg_sel_clear();
Pkg_private void xv_sel_free_compat_data();

Xv_private int  xv_seln_handle_req();
Xv_private void xv_sel_send_old_owner_sel_clear();
Xv_private void xv_sel_set_compat_data();

#if !defined(__linux__) || defined(__DEFINE_SEL_IMPL_VARS)
XContext  selCtx;
XContext  reqCtx;
XContext  targetCtx;
XContext  propCtx;
XContext  replyCtx;
XContext  cmpatCtx;
#else
extern XContext  selCtx;
extern XContext  reqCtx;
extern XContext  targetCtx;
extern XContext  propCtx;
extern XContext  replyCtx;
extern XContext  cmpatCtx;
#endif

#endif /* sel_impl_defined */