Updated.
[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 2 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, write to the Free Software
19  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
20  * USA.
21  */
22 #ifndef G10_STATUS_H
23 #define G10_STATUS_H
24
25 #define STATUS_ENTER     1
26 #define STATUS_LEAVE     2
27 #define STATUS_ABORT     3
28
29 #define STATUS_GOODSIG   4
30 #define STATUS_BADSIG    5
31 #define STATUS_ERRSIG    6
32
33 #define STATUS_BADARMOR  7
34
35 #define STATUS_RSA_OR_IDEA 8
36 #define STATUS_KEYEXPIRED  9
37 #define STATUS_KEYREVOKED  10
38
39 #define STATUS_TRUST_UNDEFINED 11
40 #define STATUS_TRUST_NEVER     12
41 #define STATUS_TRUST_MARGINAL  13
42 #define STATUS_TRUST_FULLY     14
43 #define STATUS_TRUST_ULTIMATE  15
44
45 #define STATUS_SHM_INFO        16
46 #define STATUS_SHM_GET         17
47 #define STATUS_SHM_GET_BOOL    18
48 #define STATUS_SHM_GET_HIDDEN  19
49
50 #define STATUS_NEED_PASSPHRASE 20
51 #define STATUS_VALIDSIG        21
52 #define STATUS_SIG_ID          22
53 #define STATUS_ENC_TO          23
54 #define STATUS_NODATA          24
55 #define STATUS_BAD_PASSPHRASE  25
56 #define STATUS_NO_PUBKEY       26
57 #define STATUS_NO_SECKEY       27
58 #define STATUS_NEED_PASSPHRASE_SYM 28
59 #define STATUS_DECRYPTION_FAILED 29
60 #define STATUS_DECRYPTION_OKAY   30
61 #define STATUS_MISSING_PASSPHRASE 31
62 #define STATUS_GOOD_PASSPHRASE  32
63 #define STATUS_GOODMDC          33
64 #define STATUS_BADMDC           34
65 #define STATUS_ERRMDC           35
66 #define STATUS_IMPORTED         36
67 #define STATUS_IMPORT_RES       37
68 #define STATUS_FILE_START       38
69 #define STATUS_FILE_DONE        39
70 #define STATUS_FILE_ERROR       40
71
72 #define STATUS_BEGIN_DECRYPTION 41
73 #define STATUS_END_DECRYPTION   42
74 #define STATUS_BEGIN_ENCRYPTION 43
75 #define STATUS_END_ENCRYPTION   44
76
77 #define STATUS_DELETE_PROBLEM   45
78 #define STATUS_GET_BOOL         46
79 #define STATUS_GET_LINE         47
80 #define STATUS_GET_HIDDEN       48
81 #define STATUS_GOT_IT           49
82 #define STATUS_PROGRESS         50
83 #define STATUS_SIG_CREATED      51
84 #define STATUS_SESSION_KEY      52
85 #define STATUS_NOTATION_NAME    53
86 #define STATUS_NOTATION_DATA    54
87 #define STATUS_POLICY_URL       55
88 #define STATUS_BEGIN_STREAM     56
89 #define STATUS_END_STREAM       57
90 #define STATUS_KEY_CREATED      58
91 #define STATUS_USERID_HINT      59
92 #define STATUS_UNEXPECTED       60
93 #define STATUS_INV_RECP         61
94 #define STATUS_NO_RECP          62
95 #define STATUS_ALREADY_SIGNED   63
96 #define STATUS_SIGEXPIRED       64
97 #define STATUS_EXPSIG           65
98 #define STATUS_EXPKEYSIG        66
99 #define STATUS_ATTRIBUTE        67
100 #define STATUS_IMPORT_OK        68
101 #define STATUS_IMPORT_CHECK     69
102 #define STATUS_REVKEYSIG        70
103 #define STATUS_CARDCTRL         71
104 #define STATUS_NEWSIG           72
105 #define STATUS_PLAINTEXT        73
106 #define STATUS_PLAINTEXT_LENGTH 74
107 #define STATUS_KEY_NOT_CREATED  75
108 #define STATUS_NEED_PASSPHRASE_PIN 76
109 #define STATUS_SIG_SUBPACKET    77
110
111 /* Extra status codes for certain smartcard operations.  Primary
112    useful to double check that change PIN worked as expected.  */
113 #define STATUS_SC_OP_FAILURE    79
114 #define STATUS_SC_OP_SUCCESS    80
115
116 #define STATUS_BACKUP_KEY_CREATED 81
117
118 #define STATUS_PKA_TRUST_BAD    82
119 #define STATUS_PKA_TRUST_GOOD   83
120
121 #define STATUS_BEGIN_SIGNING    84
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*/