Switched to GPLv3.
[gnupg.git] / g10 / status.h
1 /* status.h
2  * Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003,
3  *               2004 Free Software Foundation, Inc.
4  *
5  * This file is part of GnuPG.
6  *
7  * GnuPG is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * GnuPG is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, see <http://www.gnu.org/licenses/>.
19  */
20 #ifndef G10_STATUS_H
21 #define G10_STATUS_H
22
23 #define STATUS_ENTER     1
24 #define STATUS_LEAVE     2
25 #define STATUS_ABORT     3
26
27 #define STATUS_GOODSIG   4
28 #define STATUS_BADSIG    5
29 #define STATUS_ERRSIG    6
30
31 #define STATUS_BADARMOR  7
32
33 #define STATUS_RSA_OR_IDEA 8
34 #define STATUS_KEYEXPIRED  9
35 #define STATUS_KEYREVOKED  10
36
37 #define STATUS_TRUST_UNDEFINED 11
38 #define STATUS_TRUST_NEVER     12
39 #define STATUS_TRUST_MARGINAL  13
40 #define STATUS_TRUST_FULLY     14
41 #define STATUS_TRUST_ULTIMATE  15
42
43 #define STATUS_SHM_INFO        16
44 #define STATUS_SHM_GET         17
45 #define STATUS_SHM_GET_BOOL    18
46 #define STATUS_SHM_GET_HIDDEN  19
47
48 #define STATUS_NEED_PASSPHRASE 20
49 #define STATUS_VALIDSIG        21
50 #define STATUS_SIG_ID          22
51 #define STATUS_ENC_TO          23
52 #define STATUS_NODATA          24
53 #define STATUS_BAD_PASSPHRASE  25
54 #define STATUS_NO_PUBKEY       26
55 #define STATUS_NO_SECKEY       27
56 #define STATUS_NEED_PASSPHRASE_SYM 28
57 #define STATUS_DECRYPTION_FAILED 29
58 #define STATUS_DECRYPTION_OKAY   30
59 #define STATUS_MISSING_PASSPHRASE 31
60 #define STATUS_GOOD_PASSPHRASE  32
61 #define STATUS_GOODMDC          33
62 #define STATUS_BADMDC           34
63 #define STATUS_ERRMDC           35
64 #define STATUS_IMPORTED         36
65 #define STATUS_IMPORT_RES       37
66 #define STATUS_FILE_START       38
67 #define STATUS_FILE_DONE        39
68 #define STATUS_FILE_ERROR       40
69
70 #define STATUS_BEGIN_DECRYPTION 41
71 #define STATUS_END_DECRYPTION   42
72 #define STATUS_BEGIN_ENCRYPTION 43
73 #define STATUS_END_ENCRYPTION   44
74
75 #define STATUS_DELETE_PROBLEM   45
76 #define STATUS_GET_BOOL         46
77 #define STATUS_GET_LINE         47
78 #define STATUS_GET_HIDDEN       48
79 #define STATUS_GOT_IT           49
80 #define STATUS_PROGRESS         50
81 #define STATUS_SIG_CREATED      51
82 #define STATUS_SESSION_KEY      52
83 #define STATUS_NOTATION_NAME    53
84 #define STATUS_NOTATION_DATA    54
85 #define STATUS_POLICY_URL       55
86 #define STATUS_BEGIN_STREAM     56
87 #define STATUS_END_STREAM       57
88 #define STATUS_KEY_CREATED      58
89 #define STATUS_USERID_HINT      59
90 #define STATUS_UNEXPECTED       60
91 #define STATUS_INV_RECP         61
92 #define STATUS_NO_RECP          62
93 #define STATUS_ALREADY_SIGNED   63
94 #define STATUS_SIGEXPIRED       64
95 #define STATUS_EXPSIG           65
96 #define STATUS_EXPKEYSIG        66
97 #define STATUS_ATTRIBUTE        67
98 #define STATUS_IMPORT_OK        68
99 #define STATUS_IMPORT_CHECK     69
100 #define STATUS_REVKEYSIG        70
101 #define STATUS_CARDCTRL         71
102 #define STATUS_NEWSIG           72
103 #define STATUS_PLAINTEXT        73
104 #define STATUS_PLAINTEXT_LENGTH 74
105 #define STATUS_KEY_NOT_CREATED  75
106 #define STATUS_NEED_PASSPHRASE_PIN 76
107 #define STATUS_SIG_SUBPACKET    77
108
109 /* Extra status codes for certain smartcard operations.  Primary
110    useful to double check that change PIN worked as expected.  */
111 #define STATUS_SC_OP_FAILURE    79
112 #define STATUS_SC_OP_SUCCESS    80
113
114 #define STATUS_BACKUP_KEY_CREATED 81
115
116 #define STATUS_PKA_TRUST_BAD    82
117 #define STATUS_PKA_TRUST_GOOD   83
118
119 #define STATUS_BEGIN_SIGNING    84
120
121 #define STATUS_ERROR  85
122
123
124 /*-- status.c --*/
125 void set_status_fd ( int fd );
126 int  is_status_enabled ( void );
127 void write_status ( int no );
128 void write_status_text ( int no, const char *text );
129 void write_status_buffer ( int no,
130                            const char *buffer, size_t len, int wrap );
131 void write_status_text_and_buffer ( int no, const char *text,
132                                     const char *buffer, size_t len, int wrap );
133
134 #ifdef USE_SHM_COPROCESSING
135   void init_shm_coprocessing ( ulong requested_shm_size, int lock_mem );
136 #endif /*USE_SHM_COPROCESSING*/
137
138 int cpr_enabled(void);
139 char *cpr_get( const char *keyword, const char *prompt );
140 char *cpr_get_no_help( const char *keyword, const char *prompt );
141 char *cpr_get_utf8( const char *keyword, const char *prompt );
142 char *cpr_get_hidden( const char *keyword, const char *prompt );
143 void cpr_kill_prompt(void);
144 int  cpr_get_answer_is_yes( const char *keyword, const char *prompt );
145 int  cpr_get_answer_yes_no_quit( const char *keyword, const char *prompt );
146 int  cpr_get_answer_okay_cancel (const char *keyword,
147                                  const char *prompt,
148                                  int def_answer);
149
150 #endif /*G10_STATUS_H*/