5a27ce968eb4e3f69c768ea2a3ff77d089c929c8
[gpgme.git] / gpgme / rungpg.h
1 /* rungpg.h -  gpg calling functions
2  *      Copyright (C) 2000 Werner Koch (dd9jn)
3  *
4  * This file is part of GPGME.
5  *
6  * GPGME 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  * GPGME 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 RUNGPG_H
22 #define RUNGPG_H
23
24 #include "types.h"
25
26
27 typedef enum  {
28     STATUS_EOF ,
29     /* mkstatus starts here */
30     STATUS_ENTER              , 
31     STATUS_LEAVE              ,
32     STATUS_ABORT              ,
33     STATUS_GOODSIG            ,
34     STATUS_BADSIG             ,
35     STATUS_ERRSIG             ,
36     STATUS_BADARMOR           ,
37     STATUS_RSA_OR_IDEA        ,
38     STATUS_SIGEXPIRED         ,
39     STATUS_KEYREVOKED         ,
40     STATUS_TRUST_UNDEFINED    ,
41     STATUS_TRUST_NEVER        ,
42     STATUS_TRUST_MARGINAL     ,
43     STATUS_TRUST_FULLY        ,
44     STATUS_TRUST_ULTIMATE     ,
45     STATUS_SHM_INFO           ,
46     STATUS_SHM_GET            ,
47     STATUS_SHM_GET_BOOL       ,
48     STATUS_SHM_GET_HIDDEN     ,
49     STATUS_NEED_PASSPHRASE    ,
50     STATUS_VALIDSIG           ,
51     STATUS_SIG_ID             ,
52     STATUS_ENC_TO             ,
53     STATUS_NODATA             ,
54     STATUS_BAD_PASSPHRASE     ,
55     STATUS_NO_PUBKEY          ,
56     STATUS_NO_SECKEY          ,
57     STATUS_NEED_PASSPHRASE_SYM,
58     STATUS_DECRYPTION_FAILED  ,
59     STATUS_DECRYPTION_OKAY    ,
60     STATUS_MISSING_PASSPHRASE ,
61     STATUS_GOOD_PASSPHRASE    ,
62     STATUS_GOODMDC            ,
63     STATUS_BADMDC             ,
64     STATUS_ERRMDC             ,
65     STATUS_IMPORTED           ,
66     STATUS_IMPORT_RES         ,
67     STATUS_FILE_START         ,
68     STATUS_FILE_DONE          ,
69     STATUS_FILE_ERROR         ,
70     STATUS_BEGIN_DECRYPTION   ,
71     STATUS_END_DECRYPTION     ,
72     STATUS_BEGIN_ENCRYPTION   ,
73     STATUS_END_ENCRYPTION     ,
74     STATUS_DELETE_PROBLEM     ,
75     STATUS_GET_BOOL           ,
76     STATUS_GET_LINE           ,
77     STATUS_GET_HIDDEN         ,
78     STATUS_GOT_IT             ,
79     STATUS_PROGRESS           ,
80     STATUS_SIG_CREATED        ,
81     STATUS_SESSION_KEY        
82 } GpgStatusCode;
83
84 typedef void (*GpgStatusHandler)( GpgmeCtx, GpgStatusCode code, char *args ); 
85
86 GpgmeError _gpgme_gpg_new_object ( GpgObject *r_gpg );
87 void       _gpgme_gpg_release_object ( GpgObject gpg );
88 GpgmeError _gpgme_gpg_add_arg ( GpgObject gpg, const char *arg );
89 GpgmeError _gpgme_gpg_add_data ( GpgObject gpg, GpgmeData data, int dup_to );
90 void       _gpgme_gpg_set_status_handler ( GpgObject gpg,
91                                            GpgStatusHandler fnc,
92                                            void *fnc_value );
93 GpgmeError _gpgme_gpg_spawn ( GpgObject gpg, void *opaque );
94
95
96
97 #endif /* RUNGPG_H */
98
99
100
101
102
103