This file is indexed.

/usr/include/osp/osptnprobe.h is in libosptk3-dev 3.4.2-1.2.

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
/**************************************************************************
*** COPYRIGHT (c) 2002 by TransNexus, Inc.                              ***
***                                                                     ***
*** This software is property of TransNexus, Inc.                       ***
*** This software is freely available under license from TransNexus.    ***
*** The license terms and conditions for free use of this software by   ***
*** third parties are defined in the OSP Toolkit Software License       ***
*** Agreement (LICENSE.txt).  Any use of this software by third         ***
*** parties, which does not comply with the terms and conditions of the ***
*** OSP Toolkit Software License Agreement is prohibited without        ***
*** the prior, express, written consent of TransNexus, Inc.             ***
***                                                                     ***
*** Thank you for using the OSP ToolKit(TM).  Please report any bugs,   ***
*** suggestions or feedback to support@transnexus.com                   ***
***                                                                     ***
**************************************************************************/







/*
 * osptnprobe.h - structures and prototypes for functions that probe
 *             response time to different systems
 */
/*
 * To call OSPPTNProbe, fill in the ospmipaddr field of an array of OSPT_TN_PROBE
 * structures and indicating the size of the array. The function will
 * return by filling in the ospmTime field for each element with the
 * number of milliseconds the system took to respond to a message sent
 * to its echo/udp service.
 *
 * The uMaxWait parameter indicates the maximum number of milliseconds
 * to wait before giving up.
 *
 * The function works by sending a small UDP datagram to each remote
 * host and measuring the time that elapses until the reply. There
 * are advantages and disadvantages to this approach:
 *
 * Good:
 *   -  cleaner, easier to port code (compared to ICMP echo)
 *   -  closer simulation of voice traffic (which uses RTP/UDP)
 *      especially since many routers will treat ICMP special
 *
 * Bad:
 *   -  not all hosts (e.g. WinNT 4.0) automatically install
 *      deamons on the echo port (for WinNT 4.0, it's part of
 *      the optionally installed Simple TCP/IP Services)
 *
 * Enhancements:
 *   -  currently, the function only sends a single datagram to each
 *      host. With next hop caching in routers, as well as problems
 *      sending back-to-back packets in some OSs (e.g. Win95), it
 *      might be better to send several datagrams to each host,
 *      ignore the first reply (which establishes the routers' caches),
 *      and average the remainder.
 */

#ifndef osptnprobe_h
#define osptnprobe_h

#include "osp/osp.h"

typedef struct                      /* structure to pass probe information */
{
    OSPTIPADDR    ospmipaddr;
    unsigned long ospmTime;         /* 0xFFFFFFFF = unreachable */
    int           ospmSocket;       /* only used internally */
    unsigned      ospmPrStatus;     /* only used internally */
    unsigned      ospmPrRef;        /* Initial order in list */
} OSPT_TN_PROBE;

#define OSPC_TN_PROBE_UNREACHABLE 0xFFFFFFFF


#define OSPC_ERR_TNPROBE_ERROR  0x01
#define OSPC_ERR_TNPROBE_NORMAL     0x00

#define OSPC_TNPROBE_MAXTIMER   0xFFFF
#define OSPC_TNPROBE_MAXWAIT    500
#define OSPC_TNPROBE_TIMERMOD   10000000
#define OSPC_TNPROBE_TIMERMULT  1000

#ifdef __cplusplus
extern "C" 
{
#endif

    /* function prototypes */

    int 
    OSPPTNProbe(OSPT_TN_PROBE *pProbeList, unsigned uNumHosts, 
                       unsigned uMaxWait);

    int                                /* 0 - maxFD ; !0 - error code */
    OSPPTNProbeInit(
            OSPT_TN_PROBE *pProbeList,  /* list to initialize */
            unsigned *lpNumHosts,   /* number of hosts */
            fd_set   *pSocketSet,   /* socket set */
            int      *nMinFd        /*pointer to min val for socket fds */
    ); 

    int                             /* 0 - socket descriptor; !0 - error code */
    OSPPTNProbeConnect(
            OSPTIPADDR ipAddr);     /* remote address to connect */


    void                                /* no return values */
    OSPPTNProbeCleanup(
            OSPT_TN_PROBE *pProbeList,  /* list to cleanup */
            unsigned  uNumHosts);       /* number of hosts */


    void                                /* no return value */
    OSPPTNProbeEcho(
        fd_set   *pSockets,         /* sockets to probe */
        OSPT_TN_PROBE *pProbeList,  /* place to store results */
        unsigned  uNumHosts,        /* number of hosts to probe */
        unsigned  uMaxWait,         /* max ms to wait */
        int       nMaxFd,           /* max fd number for sockets */
        int       nMinFd            /* min fd number for sockets */
    );

    int 
    OSPPTNProbeCompare( 
        const void *, 
        const void *);

    unsigned long 
    OSPPTNProbeTimerMS(
        void);

    void
    OSPPTNProbePruneList(
        OSPTLIST *,
        OSPT_TN_PROBE *,
        unsigned,
        unsigned *);

    void         
    OSPPTNProbeArrangeList(
        OSPTLIST *,
        OSPT_TN_PROBE *,
        unsigned);

#ifdef __cplusplus
}
#endif

#endif