Support for software flow control
This commit is contained in:
committed by
Kim Woelders
parent
f759c0e3cc
commit
6bf10a6901
+2
-1
@@ -60,11 +60,12 @@ extern void telnet_rfc2217_ctl(tn_ctx_t * tcc, unsigned int val);
|
||||
|
||||
/*RFC2217 control commands*/
|
||||
#define TNS_CTL_NOFLOW 1
|
||||
#define TNS_CTL_XONOFF 2
|
||||
#define TNS_CTL_XONOFF_OUT 2
|
||||
#define TNS_CTL_CTSRTS 3
|
||||
#define TNS_CTL_DTR_ON 8
|
||||
#define TNS_CTL_DTR_OFF 9
|
||||
#define TNS_CTL_RTS_ON 11
|
||||
#define TNS_CTL_RTS_OFF 12
|
||||
#define TNS_CTL_XONOFF_IN 15
|
||||
|
||||
#endif /*TELNET_H */
|
||||
|
||||
@@ -855,6 +855,14 @@ ttynvt_ioctl(fuse_req_t req, int cmd, void *arg,
|
||||
tty->master_suspended = (tty->smcr & TIOCM_CTS) ? 0 : 1;
|
||||
telnet_rfc2217_ctl(tty->tn, TNS_CTL_CTSRTS);
|
||||
}
|
||||
else if (tio->c_iflag & (IXON | IXOFF))
|
||||
{
|
||||
tty->master_suspended = 0;
|
||||
if (tio->c_iflag & IXON)
|
||||
telnet_rfc2217_ctl(tty->tn, TNS_CTL_XONOFF_OUT);
|
||||
if (tio->c_iflag & IXOFF)
|
||||
telnet_rfc2217_ctl(tty->tn, TNS_CTL_XONOFF_IN);
|
||||
}
|
||||
else
|
||||
{
|
||||
tty->master_suspended = 0;
|
||||
|
||||
Reference in New Issue
Block a user