projects
/
exim.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Openssl: add peer IP to cert verify log lines
[exim.git]
/
src
/
src
/
dkim.c
diff --git
a/src/src/dkim.c
b/src/src/dkim.c
index 05b5fec56e62073f4f5d1d1640ee42d7ca782bad..0ac4dc32e48f40225fcf5907a77084fbd82d53f2 100644
(file)
--- a/
src/src/dkim.c
+++ b/
src/src/dkim.c
@@
-23,6
+23,7
@@
int dkim_exim_query_dns_txt(char *name, char *answer) {
dns_scan dnss;
dns_record *rr;
dns_scan dnss;
dns_record *rr;
+ lookup_dnssec_authenticated = NULL;
if (dns_lookup(&dnsa, (uschar *)name, T_TXT, NULL) != DNS_SUCCEED) return PDKIM_FAIL;
/* Search for TXT record */
if (dns_lookup(&dnsa, (uschar *)name, T_TXT, NULL) != DNS_SUCCEED) return PDKIM_FAIL;
/* Search for TXT record */
@@
-382,12
+383,11
@@
uschar *dkim_exim_expand_defaults(int what) {
}
}
-uschar *dkim_exim_sign(int dkim_fd,
- uschar *dkim_private_key,
- uschar *dkim_domain,
- uschar *dkim_selector,
- uschar *dkim_canon,
- uschar *dkim_sign_headers) {
+uschar *
+dkim_exim_sign(int dkim_fd, uschar *dkim_private_key,
+ const uschar *dkim_domain, uschar *dkim_selector,
+ uschar *dkim_canon, uschar *dkim_sign_headers)
+{
int sep = 0;
uschar *seen_items = NULL;
int seen_items_size = 0;
int sep = 0;
uschar *seen_items = NULL;
int seen_items_size = 0;
@@
-411,7
+411,7
@@
uschar *dkim_exim_sign(int dkim_fd,
store_pool = POOL_MAIN;
store_pool = POOL_MAIN;
- dkim_domain = expand_string(dkim_domain);
+ dkim_domain = expand_
c
string(dkim_domain);
if (dkim_domain == NULL) {
/* expansion error, do not send message. */
log_write(0, LOG_MAIN|LOG_PANIC, "failed to expand "
if (dkim_domain == NULL) {
/* expansion error, do not send message. */
log_write(0, LOG_MAIN|LOG_PANIC, "failed to expand "
@@
-428,7
+428,7
@@
uschar *dkim_exim_sign(int dkim_fd,
/* Only sign once for each domain, no matter how often it
appears in the expanded list. */
if (seen_items != NULL) {
/* Only sign once for each domain, no matter how often it
appears in the expanded list. */
if (seen_items != NULL) {
- uschar *seen_items_list = seen_items;
+
const
uschar *seen_items_list = seen_items;
if (match_isinlist(dkim_signing_domain,
&seen_items_list,0,NULL,NULL,MCL_STRING,TRUE,NULL) == OK)
continue;
if (match_isinlist(dkim_signing_domain,
&seen_items_list,0,NULL,NULL,MCL_STRING,TRUE,NULL) == OK)
continue;
@@
-504,7
+504,12
@@
uschar *dkim_exim_sign(int dkim_fd,
rc = NULL;
goto CLEANUP;
}
rc = NULL;
goto CLEANUP;
}
- (void)read(privkey_fd,big_buffer,(big_buffer_size-2));
+ if (read(privkey_fd,big_buffer,(big_buffer_size-2)) < 0) {
+ log_write(0, LOG_MAIN|LOG_PANIC, "unable to read private key file: %s",
+ dkim_private_key_expanded);
+ rc = NULL;
+ goto CLEANUP;
+ }
(void)close(privkey_fd);
dkim_private_key_expanded = big_buffer;
}
(void)close(privkey_fd);
dkim_private_key_expanded = big_buffer;
}