File indexing completed on 2025-05-04 04:59:03
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 "lookupkey.h" 0008 #include <QDebug> 0009 #include <QDnsLookup> 0010 LookUpKey::LookUpKey(QObject *parent) 0011 : QObject(parent) 0012 { 0013 } 0014 0015 void LookUpKey::lookUpServer(const QString &addr) 0016 { 0017 // Create a DNS lookup. 0018 mAddress = addr; 0019 mDnsLookup = new QDnsLookup(this); 0020 connect(mDnsLookup, &QDnsLookup::finished, this, &LookUpKey::handleServers); 0021 0022 mDnsLookup->setType(QDnsLookup::TXT); 0023 // mDnsLookup->setName(QStringLiteral("s2048._domainkey.yahoo.fr")); 0024 mDnsLookup->setName(addr); 0025 mDnsLookup->lookup(); 0026 } 0027 0028 void LookUpKey::handleServers() 0029 { 0030 // Check the lookup succeeded. 0031 if (mDnsLookup->error() != QDnsLookup::NoError) { 0032 qWarning("DNS lookup failed"); 0033 mDnsLookup->deleteLater(); 0034 return; 0035 } 0036 0037 // Handle the results. 0038 const auto records = mDnsLookup->textRecords(); 0039 qDebug() << " resolve address " << mAddress; 0040 for (const QDnsTextRecord &record : records) { 0041 qDebug() << " record " << record.values(); 0042 } 0043 mDnsLookup->deleteLater(); 0044 } 0045 0046 #include "moc_lookupkey.cpp"