From 46a86a863ace3b511c21dcd23f14fd7616fc98ed Mon Sep 17 00:00:00 2001 From: Conner Fromknecht Date: Thu, 31 Jan 2019 18:16:04 -0800 Subject: [PATCH] wtwire/create_session: add RewardBase field to CreateSession --- watchtower/wtwire/create_session.go | 9 ++++++++- watchtower/wtwire/summary.go | 5 +++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/watchtower/wtwire/create_session.go b/watchtower/wtwire/create_session.go index 6067d25ca..338dda83e 100644 --- a/watchtower/wtwire/create_session.go +++ b/watchtower/wtwire/create_session.go @@ -20,6 +20,11 @@ type CreateSession struct { // for this session. MaxUpdates uint16 + // RewardBase is the fixed amount allocated to the tower when the + // policy's blob type specifies a reward for the tower. This is taken + // before adding the proportional reward. + RewardBase uint32 + // RewardRate is the fraction of the total balance of the revoked // commitment that the watchtower is entitled to. This value is // expressed in millionths of the total balance. @@ -44,6 +49,7 @@ func (m *CreateSession) Decode(r io.Reader, pver uint32) error { return ReadElements(r, &m.BlobType, &m.MaxUpdates, + &m.RewardBase, &m.RewardRate, &m.SweepFeeRate, ) @@ -57,6 +63,7 @@ func (m *CreateSession) Encode(w io.Writer, pver uint32) error { return WriteElements(w, m.BlobType, m.MaxUpdates, + m.RewardBase, m.RewardRate, m.SweepFeeRate, ) @@ -75,5 +82,5 @@ func (m *CreateSession) MsgType() MessageType { // // This is part of the wtwire.Message interface. func (m *CreateSession) MaxPayloadLength(uint32) uint32 { - return 16 + return 2 + 2 + 4 + 4 + 8 // 20 } diff --git a/watchtower/wtwire/summary.go b/watchtower/wtwire/summary.go index 32f682b76..dbc95201e 100644 --- a/watchtower/wtwire/summary.go +++ b/watchtower/wtwire/summary.go @@ -11,8 +11,9 @@ func MessageSummary(msg Message) string { case *CreateSession: return fmt.Sprintf("blob_type=%s, max_updates=%d "+ - "reward_rate=%d sweep_fee_rate=%d", msg.BlobType, - msg.MaxUpdates, msg.RewardRate, msg.SweepFeeRate) + "reward_base=%d reward_rate=%d sweep_fee_rate=%d", + msg.BlobType, msg.MaxUpdates, msg.RewardBase, + msg.RewardRate, msg.SweepFeeRate) case *CreateSessionReply: return fmt.Sprintf("code=%d", msg.Code)