コード例 #1
0
ファイル: net.py プロジェクト: benjyz/Notary
    def stream_deserialize(cls, f, without_time=False):
        c = cls()
        if c.protover >= CADDR_TIME_VERSION and not without_time:
            c.nTime = struct.unpack(b"<I", ser_read(f, 4))[0]
        c.nServices = struct.unpack(b"<Q", ser_read(f, 8))[0]

        packedIP = ser_read(f, 16)

        if bytes(packedIP[0:12]) == IPV4_COMPAT: # IPv4
            c.ip = socket.inet_ntop(socket.AF_INET, packedIP[12:16])
        else: #IPv6
            c.ip = socket.inet_ntop(socket.AF_INET6, packedIP)

        c.port = struct.unpack(b">H", ser_read(f, 2))[0]
        return c
コード例 #2
0
    def stream_deserialize(cls, f, without_time=False):
        c = cls()
        if c.protover >= CADDR_TIME_VERSION and not without_time:
            c.nTime = struct.unpack(b"<I", ser_read(f, 4))[0]
        c.nServices = struct.unpack(b"<Q", ser_read(f, 8))[0]

        packedIP = ser_read(f, 16)

        if bytes(packedIP[0:12]) == IPV4_COMPAT:  # IPv4
            c.ip = socket.inet_ntop(socket.AF_INET, packedIP[12:16])
        else:  #IPv6
            c.ip = socket.inet_ntop(socket.AF_INET6, packedIP)

        c.port = struct.unpack(b">H", ser_read(f, 2))[0]
        return c
コード例 #3
0
 def stream_deserialize(cls, f):
     c = cls()
     c.nVersion = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.nRelayUntil = struct.unpack(b"<q", ser_read(f, 8))[0]
     c.nExpiration = struct.unpack(b"<q", ser_read(f, 8))[0]
     c.nID = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.nCancel = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.setCancel = intVectorSerialzer.deserialize(f)
     c.nMinVer = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.nMaxVer = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.setSubVer = VarStringSerializer.deserialize(f)
     c.nPriority = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.strComment = VarStringSerializer.deserialize(f)
     c.strStatusBar = VarStringSerializer.deserialize(f)
     c.strReserved = VarStringSerializer.deserialize(f)
     return c
コード例 #4
0
ファイル: net.py プロジェクト: benjyz/Notary
 def stream_deserialize(cls, f):
     c = cls()
     c.nVersion = struct.unpack(b"<i", ser_read(f,4))[0]
     c.nRelayUntil = struct.unpack(b"<q", ser_read(f,8))[0]
     c.nExpiration = struct.unpack(b"<q", ser_read(f,8))[0]
     c.nID = struct.unpack(b"<i", ser_read(f,4))[0]
     c.nCancel = struct.unpack(b"<i", ser_read(f,4))[0]
     c.setCancel = intVectorSerialzer.deserialize(f)
     c.nMinVer = struct.unpack(b"<i", ser_read(f,4))[0]
     c.nMaxVer = struct.unpack(b"<i", ser_read(f,4))[0]
     c.setSubVer = VarStringSerializer.deserialize(f)
     c.nPriority = struct.unpack(b"<i", ser_read(f,4))[0]
     c.strComment = VarStringSerializer.deserialize(f)
     c.strStatusBar = VarStringSerializer.deserialize(f)
     c.strReserved = VarStringSerializer.deserialize(f)
     return c
コード例 #5
0
 def stream_deserialize(cls, f):
     c = cls()
     c.type = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.hash = ser_read(f, 32)
     return c
コード例 #6
0
 def stream_deserialize(cls, f):
     c = cls()
     c.nVersion = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.vHave = uint256VectorSerializer.stream_deserialize(f)
     return c
コード例 #7
0
ファイル: net.py プロジェクト: benjyz/Notary
 def stream_deserialize(cls, f):
     c = cls()
     c.type = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.hash = ser_read(f, 32)
     return c
コード例 #8
0
ファイル: net.py プロジェクト: benjyz/Notary
 def stream_deserialize(cls, f):
     c = cls()
     c.nVersion = struct.unpack(b"<i", ser_read(f, 4))[0]
     c.vHave = uint256VectorSerializer.stream_deserialize(f)
     return c