This file is indexed.

/usr/include/evolution-data-server/libedataserverui/e-credentials-prompter.h is in libedataserverui1.2-dev 3.18.5-1ubuntu1.

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
/*
 * Copyright (C) 2015 Red Hat, Inc. (www.redhat.com)
 *
 * This library is free software: you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License 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, see <http://www.gnu.org/licenses/>.
 *
 */

#if !defined (__LIBEDATASERVERUI_H_INSIDE__) && !defined (LIBEDATASERVERUI_COMPILATION)
#error "Only <libedataserverui/libedataserverui.h> should be included directly."
#endif

#ifndef E_CREDENTIALS_PROMPTER_H
#define E_CREDENTIALS_PROMPTER_H

#include <glib.h>
#include <glib-object.h>
#include <gio/gio.h>

#include <gtk/gtk.h>

#include <libedataserver/libedataserver.h>

#include <libedataserverui/e-credentials-prompter-impl.h>

/* Standard GObject macros */
#define E_TYPE_CREDENTIALS_PROMPTER \
	(e_credentials_prompter_get_type ())
#define E_CREDENTIALS_PROMPTER(obj) \
	(G_TYPE_CHECK_INSTANCE_CAST \
	((obj), E_TYPE_CREDENTIALS_PROMPTER, ECredentialsPrompter))
#define E_CREDENTIALS_PROMPTER_CLASS(cls) \
	(G_TYPE_CHECK_CLASS_CAST \
	((cls), E_TYPE_CREDENTIALS_PROMPTER, ECredentialsPrompterClass))
#define E_IS_CREDENTIALS_PROMPTER(obj) \
	(G_TYPE_CHECK_INSTANCE_TYPE \
	((obj), E_TYPE_CREDENTIALS_PROMPTER))
#define E_IS_CREDENTIALS_PROMPTER_CLASS(cls) \
	(G_TYPE_CHECK_CLASS_TYPE \
	((cls), E_TYPE_CREDENTIALS_PROMPTER))
#define E_CREDENTIALS_PROMPTER_GET_CLASS(obj) \
	(G_TYPE_INSTANCE_GET_CLASS \
	((obj), E_TYPE_CREDENTIALS_PROMPTER, ECredentialsPrompterClass))

G_BEGIN_DECLS

typedef struct _ECredentialsPrompter ECredentialsPrompter;
typedef struct _ECredentialsPrompterClass ECredentialsPrompterClass;
typedef struct _ECredentialsPrompterPrivate ECredentialsPrompterPrivate;

/**
 * ECredentialsPrompterPromptFlags:
 * @E_CREDENTIALS_PROMPTER_PROMPT_FLAG_NONE:
 *   No flag is set.
 * @E_CREDENTIALS_PROMPTER_PROMPT_FLAG_ALLOW_SOURCE_SAVE:
 *   If set, any source changes during the credentials prompts, like
 *   the "remember-password" or user name changes, will be automatically
 *   stored in the source (written on the disk).
 * @E_CREDENTIALS_PROMPTER_PROMPT_FLAG_ALLOW_STORED_CREDENTIALS:
 *   If set, the stored credentials will be returned first. If there are no
 *   credentials saved, then the user will be asked. Any credentials
 *   reprompt should not have set this flag.
 *
 * An #ECredentialsPrompter prompt flags, influencing behaviour
 * of the e_credentials_prompter_prompt().
 *
 * Since: 3.16
 **/
typedef enum {
	E_CREDENTIALS_PROMPTER_PROMPT_FLAG_NONE				= 0,
	E_CREDENTIALS_PROMPTER_PROMPT_FLAG_ALLOW_SOURCE_SAVE		= 1 << 0,
	E_CREDENTIALS_PROMPTER_PROMPT_FLAG_ALLOW_STORED_CREDENTIALS	= 1 << 1
} ECredentialsPrompterPromptFlags;

/**
 * ECredentialsPrompterLoopPromptFunc:
 * @prompter: an #ECredentialsPrompter
 * @source: an #ESource, as passed to e_credentials_prompter_loop_prompt_sync()
 * @credentials: an #ENamedParameters with provided credentials
 * @out_authenticated: (out): set to %TRUE, when the authentication was successful
 * @user_data: user data, as passed to e_credentials_prompter_loop_prompt_sync()
 * @cancellable: a #GCancellable, as passed to e_credentials_prompter_loop_prompt_sync()
 * @error: a #GError, to get an error, or %NULL
 *
 * Returns: %TRUE to continue the loop (reprompt credentials), unless @authenticated is
 *   also set to %TRUE, or %FALSE on error, as an indication that the loop should
 *   be terminated.
 **/
typedef gboolean (*ECredentialsPrompterLoopPromptFunc) (ECredentialsPrompter *prompter,
							ESource *source,
							const ENamedParameters *credentials,
							gboolean *out_authenticated,
							gpointer user_data,
							GCancellable *cancellable,
							GError **error);
/**
 * ECredentialsPrompter:
 *
 * Contains only private data that should be read and manipulated using the
 * functions below.
 *
 * Since: 3.16
 **/
struct _ECredentialsPrompter {
	GObject parent;
	ECredentialsPrompterPrivate *priv;
};

struct _ECredentialsPrompterClass {
	GObjectClass parent_class;

	/* Signals */
	GtkWindow *	(*get_dialog_parent)	(ECredentialsPrompter *prompter);
};

GType		e_credentials_prompter_get_type	(void) G_GNUC_CONST;
ECredentialsPrompter *
		e_credentials_prompter_new	(ESourceRegistry *registry);
ESourceRegistry *
		e_credentials_prompter_get_registry
						(ECredentialsPrompter *prompter);
ESourceCredentialsProvider *
		e_credentials_prompter_get_provider
						(ECredentialsPrompter *prompter);
gboolean	e_credentials_prompter_get_auto_prompt
						(ECredentialsPrompter *prompter);
void		e_credentials_prompter_set_auto_prompt
						(ECredentialsPrompter *prompter,
						 gboolean auto_prompt);
void		e_credentials_prompter_set_auto_prompt_disabled_for
						(ECredentialsPrompter *prompter,
						 ESource *source,
						 gboolean is_disabled);
gboolean	e_credentials_prompter_get_auto_prompt_disabled_for
						(ECredentialsPrompter *prompter,
						 ESource *source);
GtkWindow *	e_credentials_prompter_get_dialog_parent
						(ECredentialsPrompter *prompter);
gboolean	e_credentials_prompter_register_impl
						(ECredentialsPrompter *prompter,
						 const gchar *authentication_method,
						 ECredentialsPrompterImpl *prompter_impl);
void		e_credentials_prompter_unregister_impl
						(ECredentialsPrompter *prompter,
						 const gchar *authentication_method,
						 ECredentialsPrompterImpl *prompter_impl);
void		e_credentials_prompter_process_awaiting_credentials
						(ECredentialsPrompter *prompter);
gboolean	e_credentials_prompter_process_source
						(ECredentialsPrompter *prompter,
						 ESource *source);
void		e_credentials_prompter_prompt	(ECredentialsPrompter *prompter,
						 ESource *source,
						 const gchar *error_text,
						 ECredentialsPrompterPromptFlags flags,
						 GAsyncReadyCallback callback,
						 gpointer user_data);
gboolean	e_credentials_prompter_prompt_finish
						(ECredentialsPrompter *prompter,
						 GAsyncResult *result,
						 ESource **out_source,
						 ENamedParameters **out_credentials,
						 GError **error);
void		e_credentials_prompter_complete_prompt_call
						(ECredentialsPrompter *prompter,
						 GSimpleAsyncResult *async_result,
						 ESource *source,
						 const ENamedParameters *credentials,
						 const GError *error);
gboolean	e_credentials_prompter_loop_prompt_sync
						(ECredentialsPrompter *prompter,
						 ESource *source,
						 ECredentialsPrompterPromptFlags flags,
						 ECredentialsPrompterLoopPromptFunc func,
						 gpointer user_data,
						 GCancellable *cancellable,
						 GError **error);
G_END_DECLS

#endif /* E_CREDENTIALS_PROMPTER_H */