mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-12-29 10:04:41 +01:00
197a144505
We now track all pending RPC passthrough calls, and terminate them with an error if the plugin dies. Changelog-Fixed: JSON-RPC: Pending RPC method calls are now terminated if the handling plugin exits prematurely.
27 lines
530 B
Python
Executable File
27 lines
530 B
Python
Executable File
#!/usr/bin/env python3
|
|
|
|
from pyln.client import Plugin
|
|
import sys
|
|
|
|
|
|
plugin = Plugin()
|
|
|
|
|
|
@plugin.async_method('hold-rpc-call')
|
|
def hold_rpc_call(plugin, request):
|
|
"""Simply never return, it should still get an error when the plugin crashes
|
|
"""
|
|
|
|
|
|
@plugin.hook('htlc_accepted')
|
|
def on_htlc_accepted(plugin, htlc, onion, **kwargs):
|
|
"""We die silently, i.e., without returning a response
|
|
|
|
`lightningd` should detect that and recover.
|
|
"""
|
|
plugin.log("Plugin is about to crash...")
|
|
sys.exit(1)
|
|
|
|
|
|
plugin.run()
|