Because of this issue, eclair requires payment secret when sending probes: ACINQ/eclair#1810 (comment)
Right now I'm getting:
INFO [lightning::ln::onion_utils:579] Onion Error[from 03864ef025fde8fb587d989186ce6a4a186895ee44a926bfc370e2c366597a3f8f: invalid_onion_payload(0x4016)] Node indicated that the decrypted onion per-hop payload was not understood by it or is incomplete
And I think it's because when sending probes, it uses sponaneous_empty which does not send payment secret.
| matchself.pay_route_internal(&route, payment_hash,RecipientOnionFields::spontaneous_empty(), |
| None, payment_id,None, onion_session_privs, node_signer, best_block_height,&send_payment_along_path |
| ){ |
| Ok(()) => Ok((payment_hash, payment_id)), |
| Err(e) => { |
| self.remove_outbound_if_all_failed(payment_id,&e); |
| Err(e) |
| } |
| } |
| } |
| pubfnspontaneous_empty() -> Self{ |
| Self{payment_secret:None,payment_metadata:None,custom_tlvs:Vec::new()} |
| } |
Would always sending payment secret be the right approach? Don't all nodes support it at this point? Or would allowing send_probe to pass through RecipientOnionFields be a work around and I can hardcode their node pubkey for it.
Because of this issue, eclair requires payment secret when sending probes: ACINQ/eclair#1810 (comment)
Right now I'm getting:
And I think it's because when sending probes, it uses
sponaneous_emptywhich does not send payment secret.rust-lightning/lightning/src/ln/outbound_payment.rs
Lines 984 to 993 in 3dffe54
rust-lightning/lightning/src/ln/outbound_payment.rs
Lines 461 to 463 in 3dffe54
Would always sending payment secret be the right approach? Don't all nodes support it at this point? Or would allowing
send_probeto pass throughRecipientOnionFieldsbe a work around and I can hardcode their node pubkey for it.