This file is indexed.

/usr/include/signon-extension/SignOn/extension-interface.h is in signond-dev 8.56+14.04.20140307-0ubuntu2.

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
/*
 * This file is part of signon
 *
 * Copyright (C) 2010-2011 Nokia Corporation.
 * Copyright (C) 2011 Canonical Ltd.
 * Copyright (C) 2011 Intel Corporation.
 *
 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
 * Contact: Jussi Laako <jussi.laako@linux.intel.com>
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public License
 * version 2.1 as published by the Free Software Foundation.
 *
 * This library is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA
 */
/*!
 * @copyright Copyright (C) 2009-2011 Nokia Corporation.
 * @license LGPL
 */

#ifndef SIGNON_EXTENSION_INTERFACE_H
#define SIGNON_EXTENSION_INTERFACE_H

#include <SignOn/export.h>

#include <QObject>
#include <QtPlugin>

namespace SignOn {

class AbstractCryptoManager;
class AbstractKeyAuthorizer;
class AbstractKeyManager;
class AbstractSecretsStorage;
class KeyHandler;
class AbstractAccessControlManager;

/*!
 * @class ExtensionInterface.
 * Interface definition for signond extensions.
 */
class SIGNON_EXPORT ExtensionInterface
{
public:
    virtual ~ExtensionInterface() {}

    /*!
     * Gets the KeyManager object.
     *
     * @return A key manager object, or 0 if none is provided by this plugin
     */
    virtual AbstractKeyManager *keyManager(QObject *parent = 0) const;
};

/*!
 * @class ExtensionInterface2.
 * Interface definition for signond extensions.
 */
class SIGNON_EXPORT ExtensionInterface2: public ExtensionInterface
{
public:
    virtual ~ExtensionInterface2() {}

    /*!
     * Gets the KeyAuthorizer object.
     *
     * @return A key authorizer object, or 0 if none is provided by this plugin
     */
    virtual AbstractKeyAuthorizer *keyAuthorizer(KeyHandler *keyHandler,
                                                 QObject *parent = 0) const;
};

/*!
 * @class ExtensionInterface3.
 * Interface definition for signond extensions.
 */
class SIGNON_EXPORT ExtensionInterface3: public ExtensionInterface2
{
public:
    virtual ~ExtensionInterface3() {}

    /*!
     * Gets the CryptoManager object, which will be used to setup the file
     * system for the credentials storage.
     * This object is instantiated only if the value of the "CryptoManager"
     * setting in the signond configuration matches the plugin's
     * QObject::objectName().
     *
     * @return A CryptoManager object, or 0 if none is provided by this plugin
     */
    virtual AbstractCryptoManager *cryptoManager(QObject *parent = 0) const;

    /*!
     * Gets the SecretsStorage object, which is used to save and load the
     * user's secrets, as well as authentication plugins' data.
     * This object is instantiated only if the value of the "SecretsStorage"
     * setting in the signond configuration matches the plugin's
     * QObject::objectName().
     *
     * @return A SecretsStorage object, or 0 if none is provided by this plugin.
     */
    virtual AbstractSecretsStorage *secretsStorage(QObject *parent = 0) const;

    /*!
     * Gets the AbstractAccessControlManager object, which will be used to
     * check accesses to the credential database.
     * This object is instantiated only if the value of the
     * "AccessControlManager" setting in the signond configuration matches the
     * plugin's QObject::objectName().
     *
     * @return An AbstractAccessControlManager object, or 0 if none is provided
     * by this plugin
     */
    virtual AbstractAccessControlManager *accessControlManager(
                                                    QObject *parent = 0) const;
};

} // namespace

Q_DECLARE_INTERFACE(SignOn::ExtensionInterface,
                    "com.nokia.SingleSignOn.ExtensionInterface/1.0")
Q_DECLARE_INTERFACE(SignOn::ExtensionInterface2,
                    "com.nokia.SingleSignOn.ExtensionInterface/2.0")
Q_DECLARE_INTERFACE(SignOn::ExtensionInterface3,
                    "com.nokia.SingleSignOn.ExtensionInterface/3.0")

#endif // SIGNON_EXTENSION_INTERFACE_H