include/gpg.h
/* [<][>][^][v][top][bottom][index][help] */
FUNCTIONS
This source file includes following functions.
1 /* FP: interface file for RIPE gnuPG */
2
3 #define INPUT_FD 0
4 #define OUTPUT_FD 1
5 #define ERROR_FD 2
6
7 #define LINE_LENGTH 1024
8 #define STRING_LENGTH 255
9 #define FILENAME_LENGTH 1024
10
11 #define ERRSTRING strerror (errno)
12
13 /* FP : global objects used as and interface with gnuPG */
14
15 typedef unsigned int u32;
16
17 struct VerifySignObject {
18 char iDocSigFilename[FILENAME_LENGTH], /* IN */
19 iSigFilename[FILENAME_LENGTH], /* IN */
20 outputPath[FILENAME_LENGTH], /* IN */
21 oStream[FILENAME_LENGTH]; /* OUT */
22
23 char keyRing[FILENAME_LENGTH];
24 int isValid;
25 u32 keyID;
26 struct VerifySignObject *next, *inner;
27 };
28
29 struct ReadCryptedObject {
30 char iFilename[FILENAME_LENGTH],
31 oStream[FILENAME_LENGTH];
32 char keyRing[FILENAME_LENGTH];
33 int isValid;
34 u32 keyID;
35 };
36
37 struct ImportKeyObject {
38 char iFilename[FILENAME_LENGTH];
39 char keyRing[FILENAME_LENGTH];
40 int rc;
41 u32 keyID;
42 char fingerPrint[STRING_LENGTH];
43 };
44
45 struct RemoveKeyObject {
46 char iFilename[FILENAME_LENGTH];
47 char keyRing[FILENAME_LENGTH];
48 int rc;
49 u32 keyID;
50 };
51
52 enum {
53 iKO_OK = 0,
54 iKO_UNCHANGED,
55 iKO_NOUSERID,
56 iKO_GENERAL,
57 iKO_NOTVALIDUSERID,
58 iKO_NOPUBLICKEY,
59 iKO_NODEFAULTPUBLICKEYRING,
60 iKO_CRC_ERROR,
61 iKO_NO_OPENPGP_DATA,
62 iKO_NO_IN_FILES,
63 iKO_SECRET_KEY_PRESENT,
64 iKO_GENERALFAILURE
65 };
66
67 enum {
68 vSO_IS_VALID = 0,
69 vSO_KO,
70 vSO_CRC_ERROR,
71 vSO_NO_PUBLIC_KEY,
72 vSO_NO_OPENPGP_DATA,
73 vSO_NO_IN_FILES,
74 vSO_NO_OUT_FILES
75 };
76
77 #ifdef __cplusplus
78 extern "C" {
79 #endif
80
81 void PA_VerifySignature(struct VerifySignObject *vSO);
82 void PA_ImportKey(struct ImportKeyObject *iKO);
83 void PA_RemoveKey(struct ImportKeyObject *iKO);
84 void PA_Decrypt(struct ReadCryptedObject *rDO);
85
86 #ifdef __cplusplus
87 }
88 #endif