Skip to content

Commit e488cdd

Browse files
committed
fix(dmq): add missing KES period in 'DmqMsg'
1 parent ca8e439 commit e488cdd

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

internal/mithril-dmq/src/consumer/client/pallas.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -177,6 +177,7 @@ mod tests {
177177
32, 32, 253, 186, 201, 177, 11, 117, 135, 187, 167, 181, 188, 22, 59, 206, 105,
178178
231, 150, 215, 30, 78, 212, 76, 16, 252, 180, 72, 134, 137, 247, 161, 68,
179179
],
180+
kes_period: 10,
180181
},
181182
DmqMsg {
182183
msg_id: vec![1, 2],
@@ -195,6 +196,7 @@ mod tests {
195196
240, 103, 245, 159, 147, 177, 110, 58, 248, 115, 58, 152, 138, 220, 35, 65,
196197
245, 200,
197198
],
199+
kes_period: 11,
198200
},
199201
]
200202
}

internal/mithril-dmq/src/model/builder.rs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ impl DmqMessageBuilder {
4848
hasher.update(dmq_message.ttl.to_be_bytes());
4949
hasher.update(&dmq_message.kes_signature);
5050
hasher.update(&dmq_message.operational_certificate);
51+
hasher.update(dmq_message.kes_period.to_be_bytes());
5152

5253
hasher.finalize().to_vec()
5354
}
@@ -68,13 +69,20 @@ impl DmqMessageBuilder {
6869
.kes_signer
6970
.sign(message_bytes, block_number)
7071
.with_context(|| "Failed to KES sign message while building DMQ message")?;
72+
let kes_period = self
73+
.chain_observer
74+
.get_current_kes_period(&operational_certificate)
75+
.await
76+
.with_context(|| "Failed to get KES period while building DMQ message")?
77+
.unwrap_or_default();
7178
let mut dmq_message = DmqMsg {
7279
msg_id: vec![],
7380
msg_body: message_bytes.to_vec(),
7481
block_number,
7582
ttl: self.ttl_blocks,
7683
kes_signature: kes_signature.to_bytes_vec()?,
7784
operational_certificate: operational_certificate.to_bytes_vec()?,
85+
kes_period,
7886
};
7987
dmq_message.msg_id = compute_msg_id(&dmq_message);
8088

@@ -136,6 +144,7 @@ mod tests {
136144
ttl: 100,
137145
kes_signature: kes_signature.to_bytes_vec().unwrap(),
138146
operational_certificate: operational_certificate.to_bytes_vec().unwrap(),
147+
kes_period: 0,
139148
},
140149
DmqMsg {
141150
msg_id: vec![],

0 commit comments

Comments
 (0)