This file is indexed.

/usr/include/odil/EchoSCP.h is in libodil-dev 0.8.0-4build1.

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
/*************************************************************************
 * odil - Copyright (C) Universite de Strasbourg
 * Distributed under the terms of the CeCILL-B license, as published by
 * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
 * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
 * for details.
 ************************************************************************/

#ifndef _1a61d976_ba12_4dba_af34_67f064d38506
#define _1a61d976_ba12_4dba_af34_67f064d38506

#include <functional>

#include "odil/Association.h"
#include "odil/odil.h"
#include "odil/SCP.h"
#include "odil/Value.h"
#include "odil/message/CEchoRequest.h"
#include "odil/message/Message.h"

namespace odil
{

/// @brief SCP for C-Echo services.
class ODIL_API EchoSCP: public SCP
{
public:
    /**
     * @brief Callback called when a request is received, shall throw an
     * SCP::Exception on error.
     */
    typedef std::function<Value::Integer(message::CEchoRequest const &)> Callback;

    /// @brief Constructor.
    EchoSCP(Association & association);

    /// @brief Constructor.
    EchoSCP(Association & association, Callback const & callback);

    /// @brief Destructor.
    virtual ~EchoSCP();

    /// @brief Return the callback.
    Callback const & get_callback() const;

    /// @brief Set the callback.
    void set_callback(Callback const & callback);

    /// @brief Process a C-Echo request.
    virtual void operator()(message::Message const & message);

    /// @brief Process a C-Echo request.
    virtual void operator()(message::Message && message);

private:
    Callback _callback;
    void operator()(message::CEchoRequest const & request);
};

}

#endif // _1a61d976_ba12_4dba_af34_67f064d38506