mirror of
https://github.com/aljazceru/lightning.git
synced 2025-12-21 08:04:26 +01:00
plugins: simplify htlc_accepted hook payload-setting API.
As discussed with Christian, prepending the length to the payload returned is awkward, but it's the only way to set a legacy payload. As this will be soon deprecated, simplify the external API. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
This commit is contained in:
@@ -13,11 +13,16 @@ plugin = Plugin()
|
||||
def on_htlc_accepted(htlc, onion, plugin, **kwargs):
|
||||
# eg. '2902017b04016d0821fff5b6bd5018c8731aa0496c3698ef49f132ef9a3000c94436f4957e79a2f8827b'
|
||||
# (but values change depending on pay's randomness!)
|
||||
print("payload was:{}".format(onion['payload']))
|
||||
assert onion['payload'][0:2] == '29'
|
||||
|
||||
if plugin.replace_payload == 'corrupt_secret':
|
||||
# Note: we don't include length prefix in returned payload, since it doesn't
|
||||
# support the pre-TLV legacy form.
|
||||
if onion['payload'][18] == '0':
|
||||
newpayload = onion['payload'][:18] + '1' + onion['payload'][19:]
|
||||
newpayload = onion['payload'][2:18] + '1' + onion['payload'][19:]
|
||||
else:
|
||||
newpayload = onion['payload'][:18] + '0' + onion['payload'][19:]
|
||||
newpayload = onion['payload'][2:18] + '0' + onion['payload'][19:]
|
||||
else:
|
||||
newpayload = plugin.replace_payload
|
||||
print("payload was:{}".format(onion['payload']))
|
||||
|
||||
Reference in New Issue
Block a user