Browse Source
If we're already attempting to connect to a peer, we would ignore new connection requests. This is problematic if your node has bad connection details for the node -- you can't update it while inflight. This patch appends new connection suggestions to the list of connections to try. Fixes #4154ppa-prep
niftynei
4 years ago
committed by
neil saitug
3 changed files with 67 additions and 1 deletions
@ -0,0 +1,33 @@ |
|||||
|
#!/usr/bin/env python3 |
||||
|
"""This plugin is used to check that updated connection hints work properly. |
||||
|
|
||||
|
""" |
||||
|
from pyln.client import Plugin |
||||
|
|
||||
|
import socket |
||||
|
import time |
||||
|
|
||||
|
plugin = Plugin() |
||||
|
|
||||
|
|
||||
|
@plugin.async_method('waitconn') |
||||
|
def wait_connection(request, plugin): |
||||
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) |
||||
|
sock.bind(('localhost', 0)) |
||||
|
sock.listen(1) |
||||
|
print("listening for connections on port {}".format(sock.getsockname()[1])) |
||||
|
|
||||
|
# We are a one and done socket connection! |
||||
|
conn, client_addr = sock.accept() |
||||
|
try: |
||||
|
print("connection from {}".format(client_addr)) |
||||
|
time.sleep(3) |
||||
|
|
||||
|
finally: |
||||
|
conn.close() |
||||
|
|
||||
|
print("closing socket") |
||||
|
sock.close() |
||||
|
|
||||
|
|
||||
|
plugin.run() |
Loading…
Reference in new issue