libwebsockets
Lightweight C library for HTML5 websockets
lws-plugin-ssh.h File Reference

Go to the source code of this file.

Data Structures

struct  lws_ssh_pty
 
struct  lws_ssh_ops
 

Macros

#define LWS_CALLBACK_SSH_UART_SET_RXFLOW   (LWS_CALLBACK_USER + 800)
 
#define LWS_SSH_OPS_VERSION   2
 
#define SSHMO_TTY_OP_END   0 /* Indicates end of options. */
 
#define SSHMO_VINTR
 
#define SSHMO_VQUIT
 
#define SSHMO_VERASE   3 /* Erase the character to left of the cursor. */
 
#define SSHMO_VKILL   4 /* Kill the current input line. */
 
#define SSHMO_VEOF
 
#define SSHMO_VEOL
 
#define SSHMO_VEOL2   7 /* Additional end-of-line character. */
 
#define SSHMO_VSTART
 
#define SSHMO_VSTOP   9 /* Pauses output (normally control-S). */
 
#define SSHMO_VSUSP   10 /* Suspends the current program. */
 
#define SSHMO_VDSUSP   11 /* Another suspend character. */
 
#define SSHMO_VREPRINT   12 /* Reprints the current input line. */
 
#define SSHMO_VWERASE   13 /* Erases a word left of cursor. */
 
#define SSHMO_VLNEXT
 
#define SSHMO_VFLUSH   15 /* Character to flush output. */
 
#define SSHMO_VSWTCH   16 /* Switch to a different shell layer. */
 
#define SSHMO_VSTATUS
 
#define SSHMO_VDISCARD   18 /* Toggles the flushing of terminal output. */
 
#define SSHMO_IGNPAR
 
#define SSHMO_PARMRK   31 /* Mark parity and framing errors. */
 
#define SSHMO_INPCK   32 /* Enable checking of parity errors. */
 
#define SSHMO_ISTRIP   33 /* Strip 8th bit off characters. */
 
#define SSHMO_INLCR   34 /* Map NL into CR on input. */
 
#define SSHMO_IGNCR   35 /* Ignore CR on input. */
 
#define SSHMO_ICRNL   36 /* Map CR to NL on input. */
 
#define SSHMO_IUCLC   37 /* Translate uppercase characters to lowercase. */
 
#define SSHMO_IXON   38 /* Enable output flow control. */
 
#define SSHMO_IXANY   39 /* Any char will restart after stop. */
 
#define SSHMO_IXOFF   40 /* Enable input flow control. */
 
#define SSHMO_IMAXBEL   41 /* Ring bell on input queue full. */
 
#define SSHMO_ISIG   50 /* Enable signals INTR, QUIT, [D]SUSP. */
 
#define SSHMO_ICANON   51 /* Canonicalize input lines. */
 
#define SSHMO_XCASE
 
#define SSHMO_ECHO   53 /* Enable echoing. */
 
#define SSHMO_ECHOE   54 /* Visually erase chars. */
 
#define SSHMO_ECHOK   55 /* Kill character discards current line. */
 
#define SSHMO_ECHONL   56 /* Echo NL even if ECHO is off. */
 
#define SSHMO_NOFLSH   57 /* Don't flush after interrupt. */
 
#define SSHMO_TOSTOP   58 /* Stop background jobs from output. */
 
#define SSHMO_IEXTEN   59 /* Enable extensions. */
 
#define SSHMO_ECHOCTL   60 /* Echo control characters as ^(Char). */
 
#define SSHMO_ECHOKE   61 /* Visual erase for line kill. */
 
#define SSHMO_PENDIN   62 /* Retype pending input. */
 
#define SSHMO_OPOST   70 /* Enable output processing. */
 
#define SSHMO_OLCUC   71 /* Convert lowercase to uppercase. */
 
#define SSHMO_ONLCR   72 /* Map NL to CR-NL. */
 
#define SSHMO_OCRNL   73 /* Translate carriage return to newline (out). */
 
#define SSHMO_ONOCR   74 /* Translate newline to CR-newline (out). */
 
#define SSHMO_ONLRET   75 /* Newline performs a carriage return (out). */
 
#define SSHMO_CS7   90 /* 7 bit mode. */
 
#define SSHMO_CS8   91 /* 8 bit mode. */
 
#define SSHMO_PARENB   92 /* Parity enable. */
 
#define SSHMO_PARODD   93 /* Odd parity, else even. */
 
#define SSHMO_TTY_OP_ISPEED
 
#define SSHMO_TTY_OP_OSPEED
 

Typedefs

typedef void(* lws_ssh_finish_exec) (void *handle, int retcode)
 

Data Structure Documentation

◆ lws_ssh_pty

struct lws_ssh_pty

Definition at line 32 of file lws-plugin-ssh.h.

+ Collaboration diagram for lws_ssh_pty:
Data Fields
char term[16]
char * modes
uint32_t width_ch
uint32_t height_ch
uint32_t width_px
uint32_t height_px
uint32_t modes_len

Macro Definition Documentation

◆ LWS_CALLBACK_SSH_UART_SET_RXFLOW

#define LWS_CALLBACK_SSH_UART_SET_RXFLOW   (LWS_CALLBACK_USER + 800)

Definition at line 28 of file lws-plugin-ssh.h.

◆ LWS_SSH_OPS_VERSION

#define LWS_SSH_OPS_VERSION   2

Definition at line 30 of file lws-plugin-ssh.h.

◆ SSHMO_TTY_OP_END

#define SSHMO_TTY_OP_END   0 /* Indicates end of options. */

Definition at line 42 of file lws-plugin-ssh.h.

◆ SSHMO_VINTR

#define SSHMO_VINTR
Value:
1 /* Interrupt character; 255 if none. Similarly
* for the other characters. Not all of these
* characters are supported on all systems. */

Definition at line 43 of file lws-plugin-ssh.h.

◆ SSHMO_VQUIT

#define SSHMO_VQUIT
Value:
2 /* The quit character (sends SIGQUIT signal on
* POSIX systems). */

Definition at line 44 of file lws-plugin-ssh.h.

◆ SSHMO_VERASE

#define SSHMO_VERASE   3 /* Erase the character to left of the cursor. */

Definition at line 45 of file lws-plugin-ssh.h.

◆ SSHMO_VKILL

#define SSHMO_VKILL   4 /* Kill the current input line. */

Definition at line 46 of file lws-plugin-ssh.h.

◆ SSHMO_VEOF

#define SSHMO_VEOF
Value:
5 /* End-of-file character (sends EOF from the
* terminal). */

Definition at line 47 of file lws-plugin-ssh.h.

◆ SSHMO_VEOL

#define SSHMO_VEOL
Value:
6 /* End-of-line character in addition to
* carriage return and/or linefeed. */

Definition at line 48 of file lws-plugin-ssh.h.

◆ SSHMO_VEOL2

#define SSHMO_VEOL2   7 /* Additional end-of-line character. */

Definition at line 49 of file lws-plugin-ssh.h.

◆ SSHMO_VSTART

#define SSHMO_VSTART
Value:
8 /* Continues paused output (normally
* control-Q). */

Definition at line 50 of file lws-plugin-ssh.h.

◆ SSHMO_VSTOP

#define SSHMO_VSTOP   9 /* Pauses output (normally control-S). */

Definition at line 51 of file lws-plugin-ssh.h.

◆ SSHMO_VSUSP

#define SSHMO_VSUSP   10 /* Suspends the current program. */

Definition at line 52 of file lws-plugin-ssh.h.

◆ SSHMO_VDSUSP

#define SSHMO_VDSUSP   11 /* Another suspend character. */

Definition at line 53 of file lws-plugin-ssh.h.

◆ SSHMO_VREPRINT

#define SSHMO_VREPRINT   12 /* Reprints the current input line. */

Definition at line 54 of file lws-plugin-ssh.h.

◆ SSHMO_VWERASE

#define SSHMO_VWERASE   13 /* Erases a word left of cursor. */

Definition at line 55 of file lws-plugin-ssh.h.

◆ SSHMO_VLNEXT

#define SSHMO_VLNEXT
Value:
14 /* Enter the next character typed literally,
* even if it is a special character */

Definition at line 56 of file lws-plugin-ssh.h.

◆ SSHMO_VFLUSH

#define SSHMO_VFLUSH   15 /* Character to flush output. */

Definition at line 57 of file lws-plugin-ssh.h.

◆ SSHMO_VSWTCH

#define SSHMO_VSWTCH   16 /* Switch to a different shell layer. */

Definition at line 58 of file lws-plugin-ssh.h.

◆ SSHMO_VSTATUS

#define SSHMO_VSTATUS
Value:
17 /* Prints system status line (load, command,
* pid, etc). */

Definition at line 59 of file lws-plugin-ssh.h.

◆ SSHMO_VDISCARD

#define SSHMO_VDISCARD   18 /* Toggles the flushing of terminal output. */

Definition at line 60 of file lws-plugin-ssh.h.

◆ SSHMO_IGNPAR

#define SSHMO_IGNPAR
Value:
30 /* The ignore parity flag. The parameter
* SHOULD be 0 if this flag is FALSE,
* and 1 if it is TRUE. */

Definition at line 61 of file lws-plugin-ssh.h.

◆ SSHMO_PARMRK

#define SSHMO_PARMRK   31 /* Mark parity and framing errors. */

Definition at line 62 of file lws-plugin-ssh.h.

◆ SSHMO_INPCK

#define SSHMO_INPCK   32 /* Enable checking of parity errors. */

Definition at line 63 of file lws-plugin-ssh.h.

◆ SSHMO_ISTRIP

#define SSHMO_ISTRIP   33 /* Strip 8th bit off characters. */

Definition at line 64 of file lws-plugin-ssh.h.

◆ SSHMO_INLCR

#define SSHMO_INLCR   34 /* Map NL into CR on input. */

Definition at line 65 of file lws-plugin-ssh.h.

◆ SSHMO_IGNCR

#define SSHMO_IGNCR   35 /* Ignore CR on input. */

Definition at line 66 of file lws-plugin-ssh.h.

◆ SSHMO_ICRNL

#define SSHMO_ICRNL   36 /* Map CR to NL on input. */

Definition at line 67 of file lws-plugin-ssh.h.

◆ SSHMO_IUCLC

#define SSHMO_IUCLC   37 /* Translate uppercase characters to lowercase. */

Definition at line 68 of file lws-plugin-ssh.h.

◆ SSHMO_IXON

#define SSHMO_IXON   38 /* Enable output flow control. */

Definition at line 69 of file lws-plugin-ssh.h.

◆ SSHMO_IXANY

#define SSHMO_IXANY   39 /* Any char will restart after stop. */

Definition at line 70 of file lws-plugin-ssh.h.

◆ SSHMO_IXOFF

#define SSHMO_IXOFF   40 /* Enable input flow control. */

Definition at line 71 of file lws-plugin-ssh.h.

◆ SSHMO_IMAXBEL

#define SSHMO_IMAXBEL   41 /* Ring bell on input queue full. */

Definition at line 72 of file lws-plugin-ssh.h.

◆ SSHMO_ISIG

#define SSHMO_ISIG   50 /* Enable signals INTR, QUIT, [D]SUSP. */

Definition at line 73 of file lws-plugin-ssh.h.

◆ SSHMO_ICANON

#define SSHMO_ICANON   51 /* Canonicalize input lines. */

Definition at line 74 of file lws-plugin-ssh.h.

◆ SSHMO_XCASE

#define SSHMO_XCASE
Value:
52 /* Enable input and output of uppercase
* characters by preceding their lowercase
* equivalents with "\". */

Definition at line 75 of file lws-plugin-ssh.h.

◆ SSHMO_ECHO

#define SSHMO_ECHO   53 /* Enable echoing. */

Definition at line 76 of file lws-plugin-ssh.h.

◆ SSHMO_ECHOE

#define SSHMO_ECHOE   54 /* Visually erase chars. */

Definition at line 77 of file lws-plugin-ssh.h.

◆ SSHMO_ECHOK

#define SSHMO_ECHOK   55 /* Kill character discards current line. */

Definition at line 78 of file lws-plugin-ssh.h.

◆ SSHMO_ECHONL

#define SSHMO_ECHONL   56 /* Echo NL even if ECHO is off. */

Definition at line 79 of file lws-plugin-ssh.h.

◆ SSHMO_NOFLSH

#define SSHMO_NOFLSH   57 /* Don't flush after interrupt. */

Definition at line 80 of file lws-plugin-ssh.h.

◆ SSHMO_TOSTOP

#define SSHMO_TOSTOP   58 /* Stop background jobs from output. */

Definition at line 81 of file lws-plugin-ssh.h.

◆ SSHMO_IEXTEN

#define SSHMO_IEXTEN   59 /* Enable extensions. */

Definition at line 82 of file lws-plugin-ssh.h.

◆ SSHMO_ECHOCTL

#define SSHMO_ECHOCTL   60 /* Echo control characters as ^(Char). */

Definition at line 83 of file lws-plugin-ssh.h.

◆ SSHMO_ECHOKE

#define SSHMO_ECHOKE   61 /* Visual erase for line kill. */

Definition at line 84 of file lws-plugin-ssh.h.

◆ SSHMO_PENDIN

#define SSHMO_PENDIN   62 /* Retype pending input. */

Definition at line 85 of file lws-plugin-ssh.h.

◆ SSHMO_OPOST

#define SSHMO_OPOST   70 /* Enable output processing. */

Definition at line 86 of file lws-plugin-ssh.h.

◆ SSHMO_OLCUC

#define SSHMO_OLCUC   71 /* Convert lowercase to uppercase. */

Definition at line 87 of file lws-plugin-ssh.h.

◆ SSHMO_ONLCR

#define SSHMO_ONLCR   72 /* Map NL to CR-NL. */

Definition at line 88 of file lws-plugin-ssh.h.

◆ SSHMO_OCRNL

#define SSHMO_OCRNL   73 /* Translate carriage return to newline (out). */

Definition at line 89 of file lws-plugin-ssh.h.

◆ SSHMO_ONOCR

#define SSHMO_ONOCR   74 /* Translate newline to CR-newline (out). */

Definition at line 90 of file lws-plugin-ssh.h.

◆ SSHMO_ONLRET

#define SSHMO_ONLRET   75 /* Newline performs a carriage return (out). */

Definition at line 91 of file lws-plugin-ssh.h.

◆ SSHMO_CS7

#define SSHMO_CS7   90 /* 7 bit mode. */

Definition at line 92 of file lws-plugin-ssh.h.

◆ SSHMO_CS8

#define SSHMO_CS8   91 /* 8 bit mode. */

Definition at line 93 of file lws-plugin-ssh.h.

◆ SSHMO_PARENB

#define SSHMO_PARENB   92 /* Parity enable. */

Definition at line 94 of file lws-plugin-ssh.h.

◆ SSHMO_PARODD

#define SSHMO_PARODD   93 /* Odd parity, else even. */

Definition at line 95 of file lws-plugin-ssh.h.

◆ SSHMO_TTY_OP_ISPEED

#define SSHMO_TTY_OP_ISPEED
Value:
128 /* Specifies the input baud rate in
* bits per second. */

Definition at line 96 of file lws-plugin-ssh.h.

◆ SSHMO_TTY_OP_OSPEED

#define SSHMO_TTY_OP_OSPEED
Value:
129 /* Specifies the output baud rate in
* bits per second. */

Definition at line 97 of file lws-plugin-ssh.h.