This file is indexed.

/usr/include/gwenhywfar4/gwenhywfar/cgui.h is in libgwenhywfar60-dev 4.15.2beta-2build1.

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
/***************************************************************************
 begin       : Mon Mar 01 2004
 copyright   : (C) 2004-2008 by Martin Preuss
 email       : martin@libchipcard.de

 ***************************************************************************
 *          Please see toplevel file COPYING for license details           *
 ***************************************************************************/


#ifndef GWEN_GUI_CGUI_H
#define GWEN_GUI_CGUI_H

#include <gwenhywfar/gui.h>


#ifdef __cplusplus
extern "C" {
#endif

/** Force storing entered passwords in permanent password storage */
#define GWEN_CGUI_FLAGS_PERMPASSWORDS     0x00010000


/** @defgroup MOD_GUI_CGUI GUI Implementation for the Console
 * @ingroup MOD_GUI
 *
 * This is an implementation of GWEN_GUI for the console. It supports
 * interactive and non-interactive mode, provides a cache for passwords/pins
 * and TLS certificates. It converts UTF8 messages into other character sets
 * if requested (e.g. for consoles which do not support UTF8).
 */
/*@{*/

/** Constructor
 *
 */
GWENHYWFAR_API
GWEN_GUI *GWEN_Gui_CGui_new(void);


#ifndef NO_DEPRECATED_SYMBOLS
/** @name Character Set
 *
 * All messages and texts can be converted from UTF8 automatically.
 * This needs the name of the destination character set.
 * See output of <i>iconv --list</i> for a list of supported
 * character sets.
 */
/*@{*/
GWENHYWFAR_API DEPRECATED
const char *GWEN_Gui_CGui_GetCharSet(const GWEN_GUI *gui);

GWENHYWFAR_API DEPRECATED
void GWEN_Gui_CGui_SetCharSet(GWEN_GUI *gui, const char *s);

/*@}*/


/** @name Interactive/Non-interactive Mode
 *
 * This implementation can be used in interactive or non-interactive mode.
 * In non-interactive mode all input requests which can not be asked
 * automatically will return an error.
 * However, most questions concern input of pins and password, and for those
 * the password cache can be used. Another frequent source for input requests
 * is the acknowledging of TLS certificates which can also be handled
 * automatically by using the certificate cache (see below).
 *
 * Also, in non-interactive mode all calls to GWEN_GUI_MessageBox will be
 * handled different. If the severity of a message is
 * GWEN_GUI_MSG_FLAGS_SEVERITY_DANGEROUS or higher an error is returned.
 * Otherwise the default result (as indicated by the arguments of
 * @ref GWEN_GUI_MessageBox) is returned instead.
 *
 * These settings together allow for a non-interactive use.
 */
/*@{*/
GWENHYWFAR_API DEPRECATED
int GWEN_Gui_CGui_GetIsNonInteractive(const GWEN_GUI *gui);

GWENHYWFAR_API DEPRECATED
void GWEN_Gui_CGui_SetIsNonInteractive(GWEN_GUI *gui, int i);
/*@}*/


/** @name Password Cache
 *
 * This implementation provides a password cache. This will be
 * consulted upon @ref GWEN_Gui_GetPassword. The implementation of
 * @ref GWEN_Gui_SetPasswordStatus also accesses this password cache.
 *
 * Normally this cache is filled from password files (like those
 * specified via option <i>-P</i> of <i>aqbanking-cli</i>).
 */
/**@{*/
/**
 * Set the password DB. Takes over the given DB.
 * @param gui GUI object
 * @param dbPasswords password cache
 * @param persistent if !=0 then the passwords come from a password file
 * and a request to clear the password cache will be ignored.
 */
GWENHYWFAR_API DEPRECATED
void GWEN_Gui_CGui_SetPasswordDb(GWEN_GUI *gui,
                                 GWEN_DB_NODE *dbPasswords,
                                 int persistent);

/**
 * Returns a pointer to the internally used password cache. The GUI
 * object remains the owner of the object returned (if any).
 */
GWENHYWFAR_API DEPRECATED
GWEN_DB_NODE *GWEN_Gui_CGui_GetPasswordDb(const GWEN_GUI *gui);
/*@}*/
#endif	// ifndef NO_DEPRECATED_SYMBOLS


/** @name TLS Certificate Cache
 *
 * This implementation provides a certificate cache which takes
 * into account the fingerprint of a certificate offered and the
 * status text. This combination is hashed and the resulting hash is
 * the key into the internal cert db.
 *
 * Most AqBanking applications nowadays use the shared application data
 * "certs" as returned by AB_Banking_GetSharedData() to read and write
 * the certificate DB.
 */
/**@{*/
/**
 * Set the certificate DB. Takes over the given DB.
 */
GWENHYWFAR_API
void GWEN_Gui_CGui_SetCertDb(GWEN_GUI *gui, GWEN_DB_NODE *dbCerts);

/**
 * Returns a pointer to the internal certificate cache. The GUI
 * object remains the owner of the object returned (if any).
 */
GWENHYWFAR_API
GWEN_DB_NODE *GWEN_Gui_CGui_GetCertDb(const GWEN_GUI *gui);

#ifndef NO_DEPRECATED_SYMBOLS
/**
 * In non-interactive mode only known certificates are accepted.
 * If the parameter i unequals zero new certs are also accepted if they
 * are valid (which means signed by a known and trusted authority, not expired
 * etc).
 * Invalid certificates are always rejected in non-interactive mode.
 */
GWENHYWFAR_API DEPRECATED
void GWEN_Gui_CGui_SetAcceptAllValidCerts(GWEN_GUI *gui, int i);

/**
 * See @ref GWEN_Gui_CGui_SetAcceptAllValidCerts
 */
GWENHYWFAR_API DEPRECATED
int GWEN_Gui_CGui_GetAcceptAllValidCerts(const GWEN_GUI *gui);
#endif	// ifndef NO_DEPRECATED_SYMBOLS

/*@}*/


/*@}*/ /* defgroup */


#ifdef __cplusplus
}
#endif


#endif