DKIM: Remove embedded copy of PolarSSL and use OpenSSL/GnuTLS library.
[exim.git] / src / src / dkim.c
index 5045958156af630be830604d4562a47e79d4e778..33d1e9776d2ec04a447e25f9866a8f4c7a3428c4 100644 (file)
@@ -69,12 +69,8 @@ if (dkim_verify_ctx)
 
 /* Create new context */
 
-dkim_verify_ctx = pdkim_init_verify(PDKIM_INPUT_SMTP, &dkim_exim_query_dns_txt);
+dkim_verify_ctx = pdkim_init_verify(&dkim_exim_query_dns_txt);
 dkim_collect_input = !!dkim_verify_ctx;
-#ifdef PDKIM_DEBUG
-if (dkim_collect_input)
-  pdkim_set_debug_stream(dkim_verify_ctx, debug_file);
-#endif
 }
 
 
@@ -127,12 +123,14 @@ for (sig = dkim_signatures; sig; sig = sig->next)
   /* Log a line for each signature */
 
   uschar *logmsg = string_append(NULL, &size, &ptr, 5,
-       string_sprintf("d=%s s=%s c=%s/%s a=%s ",
+       string_sprintf("d=%s s=%s c=%s/%s a=%s b=%d ",
              sig->domain,
              sig->selector,
              sig->canon_headers == PDKIM_CANON_SIMPLE ?  "simple" : "relaxed",
              sig->canon_body == PDKIM_CANON_SIMPLE ?  "simple" : "relaxed",
-             sig->algo == PDKIM_ALGO_RSA_SHA256 ?  "rsa-sha256" : "rsa-sha1"),
+             sig->algo == PDKIM_ALGO_RSA_SHA256 ?  "rsa-sha256" : "rsa-sha1",
+             sig->sigdata_len * 8
+             ),
 
        sig->identity ? string_sprintf("i=%s ", sig->identity) : US"",
        sig->created > 0 ? string_sprintf("t=%lu ", sig->created) : US"",
@@ -231,7 +229,6 @@ dkim_exim_acl_setup(uschar * id)
 pdkim_signature * sig;
 uschar * cmp_val;
 
-
 dkim_cur_sig = NULL;
 dkim_cur_signer = id;
 
@@ -257,6 +254,7 @@ for (sig = dkim_signatures; sig; sig = sig->next)
 
     dkim_signing_domain = US sig->domain;
     dkim_signing_selector = US sig->selector;
+    dkim_key_length = sig->sigdata_len * 8;
     return;
     }
 }
@@ -563,18 +561,15 @@ while ((dkim_signing_domain = string_nextinlist(&dkim_domain, &sep,
     dkim_private_key_expanded = big_buffer;
     }
 
-  ctx = pdkim_init_sign(PDKIM_INPUT_SMTP,
-                        (char *) dkim_signing_domain,
+  ctx = pdkim_init_sign( (char *) dkim_signing_domain,
                         (char *) dkim_signing_selector,
-                        (char *) dkim_private_key_expanded);
-#ifdef PDKIM_DEBUG
-  pdkim_set_debug_stream(ctx, debug_file);
-#endif
+                        (char *) dkim_private_key_expanded,
+                        PDKIM_ALGO_RSA_SHA256);
   pdkim_set_optional(ctx,
                      (char *) dkim_sign_headers_expanded,
                      NULL,
                      pdkim_canon,
-                     pdkim_canon, -1, PDKIM_ALGO_RSA_SHA256, 0, 0);
+                     pdkim_canon, -1, 0, 0);
 
   lseek(dkim_fd, 0, SEEK_SET);