Server IP : 172.67.216.182 / Your IP : 162.158.107.66 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /lib/python3/dist-packages/hyperlink/ |
Upload File : |
try: from socket import inet_pton except ImportError: from typing import TYPE_CHECKING if TYPE_CHECKING: # pragma: no cover pass else: # based on https://gist.github.com/nnemkin/4966028 # this code only applies on Windows Python 2.7 import ctypes import socket class SockAddr(ctypes.Structure): _fields_ = [ ("sa_family", ctypes.c_short), ("__pad1", ctypes.c_ushort), ("ipv4_addr", ctypes.c_byte * 4), ("ipv6_addr", ctypes.c_byte * 16), ("__pad2", ctypes.c_ulong), ] WSAStringToAddressA = ctypes.windll.ws2_32.WSAStringToAddressA WSAAddressToStringA = ctypes.windll.ws2_32.WSAAddressToStringA def inet_pton(address_family, ip_string): # type: (int, str) -> bytes addr = SockAddr() ip_string_bytes = ip_string.encode("ascii") addr.sa_family = address_family addr_size = ctypes.c_int(ctypes.sizeof(addr)) try: attribute, size = { socket.AF_INET: ("ipv4_addr", 4), socket.AF_INET6: ("ipv6_addr", 16), }[address_family] except KeyError: raise socket.error("unknown address family") if ( WSAStringToAddressA( ip_string_bytes, address_family, None, ctypes.byref(addr), ctypes.byref(addr_size), ) != 0 ): raise socket.error(ctypes.FormatError()) return ctypes.string_at(getattr(addr, attribute), size)