mirror of https://gerrit.osmocom.org/libtelnet
will/wont states before do/wont, just like actual telnet codes and event numbers
This commit is contained in:
parent
b43c10c9ee
commit
447d3ad9f8
20
libtelnet.c
20
libtelnet.c
|
@ -527,16 +527,6 @@ static void _process(telnet_t *telnet, const char *buffer,
|
||||||
break;
|
break;
|
||||||
|
|
||||||
/* negotiation commands */
|
/* negotiation commands */
|
||||||
case TELNET_STATE_DO:
|
|
||||||
_negotiate(telnet, TELNET_DO, byte);
|
|
||||||
start = i + 1;
|
|
||||||
telnet->state = TELNET_STATE_DATA;
|
|
||||||
break;
|
|
||||||
case TELNET_STATE_DONT:
|
|
||||||
_negotiate(telnet, TELNET_DONT, byte);
|
|
||||||
start = i + 1;
|
|
||||||
telnet->state = TELNET_STATE_DATA;
|
|
||||||
break;
|
|
||||||
case TELNET_STATE_WILL:
|
case TELNET_STATE_WILL:
|
||||||
_negotiate(telnet, TELNET_WILL, byte);
|
_negotiate(telnet, TELNET_WILL, byte);
|
||||||
start = i + 1;
|
start = i + 1;
|
||||||
|
@ -547,6 +537,16 @@ static void _process(telnet_t *telnet, const char *buffer,
|
||||||
start = i + 1;
|
start = i + 1;
|
||||||
telnet->state = TELNET_STATE_DATA;
|
telnet->state = TELNET_STATE_DATA;
|
||||||
break;
|
break;
|
||||||
|
case TELNET_STATE_DO:
|
||||||
|
_negotiate(telnet, TELNET_DO, byte);
|
||||||
|
start = i + 1;
|
||||||
|
telnet->state = TELNET_STATE_DATA;
|
||||||
|
break;
|
||||||
|
case TELNET_STATE_DONT:
|
||||||
|
_negotiate(telnet, TELNET_DONT, byte);
|
||||||
|
start = i + 1;
|
||||||
|
telnet->state = TELNET_STATE_DATA;
|
||||||
|
break;
|
||||||
|
|
||||||
/* subnegotiation -- determine subnegotiation telopt */
|
/* subnegotiation -- determine subnegotiation telopt */
|
||||||
case TELNET_STATE_SB:
|
case TELNET_STATE_SB:
|
||||||
|
|
|
@ -94,10 +94,10 @@ typedef struct telnet_event_t telnet_event_t;
|
||||||
enum telnet_state_t {
|
enum telnet_state_t {
|
||||||
TELNET_STATE_DATA = 0,
|
TELNET_STATE_DATA = 0,
|
||||||
TELNET_STATE_IAC,
|
TELNET_STATE_IAC,
|
||||||
TELNET_STATE_DO,
|
|
||||||
TELNET_STATE_DONT,
|
|
||||||
TELNET_STATE_WILL,
|
TELNET_STATE_WILL,
|
||||||
TELNET_STATE_WONT,
|
TELNET_STATE_WONT,
|
||||||
|
TELNET_STATE_DO,
|
||||||
|
TELNET_STATE_DONT,
|
||||||
TELNET_STATE_SB,
|
TELNET_STATE_SB,
|
||||||
TELNET_STATE_SB_DATA,
|
TELNET_STATE_SB_DATA,
|
||||||
TELNET_STATE_SB_DATA_IAC
|
TELNET_STATE_SB_DATA_IAC
|
||||||
|
|
Loading…
Reference in New Issue