This file is indexed.

/usr/include/wvstreams/wvlink.h is in libwvstreams-dev 4.6.1-11.

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
/* -*- Mode: C++ -*-
 * Worldvisions Weaver Software:
 *   Copyright (C) 1997-2002 Net Integration Technologies, Inc.
 *
 * WvLink is one element of a linked list.
 * Used by wvlinklist.h.
 */
#ifndef __WVLINK_H
#define __WVLINK_H

#include <stdlib.h>  // for 'NULL'

/**
 * WvLink is one element of a WvList<T>.
 * 
 * Note that WvLink itself is untyped to minimize the amount of
 * generated code.  This means that WvLink cannot handle the
 * autofree behaviour itself which would require static type
 * information.  Instead, it defers this behaviour to the
 * template instantiation of WvList<T> that uses it.
 * 
 */
class WvLink
{
public:
    void *data;
    WvLink *next;
    const char *id;

private:
    bool autofree : 1;

public:
    WvLink(void *_data, bool _autofree, const char *_id = NULL):
	data(_data), next(NULL), id(_id), autofree(_autofree)
    {}

    WvLink(void *_data, WvLink *prev, WvLink *&tail, bool _autofree,
	   const char *_id = NULL);

    bool get_autofree()
    {
	return autofree;
    }

    void set_autofree(bool _autofree)
    {
	autofree = _autofree;
    }

    void unlink(WvLink *prev)
    {
	prev->next = next;
	delete this;
    }
};

#define WvIterStuff(_type_) \
    /*! @brief Returns a reference to the current element. */ \
    _type_ &operator () () const \
        { return *ptr(); } \
    /*! @brief Returns a pointer to the current element. */ \
    _type_ *operator -> () const \
        { return ptr(); } \
    /*! @brief Returns a reference to the current element. */ \
    _type_ &operator* () const \
        { return *ptr(); }

#endif // __WVLINK_H