1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- import socket
- from typing import Optional
- from PyQt6.QtCore import QObject, pyqtSlot
- class NetworkingUtil(QObject):
- def __init__(self, parent: Optional["QObject"] = None) -> None:
- super().__init__(parent = parent)
-
- @pyqtSlot(str, result = bool)
- def isIPv4(self, address: str) -> bool:
- try:
- socket.inet_pton(socket.AF_INET, address)
- result = True
- except:
- result = False
- return result
-
- @pyqtSlot(str, result = bool)
- def isIPv6(self, address: str) -> bool:
- try:
- socket.inet_pton(socket.AF_INET6, address)
- result = True
- except:
- result = False
- return result
-
- @pyqtSlot(str, result = bool)
- def isValidIP(self, address: str) -> bool:
- return self.isIPv4(address) or self.isIPv6(address)
- __all__ = ["NetworkingUtil"]
|