Fix some wrong state handler in _negotiate

Also run file through nxstyle and correct coding standard issues.
This commit is contained in:
Xiang Xiao 2020-02-05 15:19:38 +08:00 committed by Gregory Nutt
parent 5f273b2c5c
commit 39bf19d1f4

View File

@ -120,11 +120,11 @@ struct telnet_s
{ {
/* User data */ /* User data */
void *ud; FAR void *ud;
/* Telopt support table */ /* Telopt support table */
const struct telnet_telopt_s *telopts; FAR const struct telnet_telopt_s *telopts;
/* Event handler */ /* Event handler */
@ -133,16 +133,16 @@ struct telnet_s
#if defined(HAVE_ZLIB) #if defined(HAVE_ZLIB)
/* zlib (mccp2) compression */ /* zlib (mccp2) compression */
z_stream *z; FAR z_stream *z;
#endif #endif
/* RFC1143 option negotiation states */ /* RFC1143 option negotiation states */
struct telnet_rfc1143_s *q; FAR struct telnet_rfc1143_s *q;
/* Sub-request buffer */ /* Sub-request buffer */
char *buffer; FAR char *buffer;
/* Current size of the buffer */ /* Current size of the buffer */
@ -197,9 +197,10 @@ static const size_t _buffer_sizes_count = sizeof(_buffer_sizes) /
/* Error generation function */ /* Error generation function */
static enum telnet_error_e _error(struct telnet_s *telnet, unsigned line, static enum telnet_error_e _error(FAR struct telnet_s *telnet, unsigned line,
const char *func, enum telnet_error_e err, FAR const char *func,
int fatal, const char *fmt, ...) enum telnet_error_e err, int fatal,
FAR const char *fmt, ...)
{ {
union telnet_event_u ev; union telnet_event_u ev;
char buffer[512]; char buffer[512];
@ -230,10 +231,10 @@ static enum telnet_error_e _error(struct telnet_s *telnet, unsigned line,
*/ */
#if defined(HAVE_ZLIB) #if defined(HAVE_ZLIB)
enum telnet_error_e _init_zlib(struct telnet_s *telnet, int deflate, enum telnet_error_e _init_zlib(FAR struct telnet_s **telnet, int deflate,
int err_fatal) int err_fatal)
{ {
z_stream *z; FAR z_stream *z;
int rs; int rs;
/* If compression is already enabled, fail loudly */ /* If compression is already enabled, fail loudly */
@ -284,7 +285,8 @@ enum telnet_error_e _init_zlib(struct telnet_s *telnet, int deflate,
/* Push bytes out, compressing them first if need be */ /* Push bytes out, compressing them first if need be */
static void _send(struct telnet_s *telnet, const char *buffer, size_t size) static void _send(FAR struct telnet_s **telnet, FAR const char *buffer,
size_t size)
{ {
union telnet_event_u ev; union telnet_event_u ev;
@ -349,7 +351,7 @@ static void _send(struct telnet_s *telnet, const char *buffer, size_t size)
* supports it. return non-zero if supported, zero if not supported. * supports it. return non-zero if supported, zero if not supported.
*/ */
static inline int _check_telopt(struct telnet_s *telnet, static inline int _check_telopt(FAR struct telnet_s **telnet,
unsigned char telopt, int us) unsigned char telopt, int us)
{ {
int i; int i;
@ -390,7 +392,7 @@ static inline int _check_telopt(struct telnet_s *telnet,
/* Retrieve RFC1143 option state */ /* Retrieve RFC1143 option state */
static inline struct telnet_rfc1143_s _get_rfc1143(struct telnet_s *telnet, static inline struct telnet_rfc1143_s _get_rfc1143(FAR struct telnet_s **telnet,
unsigned char telopt) unsigned char telopt)
{ {
struct telnet_rfc1143_s empty; struct telnet_rfc1143_s empty;
@ -415,8 +417,8 @@ static inline struct telnet_rfc1143_s _get_rfc1143(struct telnet_s *telnet,
/* Save RFC1143 option state */ /* Save RFC1143 option state */
static inline void _set_rfc1143(struct telnet_s *telnet, unsigned char telopt, static inline void _set_rfc1143(FAR struct telnet_s **telnet,
char us, char him) unsigned char telopt, char us, char him)
{ {
struct telnet_rfc1143_s *qtmp; struct telnet_rfc1143_s *qtmp;
int i; int i;
@ -458,8 +460,8 @@ static inline void _set_rfc1143(struct telnet_s *telnet, unsigned char telopt,
/* Send negotiation bytes */ /* Send negotiation bytes */
static inline void _send_negotiate(struct telnet_s *telnet, unsigned char cmd, static inline void _send_negotiate(FAR struct telnet_s **telnet,
unsigned char telopt) unsigned char cmd, unsigned char telopt)
{ {
unsigned char bytes[3]; unsigned char bytes[3];
bytes[0] = TELNET_IAC; bytes[0] = TELNET_IAC;
@ -470,7 +472,7 @@ static inline void _send_negotiate(struct telnet_s *telnet, unsigned char cmd,
/* Negotiation handling magic for RFC1143 */ /* Negotiation handling magic for RFC1143 */
static void _negotiate(struct telnet_s *telnet, unsigned char telopt) static void _negotiate(FAR struct telnet_s **telnet, unsigned char telopt)
{ {
union telnet_event_u ev; union telnet_event_u ev;
struct telnet_rfc1143_s q; struct telnet_rfc1143_s q;
@ -534,7 +536,6 @@ static void _negotiate(struct telnet_s *telnet, unsigned char telopt)
case Q_WANTNO_OP: case Q_WANTNO_OP:
_set_rfc1143(telnet, telopt, Q_US(q), Q_YES); _set_rfc1143(telnet, telopt, Q_US(q), Q_YES);
NEGOTIATE_EVENT(telnet, TELNET_EV_WILL, telopt);
_error(telnet, __LINE__, __func__, TELNET_EPROTOCOL, 0, _error(telnet, __LINE__, __func__, TELNET_EPROTOCOL, 0,
"DONT answered by WILL"); "DONT answered by WILL");
break; break;
@ -570,7 +571,8 @@ static void _negotiate(struct telnet_s *telnet, unsigned char telopt)
case Q_WANTNO_OP: case Q_WANTNO_OP:
_set_rfc1143(telnet, telopt, Q_US(q), Q_WANTYES); _set_rfc1143(telnet, telopt, Q_US(q), Q_WANTYES);
NEGOTIATE_EVENT(telnet, TELNET_EV_DO, telopt); _send_negotiate(telnet, TELNET_DO, telopt);
NEGOTIATE_EVENT(telnet, TELNET_EV_WONT, telopt);
break; break;
case Q_WANTYES: case Q_WANTYES:
@ -605,7 +607,6 @@ static void _negotiate(struct telnet_s *telnet, unsigned char telopt)
case Q_WANTNO_OP: case Q_WANTNO_OP:
_set_rfc1143(telnet, telopt, Q_YES, Q_HIM(q)); _set_rfc1143(telnet, telopt, Q_YES, Q_HIM(q));
NEGOTIATE_EVENT(telnet, TELNET_EV_DO, telopt);
_error(telnet, __LINE__, __func__, TELNET_EPROTOCOL, 0, _error(telnet, __LINE__, __func__, TELNET_EPROTOCOL, 0,
"WONT answered by DO"); "WONT answered by DO");
break; break;
@ -636,13 +637,13 @@ static void _negotiate(struct telnet_s *telnet, unsigned char telopt)
case Q_WANTNO: case Q_WANTNO:
_set_rfc1143(telnet, telopt, Q_NO, Q_HIM(q)); _set_rfc1143(telnet, telopt, Q_NO, Q_HIM(q));
NEGOTIATE_EVENT(telnet, TELNET_EV_WONT, telopt); NEGOTIATE_EVENT(telnet, TELNET_EV_DONT, telopt);
break; break;
case Q_WANTNO_OP: case Q_WANTNO_OP:
_set_rfc1143(telnet, telopt, Q_WANTYES, Q_HIM(q)); _set_rfc1143(telnet, telopt, Q_WANTYES, Q_HIM(q));
_send_negotiate(telnet, TELNET_WILL, telopt); _send_negotiate(telnet, TELNET_WILL, telopt);
NEGOTIATE_EVENT(telnet, TELNET_EV_WILL, telopt); NEGOTIATE_EVENT(telnet, TELNET_EV_DONT, telopt);
break; break;
case Q_WANTYES: case Q_WANTYES:
@ -667,14 +668,14 @@ static void _negotiate(struct telnet_s *telnet, unsigned char telopt)
* of the original buffer. * of the original buffer.
*/ */
static int _environ_telnet(struct telnet_s *telnet, unsigned char type, static int _environ_telnet(FAR struct telnet_s **telnet, unsigned char type,
char *buffer, size_t size) FAR char *buffer, size_t size)
{ {
union telnet_event_u ev; union telnet_event_u ev;
struct telnet_environ_s *values = 0; struct telnet_environ_s *values = 0;
char *c; FAR char *c;
char *last; FAR char *last;
char *out; FAR char *out;
size_t index; size_t index;
size_t count; size_t count;
@ -747,6 +748,7 @@ static int _environ_telnet(struct telnet_s *telnet, unsigned char type,
else if (*c == TELNET_ENVIRON_ESC) else if (*c == TELNET_ENVIRON_ESC)
{ {
/* Skip the next byte */ /* Skip the next byte */
++c; ++c;
} }
} }
@ -859,13 +861,17 @@ static int _environ_telnet(struct telnet_s *telnet, unsigned char type,
/* Process an MSSP subnegotiation buffer */ /* Process an MSSP subnegotiation buffer */
static int _mssp_telnet(struct telnet_s *telnet, char *buffer, size_t size) static int _mssp_telnet(FAR struct telnet_s *telnet, FAR char *buffer,
size_t size)
{ {
union telnet_event_u ev; union telnet_event_u ev;
struct telnet_environ_s *values; FAR struct telnet_environ_s *values;
char *var = 0; FAR char *var = 0;
char *c, *last, *out; FAR char *c;
size_t i, count; FAR char *last;
FAR char *out;
size_t count;
size_t i;
unsigned char next_type; unsigned char next_type;
/* If we have no data, just pass it through */ /* If we have no data, just pass it through */
@ -963,11 +969,12 @@ static int _mssp_telnet(struct telnet_s *telnet, char *buffer, size_t size)
/* Parse ZMP command subnegotiation buffers */ /* Parse ZMP command subnegotiation buffers */
static int _zmp_telnet(struct telnet_s *telnet, const char *buffer, size_t size) static int _zmp_telnet(FAR struct telnet_s **telnet, FAR const char *buffer,
size_t size)
{ {
union telnet_event_u ev; union telnet_event_u ev;
char **argv; FAR char **argv;
const char *c; FAR const char *c;
size_t i; size_t i;
size_t argc; size_t argc;
@ -1019,7 +1026,7 @@ static int _zmp_telnet(struct telnet_s *telnet, const char *buffer, size_t size)
/* Parse TERMINAL-TYPE command subnegotiation buffers */ /* Parse TERMINAL-TYPE command subnegotiation buffers */
static int _ttype_telnet(struct telnet_s *telnet, const char *buffer, static int _ttype_telnet(FAR struct telnet_s **telnet, FAR const char *buffer,
size_t size) size_t size)
{ {
union telnet_event_u ev; union telnet_event_u ev;
@ -1084,7 +1091,7 @@ static int _ttype_telnet(struct telnet_s *telnet, const char *buffer,
* must be aborted and reprocessed due to COMPRESS2 being activated * must be aborted and reprocessed due to COMPRESS2 being activated
*/ */
static int _subnegotiate(struct telnet_s *telnet) static int _subnegotiate(FAR struct telnet_s **telnet)
{ {
union telnet_event_u ev; union telnet_event_u ev;
@ -1159,14 +1166,15 @@ static int _subnegotiate(struct telnet_s *telnet)
* *
****************************************************************************/ ****************************************************************************/
struct telnet_s *telnet_init(const struct telnet_telopt_s *telopts, FAR struct telnet_s **telnet_init(FAR const struct telnet_telopt_s *telopts,
telnet_event_handler_t eh, telnet_event_handler_t eh,
unsigned char flags, unsigned char flags,
void *user_data) FAR void *user_data)
{ {
/* Allocate structure */ /* Allocate structure */
struct telnet_s *telnet = (struct telnet_s *) calloc(1, sizeof(struct telnet_s)); FAR struct telnet_s *telnet = (FAR struct telnet_s *)
calloc(1, sizeof(struct telnet_s));
if (telnet == 0) if (telnet == 0)
{ {
return 0; return 0;
@ -1197,7 +1205,7 @@ struct telnet_s *telnet_init(const struct telnet_telopt_s *telopts,
* *
****************************************************************************/ ****************************************************************************/
void telnet_free(struct telnet_s *telnet) void telnet_free(FAR struct telnet_s *telnet)
{ {
/* Free sub-request buffer */ /* Free sub-request buffer */
@ -1244,7 +1252,7 @@ void telnet_free(struct telnet_s *telnet)
/* Push a byte into the telnet buffer */ /* Push a byte into the telnet buffer */
static enum telnet_error_e _buffer_byte(struct telnet_s *telnet, static enum telnet_error_e _buffer_byte(FAR struct telnet_s **telnet,
unsigned char byte) unsigned char byte)
{ {
char *new_buffer; char *new_buffer;
@ -1293,7 +1301,7 @@ static enum telnet_error_e _buffer_byte(struct telnet_s *telnet,
return TELNET_EOK; return TELNET_EOK;
} }
static void _process(struct telnet_s *telnet, const char *buffer, static void _process(FAR struct telnet_s **telnet, FAR const char *buffer,
size_t size) size_t size)
{ {
union telnet_event_u ev; union telnet_event_u ev;
@ -1309,6 +1317,7 @@ static void _process(struct telnet_s *telnet, const char *buffer,
/* Regular data */ /* Regular data */
case TELNET_STATE_DATA: case TELNET_STATE_DATA:
/* On an IAC byte, pass through all pending bytes and switch states */ /* On an IAC byte, pass through all pending bytes and switch states */
if (byte == TELNET_IAC) if (byte == TELNET_IAC)
@ -1357,6 +1366,7 @@ static void _process(struct telnet_s *telnet, const char *buffer,
/* IAC escaping */ /* IAC escaping */
case TELNET_IAC: case TELNET_IAC:
/* Event */ /* Event */
ev.type = TELNET_EV_DATA; ev.type = TELNET_EV_DATA;
@ -1373,6 +1383,7 @@ static void _process(struct telnet_s *telnet, const char *buffer,
/* Some other command */ /* Some other command */
default: default:
/* Event */ /* Event */
ev.type = TELNET_EV_IAC; ev.type = TELNET_EV_IAC;
@ -1408,6 +1419,7 @@ static void _process(struct telnet_s *telnet, const char *buffer,
/* Subnegotiation -- buffer bytes until end request */ /* Subnegotiation -- buffer bytes until end request */
case TELNET_STATE_SB_DATA: case TELNET_STATE_SB_DATA:
/* IAC command in subnegotiation -- either IAC SE or IAC IAC */ /* IAC command in subnegotiation -- either IAC SE or IAC IAC */
if (byte == TELNET_IAC) if (byte == TELNET_IAC)
@ -1444,6 +1456,7 @@ static void _process(struct telnet_s *telnet, const char *buffer,
/* End subnegotiation */ /* End subnegotiation */
case TELNET_SE: case TELNET_SE:
/* Return to default state */ /* Return to default state */
start = i + 1; start = i + 1;
@ -1467,6 +1480,7 @@ static void _process(struct telnet_s *telnet, const char *buffer,
/* Escaped IAC byte */ /* Escaped IAC byte */
case TELNET_IAC: case TELNET_IAC:
/* Push IAC into buffer */ /* Push IAC into buffer */
if (_buffer_byte(telnet, TELNET_IAC) != TELNET_EOK) if (_buffer_byte(telnet, TELNET_IAC) != TELNET_EOK)
@ -1551,7 +1565,8 @@ static void _process(struct telnet_s *telnet, const char *buffer,
* *
****************************************************************************/ ****************************************************************************/
void telnet_recv(struct telnet_s *telnet, const char *buffer, size_t size) void telnet_recv(FAR struct telnet_s **telnet, FAR const char *buffer,
size_t size)
{ {
#if defined(HAVE_ZLIB) #if defined(HAVE_ZLIB)
/* If we have an inflate (decompression) zlib stream, use it */ /* If we have an inflate (decompression) zlib stream, use it */
@ -1573,6 +1588,7 @@ void telnet_recv(struct telnet_s *telnet, const char *buffer, size_t size)
while (telnet->z->avail_in > 0 || telnet->z->avail_out == 0) while (telnet->z->avail_in > 0 || telnet->z->avail_out == 0)
{ {
/* Reset output buffer */ /* Reset output buffer */
/* Decompress */ /* Decompress */
rs = inflate(telnet->z, Z_SYNC_FLUSH); rs = inflate(telnet->z, Z_SYNC_FLUSH);
@ -1635,7 +1651,7 @@ void telnet_recv(struct telnet_s *telnet, const char *buffer, size_t size)
* *
****************************************************************************/ ****************************************************************************/
void telnet_iac(struct telnet_s *telnet, unsigned char cmd) void telnet_iac(FAR struct telnet_s **telnet, unsigned char cmd)
{ {
unsigned char bytes[2]; unsigned char bytes[2];
bytes[0] = TELNET_IAC; bytes[0] = TELNET_IAC;
@ -1660,7 +1676,7 @@ void telnet_iac(struct telnet_s *telnet, unsigned char cmd)
* *
****************************************************************************/ ****************************************************************************/
void telnet_negotiate(struct telnet_s *telnet, unsigned char cmd, void telnet_negotiate(FAR struct telnet_s **telnet, unsigned char cmd,
unsigned char telopt) unsigned char telopt)
{ {
struct telnet_rfc1143_s q; struct telnet_rfc1143_s q;
@ -1778,7 +1794,8 @@ void telnet_negotiate(struct telnet_s *telnet, unsigned char cmd,
* *
****************************************************************************/ ****************************************************************************/
void telnet_send(struct telnet_s *telnet, const char *buffer, size_t size) void telnet_send(FAR struct telnet_s **telnet, FAR const char *buffer,
size_t size)
{ {
size_t l; size_t l;
size_t i; size_t i;
@ -1828,7 +1845,7 @@ void telnet_send(struct telnet_s *telnet, const char *buffer, size_t size)
* *
****************************************************************************/ ****************************************************************************/
void telnet_begin_sb(struct telnet_s *telnet, unsigned char telopt) void telnet_begin_sb(FAR struct telnet_s **telnet, unsigned char telopt)
{ {
unsigned char sb[3]; unsigned char sb[3];
sb[0] = TELNET_IAC; sb[0] = TELNET_IAC;
@ -1856,8 +1873,8 @@ void telnet_begin_sb(struct telnet_s *telnet, unsigned char telopt)
* *
****************************************************************************/ ****************************************************************************/
void telnet_subnegotiation(struct telnet_s *telnet, unsigned char telopt, void telnet_subnegotiation(FAR struct telnet_s **telnet, unsigned char telopt,
const char *buffer, size_t size) FAR const char *buffer, size_t size)
{ {
unsigned char bytes[5]; unsigned char bytes[5];
bytes[0] = TELNET_IAC; bytes[0] = TELNET_IAC;
@ -1911,13 +1928,14 @@ void telnet_subnegotiation(struct telnet_s *telnet, unsigned char telopt,
* *
****************************************************************************/ ****************************************************************************/
void telnet_begin_compress2(struct telnet_s *telnet) void telnet_begin_compress2(FAR struct telnet_s **telnet)
{ {
#if defined(HAVE_ZLIB) #if defined(HAVE_ZLIB)
static const unsigned char compress2[] = static const unsigned char compress2[] =
{ {
TELNET_IAC, TELNET_SB, TELNET_TELOPT_COMPRESS2, TELNET_IAC, TELNET_SE TELNET_IAC, TELNET_SB, TELNET_TELOPT_COMPRESS2, TELNET_IAC, TELNET_SE
}; };
union telnet_event_u ev; union telnet_event_u ev;
/* Attempt to create output stream first, bail if we can't */ /* Attempt to create output stream first, bail if we can't */
@ -1955,12 +1973,21 @@ void telnet_begin_compress2(struct telnet_s *telnet)
* *
****************************************************************************/ ****************************************************************************/
int telnet_vprintf(struct telnet_s *telnet, const char *fmt, va_list va) int telnet_vprintf(FAR struct telnet_s *telnet, FAR const char *fmt,
va_list va)
{ {
static const char CRLF[] = { '\r', '\n' }; static const char CRLF[] =
static const char CRNUL[] = { '\r', '\0' }; {
'\r', '\n'
};
static const char CRNUL[] =
{
'\r', '\0'
};
char buffer[1024]; char buffer[1024];
char *output = buffer; FAR char *output = buffer;
int rs; int rs;
int l; int l;
int i; int i;
@ -2066,7 +2093,7 @@ int telnet_vprintf(struct telnet_s *telnet, const char *fmt, va_list va)
* *
****************************************************************************/ ****************************************************************************/
int telnet_printf(struct telnet_s *telnet, const char *fmt, ...) int telnet_printf(FAR struct telnet_s **telnet, FAR const char *fmt, ...)
{ {
va_list va; va_list va;
int rs; int rs;
@ -2088,10 +2115,11 @@ int telnet_printf(struct telnet_s *telnet, const char *fmt, ...)
* *
****************************************************************************/ ****************************************************************************/
int telnet_raw_vprintf(struct telnet_s *telnet, const char *fmt, va_list va) int telnet_raw_vprintf(FAR struct telnet_s **telnet, FAR const char *fmt,
va_list va)
{ {
char buffer[1024]; char buffer[1024];
char *output = buffer; FAR char *output = buffer;
int rs; int rs;
/* Format; allocate more space if necessary */ /* Format; allocate more space if necessary */
@ -2148,7 +2176,7 @@ int telnet_raw_vprintf(struct telnet_s *telnet, const char *fmt, va_list va)
* *
****************************************************************************/ ****************************************************************************/
int telnet_raw_printf(struct telnet_s *telnet, const char *fmt, ...) int telnet_raw_printf(FAR struct telnet_s **telnet, FAR const char *fmt, ...)
{ {
va_list va; va_list va;
int rs; int rs;
@ -2179,7 +2207,7 @@ int telnet_raw_printf(struct telnet_s *telnet, const char *fmt, ...)
* *
****************************************************************************/ ****************************************************************************/
void telnet_begin_newenviron(struct telnet_s *telnet, unsigned char cmd) void telnet_begin_newenviron(FAR struct telnet_s **telnet, unsigned char cmd)
{ {
telnet_begin_sb(telnet, TELNET_TELOPT_NEW_ENVIRON); telnet_begin_sb(telnet, TELNET_TELOPT_NEW_ENVIRON);
telnet_send(telnet, (const char *)&cmd, 1); telnet_send(telnet, (const char *)&cmd, 1);
@ -2202,10 +2230,10 @@ void telnet_begin_newenviron(struct telnet_s *telnet, unsigned char cmd)
* *
****************************************************************************/ ****************************************************************************/
void telnet_newenviron_value(struct telnet_s *telnet, unsigned char type, void telnet_newenviron_value(FAR struct telnet_s **telnet, unsigned char type,
const char *string) const char *string)
{ {
telnet_send(telnet, (const char *)&type, 1); telnet_send(telnet, (FAR const char *)&type, 1);
if (string != 0) if (string != 0)
{ {
@ -2225,7 +2253,7 @@ void telnet_newenviron_value(struct telnet_s *telnet, unsigned char type,
* *
****************************************************************************/ ****************************************************************************/
void telnet_ttype_send(struct telnet_s *telnet) void telnet_ttype_send(FAR struct telnet_s **telnet)
{ {
static const unsigned char SEND[] = static const unsigned char SEND[] =
{ {
@ -2272,7 +2300,7 @@ void telnet_ttype_send(struct telnet_s *telnet)
* *
****************************************************************************/ ****************************************************************************/
void telnet_ttype_is(struct telnet_s *telnet, const char *ttype) void telnet_ttype_is(FAR struct telnet_s **telnet, FAR const char *ttype)
{ {
static const unsigned char IS[] = static const unsigned char IS[] =
{ {
@ -2302,7 +2330,8 @@ void telnet_ttype_is(struct telnet_s *telnet, const char *ttype)
* *
****************************************************************************/ ****************************************************************************/
void telnet_send_zmp(struct telnet_s *telnet, size_t argc, const char **argv) void telnet_send_zmp(FAR struct telnet_s **telnet, size_t argc,
FAR const char **argv)
{ {
size_t i; size_t i;
@ -2332,9 +2361,9 @@ void telnet_send_zmp(struct telnet_s *telnet, size_t argc, const char **argv)
* *
****************************************************************************/ ****************************************************************************/
void telnet_send_vzmpv(struct telnet_s *telnet, va_list va) void telnet_send_vzmpv(FAR struct telnet_s **telnet, va_list va)
{ {
const char *arg; FAR const char *arg;
/* ZMP header */ /* ZMP header */
@ -2366,7 +2395,7 @@ void telnet_send_vzmpv(struct telnet_s *telnet, va_list va)
* *
****************************************************************************/ ****************************************************************************/
void telnet_send_zmpv(struct telnet_s *telnet, ...) void telnet_send_zmpv(FAR struct telnet_s **telnet, ...)
{ {
va_list va; va_list va;
@ -2387,7 +2416,7 @@ void telnet_send_zmpv(struct telnet_s *telnet, ...)
* *
****************************************************************************/ ****************************************************************************/
void telnet_begin_zmp(struct telnet_s *telnet, const char *cmd) void telnet_begin_zmp(FAR struct telnet_s **telnet, FAR const char *cmd)
{ {
telnet_begin_sb(telnet, TELNET_TELOPT_ZMP); telnet_begin_sb(telnet, TELNET_TELOPT_ZMP);
telnet_zmp_arg(telnet, cmd); telnet_zmp_arg(telnet, cmd);
@ -2405,7 +2434,7 @@ void telnet_begin_zmp(struct telnet_s *telnet, const char *cmd)
* *
****************************************************************************/ ****************************************************************************/
void telnet_zmp_arg(struct telnet_s *telnet, const char *arg) void telnet_zmp_arg(FAR struct telnet_s **telnet, FAR const char *arg)
{ {
telnet_send(telnet, arg, strlen(arg) + 1); telnet_send(telnet, arg, strlen(arg) + 1);
} }