diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2017-08-08 14:37:49 -0700 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2017-10-17 21:46:02 +0000 |
commit | cf7a97a6582303bd2659cbf60c085eb28a8a9894 (patch) | |
tree | 943f1a7e5b9bcf63ebb3703cfaf74866e7618997 /src/network/kernel/qhostaddress_p.h | |
parent | f93003e0c6886402d17c3aeff2145c62a871ff05 (diff) |
QHostAddress: add more classification functions
[ChangeLog][QtNetwork][QHostAddress] Added isGlobal(), isLinkLocal(),
isSiteLocal(), isUniqueLocalUnicast(), and isBroadcast() classification
functions to complement isLoopback() and isMulticast().
Change-Id: I3868166e5efc45538544fffd14d8fca6e9042c04
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Diffstat (limited to 'src/network/kernel/qhostaddress_p.h')
-rw-r--r-- | src/network/kernel/qhostaddress_p.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/network/kernel/qhostaddress_p.h b/src/network/kernel/qhostaddress_p.h index 5106760ed9..f06feb0559 100644 --- a/src/network/kernel/qhostaddress_p.h +++ b/src/network/kernel/qhostaddress_p.h @@ -57,6 +57,22 @@ QT_BEGIN_NAMESPACE +enum AddressClassification { + LoopbackAddress = 1, + LocalNetAddress, // RFC 1122 + LinkLocalAddress, // RFC 4291 (v6), RFC 3927 (v4) + MulticastAddress, // RFC 4291 (v6), RFC 3171 (v4) + BroadcastAddress, // RFC 919, 922 + + GlobalAddress = 16, + TestNetworkAddress, // RFC 3849 (v6), RFC 5737 (v4), + PrivateNetworkAddress, // RFC 1918 + UniqueLocalAddress, // RFC 4193 + SiteLocalAddress, // RFC 4291 (deprecated by RFC 3879, should be treated as global) + + UnknownAddress = 0 // unclassified or reserved +}; + class QNetmask { // stores 0-32 for IPv4, 0-128 for IPv6, or 255 for invalid |