Ejemplo n.º 1
0
def _create_sockaddr_in(domain, host, port):
    import socket

    struct_bytes = b""
    if domain == socket.AF_INET:
        domain = SocketFamily.AF_INET
    else:
        domain = SocketFamily.AF_INET6
    s_in = SOCKADDR_IN()
    s_in.sin_family = domain
    s_in.sin_addr = _host_to_bytes(host, domain)
    s_in.sin_port = _port_to_bytes(port)
    struct_bytes = struct2str(s_in)
    return struct_bytes
Ejemplo n.º 2
0
def _parse_sockaddr_in(p, addr, size):
    class SOCKADDR_IN(ctypes.Structure):
        _fields_ = [
            ("sin_family", ctypes.c_ushort),
            ("sin_port", ctypes.c_ushort),
            ("sin_addr", ctypes.c_uint32),
            ("sin_zero", ctypes.c_char * 8),
        ]

    sockaddr_in = SOCKADDR_IN()
    str2struct(sockaddr_in, bytes(p.memory.read(addr, size)))