Skip to content

Commit 1a0beca

Browse files
author
David
committed
implement bip-0037 in version message
1 parent 7a8a47e commit 1a0beca

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

bitcoin/messages.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ def __init__(self, protover=PROTO_VERSION):
131131
self.strSubVer = (b'/python-bitcoinlib:' +
132132
bitcoin.__version__.encode('ascii') + b'/')
133133
self.nStartingHeight = -1
134+
self.fRelay = True
134135

135136
@classmethod
136137
def msg_deser(cls, f, protover=PROTO_VERSION):
@@ -154,6 +155,10 @@ def msg_deser(cls, f, protover=PROTO_VERSION):
154155
c.nNonce = None
155156
c.strSubVer = None
156157
c.nStartingHeight = None
158+
if c.nVersion >= 70001:
159+
c.fRelay = struct.unpack(b"<B", ser_read(f,1))[0]
160+
else:
161+
c.fRelay = None
157162
return c
158163

159164
def msg_ser(self, f):
@@ -165,6 +170,7 @@ def msg_ser(self, f):
165170
f.write(struct.pack(b"<Q", self.nNonce))
166171
VarStringSerializer.stream_serialize(self.strSubVer, f)
167172
f.write(struct.pack(b"<i", self.nStartingHeight))
173+
f.write(struct.pack(b"<B", self.fRelay))
168174

169175
def __repr__(self):
170176
return "msg_version(nVersion=%i nServices=%i nTime=%s addrTo=%s addrFrom=%s nNonce=0x%016X strSubVer=%s nStartingHeight=%i)" % (self.nVersion, self.nServices, time.ctime(self.nTime), repr(self.addrTo), repr(self.addrFrom), self.nNonce, self.strSubVer, self.nStartingHeight)

0 commit comments

Comments
 (0)