Skip to content

Commit 4b9f000

Browse files
Fix blinded payment TLV ser to not length-prefix
impl_writeable_tlv_based includes a length prefix to the TLV stream, which we don't want.
1 parent b8c9b22 commit 4b9f000

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

lightning/src/blinded_path/payment.rs

+20-10
Original file line numberDiff line numberDiff line change
@@ -88,17 +88,27 @@ pub struct PaymentConstraints {
8888
pub htlc_minimum_msat: u64,
8989
}
9090

91-
impl_writeable_tlv_based!(ForwardTlvs, {
92-
(2, short_channel_id, required),
93-
(10, payment_relay, required),
94-
(12, payment_constraints, required),
95-
(14, features, required),
96-
});
91+
impl Writeable for ForwardTlvs {
92+
fn write<W: Writer>(&self, w: &mut W) -> Result<(), io::Error> {
93+
encode_tlv_stream!(w, {
94+
(2, self.short_channel_id, required),
95+
(10, self.payment_relay, required),
96+
(12, self.payment_constraints, required),
97+
(14, self.features, required)
98+
});
99+
Ok(())
100+
}
101+
}
97102

98-
impl_writeable_tlv_based!(ReceiveTlvs, {
99-
(12, payment_constraints, required),
100-
(65536, payment_secret, required),
101-
});
103+
impl Writeable for ReceiveTlvs {
104+
fn write<W: Writer>(&self, w: &mut W) -> Result<(), io::Error> {
105+
encode_tlv_stream!(w, {
106+
(12, self.payment_constraints, required),
107+
(65536, self.payment_secret, required)
108+
});
109+
Ok(())
110+
}
111+
}
102112

103113
impl<'a> Writeable for BlindedPaymentTlvsRef<'a> {
104114
fn write<W: Writer>(&self, w: &mut W) -> Result<(), io::Error> {

0 commit comments

Comments
 (0)