示例#1
0
        public Task <MailboxFilterResult> CanDeliverToAsync(ISessionContext context, IMailbox to, IMailbox from, CancellationToken cancellationToken)
        {
            this.logger.LogDebug($"checking if we can deliver mail from {from.AsAddress()} to {to.AsAddress()}");

            if (this.mailServerConfiguration.Domain.Equals(to.Host, StringComparison.InvariantCultureIgnoreCase) == true)
            {
                this.logger.LogInformation($"accepting email from {from.AsAddress()} to {to.AsAddress()}");
                return(Task.FromResult(MailboxFilterResult.Yes));
            }
            else
            {
                this.logger.LogInformation($"denying email from {from.AsAddress()} to {to.AsAddress()}");
                return(Task.FromResult(MailboxFilterResult.NoTemporarily));
            }
        }