Synchronet v3.19b-Win32 (install) has been released (Jan-2022).

You can donate to the Synchronet project using PayPal.

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
server:terminal [2019/06/08 15:17] – Document the terminal server key bindings digital manserver:terminal [2019/06/20 17:09] – [SSH] document the cryptlib.key file here. digital man
Line 18: Line 18:
 ==== Global Ctrl-Keys ==== ==== Global Ctrl-Keys ====
  
-These control-key combinations has special purpose at almost any-time while using the Terminal Server:+These control-key combinations have special purpose at almost any-time while using the Terminal Server:
  
 ^ Ctrl-Key ^ Description ^ ^ Ctrl-Key ^ Description ^
Line 29: Line 29:
 | Ctrl-T   | Display current time information | | Ctrl-T   | Display current time information |
  
 +Global control-keys are handled in sbbs_t::handle_ctrlkey(), called from sbbs_t::inkey() in ''inkey.cpp'' and exposed in JavaScript via console.inkey().
 +
 +Global control key handling may be disabled/re-enabled (per key) programmatically via the JavaScript console.ctrlkey_passthru property:
 + js.on_exit("console.ctrlkey_passthru = " + console.ctrlkey_passthru);
 + console.ctrlkey_passthru|=(1<<16);      // Disable Ctrl-P handling in sbbs
 +
 +Custom global control-key handlers may be installed via [[util:SCFG]]->External Programs->Global Hot Key Events:
 +
 +<file>
 +╔═══════════════════════════════════════════╗
 +║           Global Hot Key Events           ║
 +╠═══════════════════════════════════════════╣
 +║ │Ctrl-P    ?privatemsg.js                 ║
 +║ │Ctrl-U    ?nodelist.js -active           ║
 +║ │                                         ║
 +╚═══════════════════════════════════════════╝
 +</file>
 ==== Line Input ==== ==== Line Input ====
  
Line 43: Line 60:
 | Ctrl-Z   | Undo (revert edited line) | | Ctrl-Z   | Undo (revert edited line) |
 | Ctrl-R   | Redraw current line | | Ctrl-R   | Redraw current line |
-| Ctrl-A   | Insert an attribute code (when allowed) |+| Ctrl-A   | Insert an [[custom:ctrl-a_codes|attribute code]] (when allowed) |
 | Ctrl-G   | Insert a beep character (when allowed) | | Ctrl-G   | Insert a beep character (when allowed) |
 +
 +The line/string input control-keys are handled via sbbs_t::getstr() in ''getstr.cpp'' and exposed in JavaScript via console.getstr().
  
 ==== Extended Keys ==== ==== Extended Keys ====
  
-The Synchronet Terminal Server endeavors to support most extended-keys (e.g. home, end, arrow-keys, etc.) on most terminals while simultaneously supporting Ctrl-Key equivalents for all terminals.+The Synchronet Terminal Server endeavors to support most extended-keys (e.g. home, end, arrow-keys, etc.) on most terminals while simultaneously supporting control-key equivalents for all terminals.
  
 ^ Extended Key ^ Ctrl-Key ^ ANSI((ANSI X3.64/ECMA-048 escape sequence)) ^ Other((e.g. VT-220 or XTerm escape sequence)) ^ Description (typical use) ^  ^ Extended Key ^ Ctrl-Key ^ ANSI((ANSI X3.64/ECMA-048 escape sequence)) ^ Other((e.g. VT-220 or XTerm escape sequence)) ^ Description (typical use) ^ 
Line 74: Line 93:
 SSHv2 support provided by [[dev:dependencies#cryptlib]]. SSHv2 support provided by [[dev:dependencies#cryptlib]].
  
 +==== cryptlib.key ====
 +
 +The SSH private key is stored in the file ''[[dir:ctrl]]/cryptlib.key'' and is encrypted with the configured System Password (from [[util:SCFG]]->System). If the System Password is changed **after** the ''cryptlib.key'' file has been generated (and encrypted), you will need to delete the key file and recycle the terminal server for the key file to be regenerated and re-encrypted with the new System Password.
 +
 +The following Terminal Server log message indicates a problem decrypting the ''cryptlib.key'' file:
 +  'Couldn't import the session key used to protect the private key' (-22) getting private key
 ===== RLogin ===== ===== RLogin =====
 [[ftp://ftp.rfc-editor.org/in-notes/rfc1282.txt|RLogin]] clients are supported, by default, on the standard RLogin TCP port: 513. [[ftp://ftp.rfc-editor.org/in-notes/rfc1282.txt|RLogin]] clients are supported, by default, on the standard RLogin TCP port: 513.