mirror of
https://github.com/ElementsProject/lightning.git
synced 2025-03-01 17:47:30 +01:00
EXPERIMENTAL: protocol TLV field for update_add_htlc to support blinding.
All NULL for now. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
parent
a9fe1a3c08
commit
990a3ec92e
3 changed files with 42 additions and 5 deletions
|
@ -621,10 +621,17 @@ static void handle_peer_add_htlc(struct peer *peer, const u8 *msg)
|
|||
u8 onion_routing_packet[TOTAL_PACKET_SIZE];
|
||||
enum channel_add_err add_err;
|
||||
struct htlc *htlc;
|
||||
#if EXPERIMENTAL_FEATURES
|
||||
struct tlv_update_add_tlvs *tlvs = tlv_update_add_tlvs_new(msg);
|
||||
#endif
|
||||
|
||||
if (!fromwire_update_add_htlc(msg, &channel_id, &id, &amount,
|
||||
&payment_hash, &cltv_expiry,
|
||||
onion_routing_packet))
|
||||
onion_routing_packet
|
||||
#if EXPERIMENTAL_FEATURES
|
||||
, tlvs
|
||||
#endif
|
||||
))
|
||||
peer_failed(peer->pps,
|
||||
&peer->channel_id,
|
||||
"Bad peer_add_htlc %s", tal_hex(msg, msg));
|
||||
|
@ -2050,7 +2057,11 @@ static void resend_commitment(struct peer *peer, const struct changed_htlc *last
|
|||
&h->rhash,
|
||||
abs_locktime_to_blocks(
|
||||
&h->expiry),
|
||||
h->routing);
|
||||
h->routing
|
||||
#if EXPERIMENTAL_FEATURES
|
||||
, NULL
|
||||
#endif
|
||||
);
|
||||
sync_crypto_write(peer->pps, take(msg));
|
||||
} else if (h->state == SENT_REMOVE_COMMIT) {
|
||||
send_fail_or_fulfill(peer, h);
|
||||
|
@ -2685,7 +2696,11 @@ static void handle_offer_htlc(struct peer *peer, const u8 *inmsg)
|
|||
msg = towire_update_add_htlc(NULL, &peer->channel_id,
|
||||
peer->htlc_id, amount,
|
||||
&payment_hash, cltv_expiry,
|
||||
onion_routing_packet);
|
||||
onion_routing_packet
|
||||
#if EXPERIMENTAL_FEATURES
|
||||
, NULL
|
||||
#endif
|
||||
);
|
||||
sync_crypto_write(peer->pps, take(msg));
|
||||
start_commit_timer(peer);
|
||||
/* Tell the master. */
|
||||
|
|
14
wire/extracted_peer_experimental_add_htlc-plus-blinding
Normal file
14
wire/extracted_peer_experimental_add_htlc-plus-blinding
Normal file
|
@ -0,0 +1,14 @@
|
|||
diff --git a/wire/extracted_peer_wire_csv b/wire/extracted_peer_wire_csv
|
||||
index 5a2a8c23f..7b26242e3 100644
|
||||
--- a/wire/extracted_peer_wire_csv
|
||||
+++ b/wire/extracted_peer_wire_csv
|
||||
@@ -95,6 +95,9 @@ msgdata,update_add_htlc,amount_msat,u64,
|
||||
msgdata,update_add_htlc,payment_hash,sha256,
|
||||
msgdata,update_add_htlc,cltv_expiry,u32,
|
||||
msgdata,update_add_htlc,onion_routing_packet,byte,1366
|
||||
+msgdata,update_add_htlc,tlvs,update_add_tlvs,
|
||||
+tlvtype,update_add_tlvs,blinding,2
|
||||
+tlvdata,update_add_tlvs,blinding,ecdh,byte,32
|
||||
msgtype,update_fulfill_htlc,130
|
||||
msgdata,update_fulfill_htlc,channel_id,channel_id,
|
||||
msgdata,update_fulfill_htlc,id,u64,
|
|
@ -704,7 +704,11 @@ static void *towire_struct_update_add_htlc(const tal_t *ctx,
|
|||
s->amount_msat,
|
||||
&s->payment_hash,
|
||||
s->expiry,
|
||||
s->onion_routing_packet);
|
||||
s->onion_routing_packet
|
||||
#if EXPERIMENTAL_FEATURES
|
||||
,NULL
|
||||
#endif
|
||||
);
|
||||
}
|
||||
|
||||
static struct msg_update_add_htlc *fromwire_struct_update_add_htlc(const tal_t *ctx, const void *p)
|
||||
|
@ -717,7 +721,11 @@ static struct msg_update_add_htlc *fromwire_struct_update_add_htlc(const tal_t *
|
|||
&s->amount_msat,
|
||||
&s->payment_hash,
|
||||
&s->expiry,
|
||||
s->onion_routing_packet))
|
||||
s->onion_routing_packet
|
||||
#if EXPERIMENTAL_FEATURES
|
||||
,NULL
|
||||
#endif
|
||||
))
|
||||
return s;
|
||||
return tal_free(s);
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue