Skip to content

Commit 7a7c745

Browse files
authored
Jq/some mud protocols (jquast#114)
* MUD protocol support, --connect-timeout, and code modernization - Add MUD protocol module (telnetlib3/mud.py) with MCCP, MSSP, GMCP, MSDP - Add MUD server example (bin/server_mud.py) with readline and wcwidth support - Add --connect-timeout option, closes #30 - Refactor server shell, guard shells, and fingerprinting - Improve typing, formatting (skip-magic-trailing-comma), and test coverage - Give latin1 encoding fallback for unidentified clients - Update docs with MUD protocol guidance and RFC references
1 parent 1149ab2 commit 7a7c745

56 files changed

Lines changed: 3116 additions & 1446 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.editorconfig

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
root = true
2+
3+
[*.py]
4+
charset = utf-8
5+
tab_width = 4
6+
indent_size = tab
7+
indent_space = space
8+
trim_trailing_whitespace = true
9+
insert_final_newline = true
10+
max_line_length = 100

README.rst

Lines changed: 0 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -72,40 +72,6 @@ program.
7272
telnetlib3-server 0.0.0.0 1984 --shell=bin.server_wargame.shell
7373
telnetlib3-server --pty-exec /bin/bash -- --login
7474

75-
Fingerprinting Server
76-
---------------------
77-
78-
A built-in fingerprinting server shell is provided to uniquely identify telnet clients.
79-
80-
Install with optional dependencies for full fingerprinting support (prettytable_
81-
and ucs-detect_)::
82-
83-
pip install telnetlib3[extras]
84-
85-
Usage::
86-
87-
export TELNETLIB3_DATA_DIR=./data
88-
telnetlib3-server --shell telnetlib3.fingerprinting_server_shell
89-
90-
A public fingerprinting server you can try out yourself::
91-
92-
telnet 1984.ws 555
93-
94-
An optional post-fingerprint hook can process saved files. The hook is run as
95-
``python -m <module> <filepath>``. The built-in post-script pretty-prints the JSON
96-
and integrates with ucs-detect_ for terminal capability probing::
97-
98-
export TELNETLIB3_DATA_DIR=./fingerprints
99-
export TELNETLIB3_FINGERPRINT_POST_SCRIPT=telnetlib3.fingerprinting
100-
telnetlib3-server --shell telnetlib3.fingerprinting_server_shell
101-
102-
If ucs-detect_ is installed and available in PATH, the post-script automatically
103-
runs it to probe terminal capabilities (colors, sixel, kitty graphics, etc.) and
104-
adds the results to the fingerprint data as ``terminal-fingerprint-data``.
105-
106-
.. _ucs-detect: https://github.com/jquast/ucs-detect
107-
.. _prettytable: https://pypi.org/project/prettytable/
108-
10975
Legacy telnetlib
11076
----------------
11177

0 commit comments

Comments
 (0)