#include <wire/onion_defs.h>
tlvtype,tlv_payload,amt_to_forward,2
tlvdata,tlv_payload,amt_to_forward,amt_to_forward,tu64,
tlvtype,tlv_payload,outgoing_cltv_value,4
tlvdata,tlv_payload,outgoing_cltv_value,outgoing_cltv_value,tu32,
tlvtype,tlv_payload,short_channel_id,6
tlvdata,tlv_payload,short_channel_id,short_channel_id,short_channel_id,
tlvtype,tlv_payload,payment_data,8
tlvdata,tlv_payload,payment_data,payment_secret,byte,32
tlvdata,tlv_payload,payment_data,total_msat,tu64,
tlvtype,tlv_payload,payment_metadata,16
tlvdata,tlv_payload,payment_metadata,payment_metadata,byte,...
tlvtype,obs2_onionmsg_payload,reply_path,2
tlvdata,obs2_onionmsg_payload,reply_path,first_node_id,point,
tlvdata,obs2_onionmsg_payload,reply_path,blinding,point,
tlvdata,obs2_onionmsg_payload,reply_path,path,onionmsg_path,...
tlvtype,obs2_onionmsg_payload,enctlv,10
tlvdata,obs2_onionmsg_payload,enctlv,enctlv,byte,...
tlvtype,obs2_onionmsg_payload,invoice_request,64
tlvdata,obs2_onionmsg_payload,invoice_request,invoice_request,byte,...
tlvtype,obs2_onionmsg_payload,invoice,66
tlvdata,obs2_onionmsg_payload,invoice,invoice,byte,...
tlvtype,obs2_onionmsg_payload,invoice_error,68
tlvdata,obs2_onionmsg_payload,invoice_error,invoice_error,byte,...
tlvtype,obs2_encmsg_tlvs,padding,1
tlvdata,obs2_encmsg_tlvs,padding,pad,byte,...
tlvtype,obs2_encmsg_tlvs,next_node_id,4
tlvdata,obs2_encmsg_tlvs,next_node_id,node_id,point,
tlvtype,obs2_encmsg_tlvs,next_blinding,12
tlvdata,obs2_encmsg_tlvs,next_blinding,blinding,point,
tlvtype,obs2_encmsg_tlvs,self_id,14
tlvdata,obs2_encmsg_tlvs,self_id,data,byte,...
tlvtype,tlv_payload,encrypted_recipient_data,10
tlvdata,tlv_payload,encrypted_recipient_data,encrypted_data,byte,...
tlvtype,tlv_payload,blinding_point,12
tlvdata,tlv_payload,blinding_point,blinding,point,
tlvtype,encrypted_data_tlv,padding,1
tlvdata,encrypted_data_tlv,padding,padding,byte,...
tlvtype,encrypted_data_tlv,short_channel_id,2
tlvdata,encrypted_data_tlv,short_channel_id,short_channel_id,short_channel_id,
tlvtype,encrypted_data_tlv,next_node_id,4
tlvdata,encrypted_data_tlv,next_node_id,node_id,point,
tlvtype,encrypted_data_tlv,path_id,6
tlvdata,encrypted_data_tlv,path_id,data,byte,...
tlvtype,encrypted_data_tlv,next_blinding_override,8
tlvdata,encrypted_data_tlv,next_blinding_override,blinding,point,
tlvtype,onionmsg_payload,reply_path,2
tlvdata,onionmsg_payload,reply_path,first_node_id,point,
tlvdata,onionmsg_payload,reply_path,blinding,point,
tlvdata,onionmsg_payload,reply_path,path,onionmsg_path,...
tlvtype,onionmsg_payload,encrypted_data_tlv,4
tlvdata,onionmsg_payload,encrypted_data_tlv,encrypted_data_tlv,byte,...
tlvtype,onionmsg_payload,invoice_request,64
tlvdata,onionmsg_payload,invoice_request,invoice_request,byte,...
tlvtype,onionmsg_payload,invoice,66
tlvdata,onionmsg_payload,invoice,invoice,byte,...
tlvtype,onionmsg_payload,invoice_error,68
tlvdata,onionmsg_payload,invoice_error,invoice_error,byte,...
subtype,onionmsg_path
subtypedata,onionmsg_path,node_id,point,
subtypedata,onionmsg_path,enclen,u16,
subtypedata,onionmsg_path,encrypted_recipient_data,byte,enclen
msgtype,invalid_realm,PERM|1
msgtype,temporary_node_failure,NODE|2
msgtype,permanent_node_failure,PERM|NODE|2
msgtype,required_node_feature_missing,PERM|NODE|3
msgtype,invalid_onion_version,BADONION|PERM|4
msgdata,invalid_onion_version,sha256_of_onion,sha256,
msgtype,invalid_onion_hmac,BADONION|PERM|5
msgdata,invalid_onion_hmac,sha256_of_onion,sha256,
msgtype,invalid_onion_key,BADONION|PERM|6
msgdata,invalid_onion_key,sha256_of_onion,sha256,
msgtype,temporary_channel_failure,UPDATE|7
msgdata,temporary_channel_failure,len,u16,
msgdata,temporary_channel_failure,channel_update,byte,len
msgtype,permanent_channel_failure,PERM|8
msgtype,required_channel_feature_missing,PERM|9
msgtype,unknown_next_peer,PERM|10
msgtype,amount_below_minimum,UPDATE|11
msgdata,amount_below_minimum,htlc_msat,u64,
msgdata,amount_below_minimum,len,u16,
msgdata,amount_below_minimum,channel_update,byte,len
msgtype,fee_insufficient,UPDATE|12
msgdata,fee_insufficient,htlc_msat,u64,
msgdata,fee_insufficient,len,u16,
msgdata,fee_insufficient,channel_update,byte,len
msgtype,incorrect_cltv_expiry,UPDATE|13
msgdata,incorrect_cltv_expiry,cltv_expiry,u32,
msgdata,incorrect_cltv_expiry,len,u16,
msgdata,incorrect_cltv_expiry,channel_update,byte,len
msgtype,expiry_too_soon,UPDATE|14
msgdata,expiry_too_soon,len,u16,
msgdata,expiry_too_soon,channel_update,byte,len
msgtype,incorrect_or_unknown_payment_details,PERM|15
msgdata,incorrect_or_unknown_payment_details,htlc_msat,u64,
msgdata,incorrect_or_unknown_payment_details,height,u32,
msgtype,final_incorrect_cltv_expiry,18
msgdata,final_incorrect_cltv_expiry,cltv_expiry,u32,
msgtype,final_incorrect_htlc_amount,19
msgdata,final_incorrect_htlc_amount,incoming_htlc_amt,u64,
msgtype,channel_disabled,UPDATE|20
msgdata,channel_disabled,disabled_flags,u16,
msgdata,channel_disabled,len,u16,
msgdata,channel_disabled,channel_update,byte,len
msgtype,expiry_too_far,21
msgtype,invalid_onion_payload,PERM|22
msgdata,invalid_onion_payload,type,bigsize,
msgdata,invalid_onion_payload,offset,u16,
msgtype,mpp_timeout,23
