Mercurial > masqmail
comparison src/deliver.c @ 317:55b7bde95d37
reworked allowed and denied addrs for routes
The following refactorings had been made:
- allowed_mail_locals + allowed_return_paths -> allowed_senders
- not_allowed_mail_locals + not_allowed_return_paths -> denied_senders
- allowed_rcpt_domains -> allowed_recipients
- not_allowed_rcpt_domains -> denied_recipients
The new options allow more consistent and more flexible matching.
author | meillo@marmaro.de |
---|---|
date | Thu, 28 Apr 2011 09:55:06 +0200 |
parents | c98aa884d2cb |
children | 412385b57dc4 |
comparison
equal
deleted
inserted
replaced
316:d596ac8b5afb | 317:55b7bde95d37 |
---|---|
558 if (!msgout_cloned->rcpt_list) { | 558 if (!msgout_cloned->rcpt_list) { |
559 destroy_msg_out(msgout_cloned); | 559 destroy_msg_out(msgout_cloned); |
560 continue; | 560 continue; |
561 } | 561 } |
562 | 562 |
563 /* filter by allowed return paths (= envelope sender) */ | 563 /* filter by allowed envelope sender */ |
564 if (!route_is_allowed_mail_local(route, msgout->msg->return_path) | 564 if (!route_sender_is_allowed(route, msgout->msg->return_path)) { |
565 || !route_is_allowed_return_path(route, msgout->msg->return_path)) { | |
566 destroy_msg_out(msgout_cloned); | 565 destroy_msg_out(msgout_cloned); |
567 continue; | 566 continue; |
568 } | 567 } |
569 | 568 |
570 /* filter by allowed rcpt addrs (= envelope rcpts) */ | 569 /* filter by allowed envelope rcpts */ |
571 GList *rcpt_list_allowed = NULL, *rcpt_list_notallowed = NULL; | 570 GList* rcpt_list_allowed = NULL; |
572 msg_rcptlist_route(route, msgout_cloned->rcpt_list, &rcpt_list_allowed, &rcpt_list_notallowed); | 571 GList* rcpt_list_notallowed = NULL; |
573 | 572 route_split_rcpts(route, msgout_cloned->rcpt_list, &rcpt_list_allowed, &rcpt_list_notallowed); |
574 if (!rcpt_list_allowed) { | 573 if (!rcpt_list_allowed) { |
575 destroy_msg_out(msgout_cloned); | 574 destroy_msg_out(msgout_cloned); |
576 continue; | 575 continue; |
577 } | 576 } |
577 | |
578 logwrite(LOG_NOTICE, "%s using '%s'\n", msgout->msg->uid, route->name); | 578 logwrite(LOG_NOTICE, "%s using '%s'\n", msgout->msg->uid, route->name); |
579 | 579 |
580 g_list_free(msgout_cloned->rcpt_list); | 580 g_list_free(msgout_cloned->rcpt_list); |
581 msgout_cloned->rcpt_list = rcpt_list_allowed; | 581 msgout_cloned->rcpt_list = rcpt_list_allowed; |
582 | 582 |