diff options
Diffstat (limited to 'src/stable/protocoltelnet.cpp')
| -rw-r--r-- | src/stable/protocoltelnet.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/stable/protocoltelnet.cpp b/src/stable/protocoltelnet.cpp index 4259fc7..f8a3906 100644 --- a/src/stable/protocoltelnet.cpp +++ b/src/stable/protocoltelnet.cpp | |||
| @@ -70,6 +70,7 @@ Bu::ProtocolTelnet::ProtocolTelnet() : | |||
| 70 | oNAWS( *this, OPT_NAWS ), | 70 | oNAWS( *this, OPT_NAWS ), |
| 71 | oSuppressGA(*this, OPT_SUPGA ), | 71 | oSuppressGA(*this, OPT_SUPGA ), |
| 72 | bCanonical( true ), | 72 | bCanonical( true ), |
| 73 | bEcho( true ), | ||
| 73 | bSubOpt( false ) | 74 | bSubOpt( false ) |
| 74 | { | 75 | { |
| 75 | } | 76 | } |
| @@ -230,7 +231,7 @@ void Bu::ProtocolTelnet::onNewData( Bu::Client *pClient ) | |||
| 230 | else | 231 | else |
| 231 | { | 232 | { |
| 232 | sDataBuf += bc; | 233 | sDataBuf += bc; |
| 233 | if( oEcho.isLocalSet() ) | 234 | if( oEcho.isLocalSet() && bEcho ) |
| 234 | { | 235 | { |
| 235 | pClient->write( &bc, 1 ); | 236 | pClient->write( &bc, 1 ); |
| 236 | #ifdef __TELNET_DEBUG | 237 | #ifdef __TELNET_DEBUG |
| @@ -243,7 +244,7 @@ void Bu::ProtocolTelnet::onNewData( Bu::Client *pClient ) | |||
| 243 | else | 244 | else |
| 244 | { | 245 | { |
| 245 | sDataBuf += bc; | 246 | sDataBuf += bc; |
| 246 | if( oEcho.isLocalSet() ) | 247 | if( oEcho.isLocalSet() && bEcho ) |
| 247 | { | 248 | { |
| 248 | pClient->write( &bc, 1 ); | 249 | pClient->write( &bc, 1 ); |
| 249 | } | 250 | } |
| @@ -273,6 +274,16 @@ bool Bu::ProtocolTelnet::isCanonical() | |||
| 273 | return bCanonical; | 274 | return bCanonical; |
| 274 | } | 275 | } |
| 275 | 276 | ||
| 277 | void Bu::ProtocolTelnet::setEcho( bool bOpt ) | ||
| 278 | { | ||
| 279 | bEcho = bOpt; | ||
| 280 | } | ||
| 281 | |||
| 282 | bool Bu::ProtocolTelnet::isEchoEnabled() | ||
| 283 | { | ||
| 284 | return bEcho; | ||
| 285 | } | ||
| 286 | |||
| 276 | void Bu::ProtocolTelnet::write( const Bu::String &sData ) | 287 | void Bu::ProtocolTelnet::write( const Bu::String &sData ) |
| 277 | { | 288 | { |
| 278 | write( sData.getStr(), sData.getSize() ); | 289 | write( sData.getStr(), sData.getSize() ); |
