diff options
author | Ron Yorston <rmy@pobox.com> | 2018-05-13 08:15:58 +0100 |
---|---|---|
committer | Ron Yorston <rmy@pobox.com> | 2018-05-13 08:15:58 +0100 |
commit | 3ce461fdf3b7adfd44ea058fa0c5ca6d91a5bc5d (patch) | |
tree | a527d0db15f34a137fc11df5538c7f2f7c6d72de /libbb | |
parent | 6f7d1af269eed4b42daeb9c6dfd2ba62f9cd47e4 (diff) | |
parent | d80eecb86812c1fbda652f9b995060c26ba0b155 (diff) | |
download | busybox-w32-3ce461fdf3b7adfd44ea058fa0c5ca6d91a5bc5d.tar.gz busybox-w32-3ce461fdf3b7adfd44ea058fa0c5ca6d91a5bc5d.tar.bz2 busybox-w32-3ce461fdf3b7adfd44ea058fa0c5ca6d91a5bc5d.zip |
Merge branch 'busybox' into merge
Diffstat (limited to 'libbb')
-rw-r--r-- | libbb/Config.src | 12 | ||||
-rw-r--r-- | libbb/xfuncs.c | 13 |
2 files changed, 21 insertions, 4 deletions
diff --git a/libbb/Config.src b/libbb/Config.src index fdf8bbb28..16e16480b 100644 --- a/libbb/Config.src +++ b/libbb/Config.src | |||
@@ -76,6 +76,18 @@ config FEATURE_ETC_NETWORKS | |||
76 | a rarely used feature which allows you to use names | 76 | a rarely used feature which allows you to use names |
77 | instead of IP/mask pairs in route command. | 77 | instead of IP/mask pairs in route command. |
78 | 78 | ||
79 | config FEATURE_ETC_SERVICES | ||
80 | bool "Consult /etc/services even for well-known ports" | ||
81 | default n | ||
82 | help | ||
83 | Look up e.g. "telnet" and "http" in /etc/services file | ||
84 | instead of assuming ports 23 and 80. | ||
85 | This is almost never necessary (everybody uses standard ports), | ||
86 | and it makes sense to avoid reading this file. | ||
87 | If you disable this option, in the cases where port is explicitly | ||
88 | specified as a service name (e.g. "telnet HOST PORTNAME"), | ||
89 | it will still be looked up in /etc/services. | ||
90 | |||
79 | config FEATURE_EDITING | 91 | config FEATURE_EDITING |
80 | bool "Command line editing" | 92 | bool "Command line editing" |
81 | default y | 93 | default y |
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c index 6fa21ad00..57bda6204 100644 --- a/libbb/xfuncs.c +++ b/libbb/xfuncs.c | |||
@@ -333,7 +333,6 @@ int FAST_FUNC get_termios_and_make_raw(int fd, struct termios *newterm, struct t | |||
333 | newterm->c_cc[VMIN] = 1; | 333 | newterm->c_cc[VMIN] = 1; |
334 | /* no timeout (reads block forever) */ | 334 | /* no timeout (reads block forever) */ |
335 | newterm->c_cc[VTIME] = 0; | 335 | newterm->c_cc[VTIME] = 0; |
336 | if (flags & TERMIOS_RAW_CRNL) { | ||
337 | /* IXON, IXOFF, and IXANY: | 336 | /* IXON, IXOFF, and IXANY: |
338 | * IXOFF=1: sw flow control is enabled on input queue: | 337 | * IXOFF=1: sw flow control is enabled on input queue: |
339 | * tty transmits a STOP char when input queue is close to full | 338 | * tty transmits a STOP char when input queue is close to full |
@@ -343,9 +342,12 @@ int FAST_FUNC get_termios_and_make_raw(int fd, struct termios *newterm, struct t | |||
343 | * and resume sending if START is received, or if any char | 342 | * and resume sending if START is received, or if any char |
344 | * is received and IXANY=1. | 343 | * is received and IXANY=1. |
345 | */ | 344 | */ |
345 | if (flags & TERMIOS_RAW_CRNL_INPUT) { | ||
346 | /* IXON=0: XON/XOFF chars are treated as normal chars (why we do this?) */ | 346 | /* IXON=0: XON/XOFF chars are treated as normal chars (why we do this?) */ |
347 | /* dont convert CR to NL on input */ | 347 | /* dont convert CR to NL on input */ |
348 | newterm->c_iflag &= ~(IXON | ICRNL); | 348 | newterm->c_iflag &= ~(IXON | ICRNL); |
349 | } | ||
350 | if (flags & TERMIOS_RAW_CRNL_OUTPUT) { | ||
349 | /* dont convert NL to CR+NL on output */ | 351 | /* dont convert NL to CR+NL on output */ |
350 | newterm->c_oflag &= ~(ONLCR); | 352 | newterm->c_oflag &= ~(ONLCR); |
351 | /* Maybe clear more c_oflag bits? Usually, only OPOST and ONLCR are set. | 353 | /* Maybe clear more c_oflag bits? Usually, only OPOST and ONLCR are set. |
@@ -366,9 +368,12 @@ int FAST_FUNC get_termios_and_make_raw(int fd, struct termios *newterm, struct t | |||
366 | #ifndef IXANY | 368 | #ifndef IXANY |
367 | # define IXANY 0 | 369 | # define IXANY 0 |
368 | #endif | 370 | #endif |
369 | /* IXOFF=0: disable sending XON/XOFF if input buf is full */ | 371 | /* IXOFF=0: disable sending XON/XOFF if input buf is full |
370 | /* IXON=0: input XON/XOFF chars are not special */ | 372 | * IXON=0: input XON/XOFF chars are not special |
371 | /* dont convert anything on input */ | 373 | * BRKINT=0: dont send SIGINT on break |
374 | * IMAXBEL=0: dont echo BEL on input line too long | ||
375 | * INLCR,ICRNL,IUCLC: dont convert anything on input | ||
376 | */ | ||
372 | newterm->c_iflag &= ~(IXOFF|IXON|IXANY|BRKINT|INLCR|ICRNL|IUCLC|IMAXBEL); | 377 | newterm->c_iflag &= ~(IXOFF|IXON|IXANY|BRKINT|INLCR|ICRNL|IUCLC|IMAXBEL); |
373 | } | 378 | } |
374 | return r; | 379 | return r; |