fix privkey in request_force_close_from_backup
This commit is contained in:
@@ -2141,6 +2141,7 @@ class LNWallet(LNWorker):
|
|||||||
self.logger.info(f'requesting channel force close: {channel_id.hex()}')
|
self.logger.info(f'requesting channel force close: {channel_id.hex()}')
|
||||||
if isinstance(cb, ImportedChannelBackupStorage):
|
if isinstance(cb, ImportedChannelBackupStorage):
|
||||||
node_id = cb.node_id
|
node_id = cb.node_id
|
||||||
|
privkey = cb.privkey
|
||||||
addresses = [(cb.host, cb.port, 0)]
|
addresses = [(cb.host, cb.port, 0)]
|
||||||
# TODO also try network addresses from gossip db (as it might have changed)
|
# TODO also try network addresses from gossip db (as it might have changed)
|
||||||
else:
|
else:
|
||||||
@@ -2148,12 +2149,13 @@ class LNWallet(LNWorker):
|
|||||||
if not self.channel_db:
|
if not self.channel_db:
|
||||||
raise Exception('Enable gossip first')
|
raise Exception('Enable gossip first')
|
||||||
node_id = self.network.channel_db.get_node_by_prefix(cb.node_id_prefix)
|
node_id = self.network.channel_db.get_node_by_prefix(cb.node_id_prefix)
|
||||||
|
privkey = self.node_keypair.privkey
|
||||||
addresses = self.network.channel_db.get_node_addresses(node_id)
|
addresses = self.network.channel_db.get_node_addresses(node_id)
|
||||||
if not addresses:
|
if not addresses:
|
||||||
raise Exception('Peer not found in gossip database')
|
raise Exception('Peer not found in gossip database')
|
||||||
for host, port, timestamp in addresses:
|
for host, port, timestamp in addresses:
|
||||||
peer_addr = LNPeerAddr(host, port, node_id)
|
peer_addr = LNPeerAddr(host, port, node_id)
|
||||||
transport = LNTransport(self.node_keypair.privkey, peer_addr, proxy=self.network.proxy)
|
transport = LNTransport(privkey, peer_addr, proxy=self.network.proxy)
|
||||||
peer = Peer(self, node_id, transport, is_channel_backup=True)
|
peer = Peer(self, node_id, transport, is_channel_backup=True)
|
||||||
try:
|
try:
|
||||||
async with TaskGroup(wait=any) as group:
|
async with TaskGroup(wait=any) as group:
|
||||||
|
|||||||
@@ -137,10 +137,12 @@ if [[ $1 == "backup" ]]; then
|
|||||||
wait_for_balance alice 1
|
wait_for_balance alice 1
|
||||||
echo "alice opens channel"
|
echo "alice opens channel"
|
||||||
bob_node=$($bob nodeid)
|
bob_node=$($bob nodeid)
|
||||||
|
$alice setconfig use_recoverable_channels False
|
||||||
channel=$($alice open_channel $bob_node 0.15)
|
channel=$($alice open_channel $bob_node 0.15)
|
||||||
echo "channel point: $channel"
|
echo "channel point: $channel"
|
||||||
new_blocks 3
|
new_blocks 3
|
||||||
wait_until_channel_open alice
|
wait_until_channel_open alice
|
||||||
|
backup=$($alice export_channel_backup $channel)
|
||||||
request=$($bob add_lightning_request 0.01 -m "blah" | jq -r ".invoice")
|
request=$($bob add_lightning_request 0.01 -m "blah" | jq -r ".invoice")
|
||||||
echo "alice pays"
|
echo "alice pays"
|
||||||
$alice lnpay $request
|
$alice lnpay $request
|
||||||
@@ -150,6 +152,7 @@ if [[ $1 == "backup" ]]; then
|
|||||||
$alice -o restore "$seed"
|
$alice -o restore "$seed"
|
||||||
$alice daemon -d
|
$alice daemon -d
|
||||||
$alice load_wallet
|
$alice load_wallet
|
||||||
|
$alice import_channel_backup $backup
|
||||||
$alice request_force_close $channel
|
$alice request_force_close $channel
|
||||||
wait_for_balance alice 0.989
|
wait_for_balance alice 0.989
|
||||||
fi
|
fi
|
||||||
|
|||||||
Reference in New Issue
Block a user