Commit | Line | Data |
---|---|---|
184e8823 | 1 | /* $Cambridge: exim/src/src/dk.h,v 1.3 2007/01/08 10:50:18 ph10 Exp $ */ |
fb2274d4 TK |
2 | |
3 | /************************************************* | |
4 | * Exim - an Internet mail transport agent * | |
5 | *************************************************/ | |
6 | ||
184e8823 | 7 | /* Copyright (c) University of Cambridge 1995 - 2007 */ |
fb2274d4 TK |
8 | /* See the file NOTICE for conditions of use and distribution. */ |
9 | ||
10 | /* Code for DomainKeys support. Other DK relevant code is in | |
11 | receive.c, transport.c and transports/smtp.c */ | |
12 | ||
13 | #ifdef EXPERIMENTAL_DOMAINKEYS | |
14 | ||
15 | #include <domainkeys.h> | |
16 | ||
17 | #define DK_EXIM_ADDRESS_NONE 0 | |
18 | #define DK_EXIM_ADDRESS_FROM_FROM 1 | |
19 | #define DK_EXIM_ADDRESS_FROM_SENDER 2 | |
20 | ||
21 | #define DK_EXIM_RESULT_ERR 0 | |
22 | #define DK_EXIM_RESULT_BAD_FORMAT 1 | |
23 | #define DK_EXIM_RESULT_NO_KEY 2 | |
24 | #define DK_EXIM_RESULT_NO_SIGNATURE 3 | |
25 | #define DK_EXIM_RESULT_REVOKED 4 | |
26 | #define DK_EXIM_RESULT_NON_PARTICIPANT 5 | |
27 | #define DK_EXIM_RESULT_GOOD 6 | |
28 | #define DK_EXIM_RESULT_BAD 7 | |
29 | ||
30 | typedef struct dk_exim_verify_block { | |
31 | int result; | |
32 | int address_source; | |
33 | uschar *result_string; | |
34 | uschar *address; | |
35 | uschar *domain; | |
36 | uschar *local_part; | |
37 | BOOL is_signed; | |
38 | BOOL signsall; | |
39 | BOOL testing; | |
40 | } dk_exim_verify_block; | |
41 | ||
42 | int dk_receive_getc(void); | |
43 | int dk_receive_ungetc(int); | |
44 | void dk_exim_verify_init(void); | |
45 | void dk_exim_verify_finish(void); | |
46 | int dk_exim_verify_result(uschar **); | |
47 | uschar *dk_exim_sign(int, uschar *, uschar *, uschar *, uschar *); | |
48 | ||
49 | extern dk_exim_verify_block *dk_verify_block; | |
50 | ||
51 | #endif |