mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-03 15:45:46 +08:00
refs #185 , added checks for IPs
This commit is contained in:
@@ -7,6 +7,8 @@
|
||||
#include <QtNetwork/QNetworkInterface>
|
||||
#include <QtNetwork/QTcpSocket>
|
||||
#include <QCoreApplication>
|
||||
#include <QHostAddress>
|
||||
#include <QAbstractSocket>
|
||||
|
||||
namespace BlackMisc
|
||||
{
|
||||
@@ -82,4 +84,33 @@ namespace BlackMisc
|
||||
{
|
||||
return CNetworkChecks::canConnect(server.getAddress(), server.getPort(), message, timeoutMs);
|
||||
}
|
||||
|
||||
/*
|
||||
* Valid IPv4 address
|
||||
*/
|
||||
bool CNetworkChecks::isValidIPv4Address(const QString &candidate)
|
||||
{
|
||||
QHostAddress address(candidate);
|
||||
return (QAbstractSocket::IPv4Protocol == address.protocol());
|
||||
}
|
||||
|
||||
/*
|
||||
* Valid IPv6 address
|
||||
*/
|
||||
bool CNetworkChecks::isValidIPv6Address(const QString &candidate)
|
||||
{
|
||||
QHostAddress address(candidate);
|
||||
return (QAbstractSocket::IPv6Protocol == address.protocol());
|
||||
}
|
||||
|
||||
/*
|
||||
* Valid port?
|
||||
*/
|
||||
bool CNetworkChecks::isValidPort(const QString &port)
|
||||
{
|
||||
bool success;
|
||||
int p = port.toInt(&success);
|
||||
if (!success) return false;
|
||||
return (p >= 1 && p <= 65535);
|
||||
}
|
||||
} // namespace
|
||||
|
||||
Reference in New Issue
Block a user