Added new directory common to enable sharing of some code and error
[gnupg.git] / common / errors.h
1 /* errors.h - Globally used error codes
2  *      Copyright (C) 2001 Free Software Foundation, Inc.
3  *
4  * This file is part of GnuPG.
5  *
6  * GnuPG is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * GnuPG is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
19  */
20
21 #ifndef GNUPG_COMMON_ERRORS_H
22 #define GNUPG_COMMON_ERRORS_H
23
24 #include "util.h"
25
26 /* Error numbers */
27 enum {
28   GNUPG_EOF = -1,
29   GNUPG_No_Error = 0,
30   GNUPG_General_Error = 1, 
31   GNUPG_Out_Of_Core = 2,
32   GNUPG_Invalid_Value = 3,
33   GNUPG_IO_Error = 4,
34   GNUPG_Resource_Limit = 5,
35   GNUPG_Internal_Error = 6,
36   GNUPG_Bad_Certificate = 7,
37   GNUPG_Bad_Certificate_Path = 8,
38   GNUPG_Missing_Certificate = 9,
39   GNUPG_No_Data = 10,
40   GNUPG_Bad_Signature = 11,
41   GNUPG_Not_Implemented = 12,
42   GNUPG_Conflict = 13,
43   GNUPG_Bug = 14
44 };
45
46 /* Status codes - fixme: should go into another file */
47 enum {
48   STATUS_ENTER,
49   STATUS_LEAVE,
50   STATUS_ABORT,
51   STATUS_GOODSIG,
52   STATUS_BADSIG,
53   STATUS_ERRSIG,
54   STATUS_BADARMOR,
55   STATUS_RSA_OR_IDEA,
56   STATUS_SIGEXPIRED,
57   STATUS_KEYREVOKED,
58   STATUS_TRUST_UNDEFINED,
59   STATUS_TRUST_NEVER,
60   STATUS_TRUST_MARGINAL,
61   STATUS_TRUST_FULLY,
62   STATUS_TRUST_ULTIMATE,
63   
64   STATUS_SHM_INFO,
65   STATUS_SHM_GET,
66   STATUS_SHM_GET_BOOL,
67   STATUS_SHM_GET_HIDDEN,
68   
69   STATUS_NEED_PASSPHRASE,
70   STATUS_VALIDSIG,
71   STATUS_SIG_ID,
72   STATUS_ENC_TO,
73   STATUS_NODATA,
74   STATUS_BAD_PASSPHRASE,
75   STATUS_NO_PUBKEY,
76   STATUS_NO_SECKEY,
77   STATUS_NEED_PASSPHRASE_SYM,
78   STATUS_DECRYPTION_FAILED,
79   STATUS_DECRYPTION_OKAY,
80   STATUS_MISSING_PASSPHRASE,
81   STATUS_GOOD_PASSPHRASE,
82   STATUS_GOODMDC,
83   STATUS_BADMDC,
84   STATUS_ERRMDC,
85   STATUS_IMPORTED,
86   STATUS_IMPORT_RES,
87   STATUS_FILE_START,
88   STATUS_FILE_DONE,
89   STATUS_FILE_ERROR,
90   
91   STATUS_BEGIN_DECRYPTION,
92   STATUS_END_DECRYPTION,
93   STATUS_BEGIN_ENCRYPTION,
94   STATUS_END_ENCRYPTION,
95   
96   STATUS_DELETE_PROBLEM,
97   STATUS_GET_BOOL,
98   STATUS_GET_LINE,
99   STATUS_GET_HIDDEN,
100   STATUS_GOT_IT,
101   STATUS_PROGRESS,
102   STATUS_SIG_CREATED,
103   STATUS_SESSION_KEY,
104   STATUS_NOTATION_NAME,
105   STATUS_NOTATION_DATA,
106   STATUS_POLICY_URL,
107   STATUS_BEGIN_STREAM,
108   STATUS_END_STREAM,
109   STATUS_KEY_CREATED,
110   STATUS_USERID_HIN,
111   STATUS_UNEXPECTED,
112   STATUS_INV_RECP,
113   STATUS_NO_RECP,
114   STATUS_ALREADY_SIGNED,
115 };
116
117
118 /*-- errors.c (built) --*/
119 const char *gnupg_strerror (int err);
120
121
122 #endif /*GNUPG_COMMON_ERRORS_H*/