summaryrefslogtreecommitdiffstats
path: root/examples/asyncio-ssh-python-embed.py
diff options
context:
space:
mode:
authorDaniel Baumann <mail@daniel-baumann.ch>2023-12-17 10:46:44 +0000
committerDaniel Baumann <mail@daniel-baumann.ch>2023-12-17 10:46:44 +0000
commit70b47719c91522ab53abc763eb6da3b62c1a00c9 (patch)
treedb7906833e1af835fb2addf0c220f00904969cd7 /examples/asyncio-ssh-python-embed.py
parentReleasing debian version 3.0.23-3. (diff)
downloadptpython-70b47719c91522ab53abc763eb6da3b62c1a00c9.tar.xz
ptpython-70b47719c91522ab53abc763eb6da3b62c1a00c9.zip
Merging upstream version 3.0.25.
Signed-off-by: Daniel Baumann <mail@daniel-baumann.ch>
Diffstat (limited to 'examples/asyncio-ssh-python-embed.py')
-rwxr-xr-xexamples/asyncio-ssh-python-embed.py18
1 files changed, 6 insertions, 12 deletions
diff --git a/examples/asyncio-ssh-python-embed.py b/examples/asyncio-ssh-python-embed.py
index 86b5607..be0689e 100755
--- a/examples/asyncio-ssh-python-embed.py
+++ b/examples/asyncio-ssh-python-embed.py
@@ -32,31 +32,25 @@ class MySSHServer(asyncssh.SSHServer):
return ReplSSHServerSession(self.get_namespace)
-def main(port=8222):
+async def main(port: int = 8222) -> None:
"""
Example that starts the REPL through an SSH server.
"""
- loop = asyncio.get_event_loop()
-
# Namespace exposed in the REPL.
environ = {"hello": "world"}
# Start SSH server.
- def create_server():
+ def create_server() -> MySSHServer:
return MySSHServer(lambda: environ)
print("Listening on :%i" % port)
print('To connect, do "ssh localhost -p %i"' % port)
- loop.run_until_complete(
- asyncssh.create_server(
- create_server, "", port, server_host_keys=["/etc/ssh/ssh_host_dsa_key"]
- )
+ await asyncssh.create_server(
+ create_server, "", port, server_host_keys=["/etc/ssh/ssh_host_dsa_key"]
)
-
- # Run eventloop.
- loop.run_forever()
+ await asyncio.Future() # Wait forever.
if __name__ == "__main__":
- main()
+ asyncio.run(main())