Tue, 02 Mar 2021 17:17:09 +0100
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
52
ba69827929ee
Renamed E4Network to E5Network.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
ba69827929ee
Renamed E4Network to E5Network.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
7923
91e843545d9a
Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7780
diff
changeset
|
3 | # Copyright (c) 2009 - 2021 Detlev Offenbach <detlev@die-offenbachs.de> |
52
ba69827929ee
Renamed E4Network to E5Network.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
ba69827929ee
Renamed E4Network to E5Network.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
ba69827929ee
Renamed E4Network to E5Network.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
4968
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
7 | Package implementing some special network related objects and functions. |
52
ba69827929ee
Renamed E4Network to E5Network.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
4968
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
9 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
10 | from PyQt5.QtNetwork import QAbstractSocket, QHostAddress |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
11 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
12 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
13 | def isValidAddress(address): |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
14 | """ |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
15 | Public function to check, if the given address is valid. |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
16 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
17 | @param address IPv4 or IPv6 address string |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
18 | @type str |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
19 | @return flag indicating validity |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
20 | @rtype bool |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
21 | """ |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
22 | h = QHostAddress(address) |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
23 | return not h.isNull() |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
24 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
25 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
26 | def isValidIPv4Address(address): |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
27 | """ |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
28 | Public function to check, if the given address is a valid IPv4 address. |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
29 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
30 | @param address IPv4 address string |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
31 | @type str |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
32 | @return flag indicating validity |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
33 | @rtype bool |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
34 | """ |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
35 | h = QHostAddress(address) |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
36 | return ( |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
37 | not h.isNull() and |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
38 | h.protocol() == QAbstractSocket.NetworkLayerProtocol.IPv4Protocol |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
39 | ) |
4968
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
40 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
41 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
42 | def isValidIPv6Address(address): |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
43 | """ |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
44 | Public function to check, if the given address is a valid IPv6 address. |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
45 | |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
46 | @param address IPv6 address string |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
47 | @type str |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
48 | @return flag indicating validity |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
49 | @rtype bool |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
50 | """ |
afcc223b932f
Added some utility functions to check a network address.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
51 | h = QHostAddress(address) |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
52 | return ( |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
53 | not h.isNull() and |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
54 | h.protocol() == QAbstractSocket.NetworkLayerProtocol.IPv6Protocol |
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
55 | ) |