File indexing completed on 2025-03-09 04:54:29
0001 /* 0002 SPDX-FileCopyrightText: 2019-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #include "dkimgeneraterulejob.h" 0008 #include "dkimmanagerrules.h" 0009 #include "messageviewer_debug.h" 0010 using namespace MessageViewer; 0011 0012 DKIMGenerateRuleJob::DKIMGenerateRuleJob(QObject *parent) 0013 : QObject(parent) 0014 { 0015 } 0016 0017 DKIMGenerateRuleJob::~DKIMGenerateRuleJob() = default; 0018 0019 bool DKIMGenerateRuleJob::canStart() const 0020 { 0021 if (!mResult.isValid()) { 0022 qCWarning(MESSAGEVIEWER_LOG) << "Rule is not valid"; 0023 return false; 0024 } 0025 return true; 0026 } 0027 0028 bool DKIMGenerateRuleJob::start() 0029 { 0030 if (!canStart()) { 0031 deleteLater(); 0032 qCWarning(MESSAGEVIEWER_LOG) << "Impossible to start DKIMGenerateRuleJob"; 0033 return false; 0034 } 0035 verifyAndGenerateRule(); 0036 return true; 0037 } 0038 0039 void DKIMGenerateRuleJob::verifyAndGenerateRule() 0040 { 0041 DKIMRule rule; 0042 rule.setEnabled(true); 0043 rule.setFrom(mResult.fromEmail); 0044 // TODO add Domain when we create a rule from base domain. 0045 rule.setSignedDomainIdentifier(QStringList() << mResult.sdid); 0046 rule.setRuleType(DKIMRule::RuleType::MustBeSigned); 0047 deleteLater(); 0048 } 0049 0050 DKIMCheckSignatureJob::CheckSignatureResult DKIMGenerateRuleJob::result() const 0051 { 0052 return mResult; 0053 } 0054 0055 void DKIMGenerateRuleJob::setResult(const DKIMCheckSignatureJob::CheckSignatureResult &checkResult) 0056 { 0057 mResult = checkResult; 0058 } 0059 0060 #include "moc_dkimgeneraterulejob.cpp"