X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fsrc%2Fpdkim%2Fpdkim.h;h=8c477f744cbd3f49b6ba0a7b05af71c15d27ba0d;hb=8b6b06fe3e009cb89ae7923b890e75f9dcd50118;hp=536e5af690e297f53e57b2b4a90cb9884525b2bb;hpb=e983e85a314998aed1d586990969fea128a8b4c7;p=user%2Fhenk%2Fcode%2Fexim.git diff --git a/src/src/pdkim/pdkim.h b/src/src/pdkim/pdkim.h index 536e5af69..8c477f744 100644 --- a/src/src/pdkim/pdkim.h +++ b/src/src/pdkim/pdkim.h @@ -2,7 +2,7 @@ * PDKIM - a RFC4871 (DKIM) implementation * * Copyright (C) 2009 - 2012 Tom Kistner - * Copyright (c) Jeremy Harris 2016 + * Copyright (c) 2016 - 2017 Jeremy Harris * * http://duncanthrax.net/pdkim/ * @@ -100,13 +100,14 @@ typedef struct pdkim_pubkey { uschar *version; /* v= */ uschar *granularity; /* g= */ +#ifdef notdef uschar *hashes; /* h= */ uschar *keytype; /* k= */ +#endif uschar *srvtype; /* s= */ uschar *notes; /* n= */ blob key; /* p= */ - int testing; /* t=y */ int no_subdomaining; /* t=s */ } pdkim_pubkey; @@ -163,7 +164,7 @@ typedef struct pdkim_signature { uschar *copiedheaders; /* (b=) Raw signature data, along with its length in bytes */ - blob sigdata; + blob sighash; /* (bh=) Raw body hash data, along with its length in bytes */ blob bodyhash; @@ -232,7 +233,7 @@ typedef struct pdkim_signature { /* Properties below this point are used internally only ------------- */ /* Per-signature helper variables ----------------------------------- */ - hctx body_hash; + hctx body_hash_ctx; unsigned long signed_body_bytes; /* How many body bytes we hashed */ pdkim_stringlist *headers; /* Raw headers included in the sig */ @@ -249,9 +250,10 @@ typedef struct pdkim_ctx { #define PDKIM_MODE_SIGN BIT(0) /* if unset, mode==verify */ #define PDKIM_DOT_TERM BIT(1) /* dot termination and unstuffing */ -#define PDKIM_SEEN_LF BIT(2) -#define PDKIM_SEEN_EOD BIT(3) +#define PDKIM_SEEN_CR BIT(2) +#define PDKIM_SEEN_LF BIT(3) #define PDKIM_PAST_HDRS BIT(4) +#define PDKIM_SEEN_EOD BIT(5) unsigned flags; /* One (signing) or several chained (verification) signatures */ @@ -284,7 +286,8 @@ extern "C" { void pdkim_init (void); DLLEXPORT -pdkim_ctx *pdkim_init_sign (char *, char *, char *, int, BOOL); +pdkim_ctx *pdkim_init_sign (char *, char *, char *, int, + BOOL, int(*)(char *, char *), const uschar **); DLLEXPORT pdkim_ctx *pdkim_init_verify (int(*)(char *, char *), BOOL); @@ -298,13 +301,13 @@ int pdkim_set_optional (pdkim_ctx *, char *, char *,int, int, DLLEXPORT int pdkim_feed (pdkim_ctx *, char *, int); DLLEXPORT -int pdkim_feed_finish (pdkim_ctx *, pdkim_signature **); +int pdkim_feed_finish (pdkim_ctx *, pdkim_signature **, const uschar **); DLLEXPORT void pdkim_free_ctx (pdkim_ctx *); -const char * pdkim_errstr(int); +const uschar * pdkim_errstr(int); #ifdef __cplusplus }