diff options
| author | Niels Ole Salscheider <niels_ole@salscheider-online.de> | 2017-09-03 22:00:29 +0200 |
|---|---|---|
| committer | Niels Ole Salscheider <niels_ole@salscheider-online.de> | 2017-09-04 19:44:01 +0200 |
| commit | 2a5ccd3bd191b75b9fa148a8fa7f3d3ddc225add (patch) | |
| tree | d8cd64a20fbe77a78be7c9533787044157190442 /src/base/qdnslookup_win.cpp | |
| parent | 3241e63f07c5fa493788897ddfb87a201205f621 (diff) | |
| download | qxmpp-2a5ccd3bd191b75b9fa148a8fa7f3d3ddc225add.tar.gz | |
Drop support for Qt 4
Diffstat (limited to 'src/base/qdnslookup_win.cpp')
| -rw-r--r-- | src/base/qdnslookup_win.cpp | 150 |
1 files changed, 0 insertions, 150 deletions
diff --git a/src/base/qdnslookup_win.cpp b/src/base/qdnslookup_win.cpp deleted file mode 100644 index d89ec623..00000000 --- a/src/base/qdnslookup_win.cpp +++ /dev/null @@ -1,150 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2012 Jeremy Lainé <jeremy.laine@m4x.org> -** Contact: http://www.qt-project.org/ -** -** This file is part of the QtNetwork module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL$ -** GNU Lesser General Public License Usage -** This file may be used under the terms of the GNU Lesser General Public -** License version 2.1 as published by the Free Software Foundation and -** appearing in the file LICENSE.LGPL included in the packaging of this -** file. Please review the following information to ensure the GNU Lesser -** General Public License version 2.1 requirements will be met: -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** In addition, as a special exception, Nokia gives you certain additional -** rights. These rights are described in the Nokia Qt LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU General -** Public License version 3.0 as published by the Free Software Foundation -** and appearing in the file LICENSE.GPL included in the packaging of this -** file. Please review the following information to ensure the GNU General -** Public License version 3.0 requirements will be met: -** http://www.gnu.org/copyleft/gpl.html. -** -** Other Usage -** Alternatively, this file may be used in accordance with the terms and -** conditions contained in a signed written agreement between you and Nokia. -** -** -** -** -** -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include <winsock2.h> -#include "qdnslookup_p.h" - -#include <QUrl> -#include <QMutex> -#include <QLibrary> - -#include <windows.h> -#include <windns.h> - -QT_BEGIN_NAMESPACE - -void QDnsLookupRunnable::query(const int requestType, const QByteArray &requestName, QDnsLookupReply *reply) -{ - // Perform DNS query. - PDNS_RECORD dns_records = 0; - const DNS_STATUS status = DnsQuery_UTF8(requestName, requestType, DNS_QUERY_STANDARD, NULL, &dns_records, NULL); - switch (status) { - case ERROR_SUCCESS: - break; - case DNS_ERROR_RCODE_FORMAT_ERROR: - reply->error = QDnsLookup::InvalidRequestError; - reply->errorString = tr("Server could not process query"); - return; - case DNS_ERROR_RCODE_SERVER_FAILURE: - reply->error = QDnsLookup::ServerFailureError; - reply->errorString = tr("Server failure"); - return; - case DNS_ERROR_RCODE_NAME_ERROR: - reply->error = QDnsLookup::NotFoundError; - reply->errorString = tr("Non existent domain"); - return; - case DNS_ERROR_RCODE_REFUSED: - reply->error = QDnsLookup::ServerRefusedError; - reply->errorString = tr("Server refused to answer"); - return; - default: - reply->error = QDnsLookup::InvalidReplyError; - reply->errorString = tr("Invalid reply received"); - return; - } - - // Extract results. - for (PDNS_RECORD ptr = dns_records; ptr != NULL; ptr = ptr->pNext) { - const QString name = QUrl::fromAce((char*)ptr->pName); - if (ptr->wType == QDnsLookup::A) { - QDnsHostAddressRecord record; - record.d->name = name; - record.d->timeToLive = ptr->dwTtl; - record.d->value = QHostAddress(ntohl(ptr->Data.A.IpAddress)); - reply->hostAddressRecords.append(record); - } else if (ptr->wType == QDnsLookup::AAAA) { - Q_IPV6ADDR addr; - memcpy(&addr, &ptr->Data.AAAA.Ip6Address, sizeof(Q_IPV6ADDR)); - - QDnsHostAddressRecord record; - record.d->name = name; - record.d->timeToLive = ptr->dwTtl; - record.d->value = QHostAddress(addr); - reply->hostAddressRecords.append(record); - } else if (ptr->wType == QDnsLookup::CNAME) { - QDnsDomainNameRecord record; - record.d->name = name; - record.d->timeToLive = ptr->dwTtl; - record.d->value = QUrl::fromAce((char*)ptr->Data.Cname.pNameHost); - reply->canonicalNameRecords.append(record); - } else if (ptr->wType == QDnsLookup::MX) { - QDnsMailExchangeRecord record; - record.d->name = name; - record.d->exchange = QUrl::fromAce((char*)ptr->Data.Mx.pNameExchange); - record.d->preference = ptr->Data.Mx.wPreference; - record.d->timeToLive = ptr->dwTtl; - reply->mailExchangeRecords.append(record); - } else if (ptr->wType == QDnsLookup::NS) { - QDnsDomainNameRecord record; - record.d->name = name; - record.d->timeToLive = ptr->dwTtl; - record.d->value = QUrl::fromAce((char*)ptr->Data.Ns.pNameHost); - reply->nameServerRecords.append(record); - } else if (ptr->wType == QDnsLookup::PTR) { - QDnsDomainNameRecord record; - record.d->name = name; - record.d->timeToLive = ptr->dwTtl; - record.d->value = QUrl::fromAce((char*)ptr->Data.Ptr.pNameHost); - reply->pointerRecords.append(record); - } else if (ptr->wType == QDnsLookup::SRV) { - QDnsServiceRecord record; - record.d->name = name; - record.d->target = QUrl::fromAce((char*)ptr->Data.Srv.pNameTarget); - record.d->port = ptr->Data.Srv.wPort; - record.d->priority = ptr->Data.Srv.wPriority; - record.d->timeToLive = ptr->dwTtl; - record.d->weight = ptr->Data.Srv.wWeight; - reply->serviceRecords.append(record); - } else if (ptr->wType == QDnsLookup::TXT) { - QDnsTextRecord record; - record.d->name = name; - record.d->timeToLive = ptr->dwTtl; - for (unsigned int i = 0; i < ptr->Data.Txt.dwStringCount; ++i) { - record.d->values << QByteArray((char*)ptr->Data.Txt.pStringArray[i]); - } - reply->textRecords.append(record); - } - } - - DnsRecordListFree(dns_records, DnsFreeRecordList); -} - -QT_END_NAMESPACE |
