aboutsummaryrefslogtreecommitdiff
path: root/libbb
diff options
context:
space:
mode:
Diffstat (limited to 'libbb')
-rw-r--r--libbb/bb_askpass.c4
-rw-r--r--libbb/get_console.c2
-rw-r--r--libbb/lineedit.c4
-rw-r--r--libbb/xfuncs.c5
4 files changed, 9 insertions, 6 deletions
diff --git a/libbb/bb_askpass.c b/libbb/bb_askpass.c
index fba82a07b..c60ef3708 100644
--- a/libbb/bb_askpass.c
+++ b/libbb/bb_askpass.c
@@ -37,7 +37,7 @@ char* FAST_FUNC bb_askpass(int timeout, const char *prompt)
37 tio = oldtio; 37 tio = oldtio;
38 tio.c_iflag &= ~(IUCLC|IXON|IXOFF|IXANY); 38 tio.c_iflag &= ~(IUCLC|IXON|IXOFF|IXANY);
39 tio.c_lflag &= ~(ECHO|ECHOE|ECHOK|ECHONL|TOSTOP); 39 tio.c_lflag &= ~(ECHO|ECHOE|ECHOK|ECHONL|TOSTOP);
40 tcsetattr(STDIN_FILENO, TCSANOW, &tio); 40 tcsetattr_stdin_TCSANOW(&tio);
41 41
42 memset(&sa, 0, sizeof(sa)); 42 memset(&sa, 0, sizeof(sa));
43 /* sa.sa_flags = 0; - no SA_RESTART! */ 43 /* sa.sa_flags = 0; - no SA_RESTART! */
@@ -70,7 +70,7 @@ char* FAST_FUNC bb_askpass(int timeout, const char *prompt)
70 } 70 }
71 sigaction_set(SIGINT, &oldsa); 71 sigaction_set(SIGINT, &oldsa);
72 72
73 tcsetattr(STDIN_FILENO, TCSANOW, &oldtio); 73 tcsetattr_stdin_TCSANOW(&oldtio);
74 bb_putchar('\n'); 74 bb_putchar('\n');
75 fflush(stdout); 75 fflush(stdout);
76 return ret; 76 return ret;
diff --git a/libbb/get_console.c b/libbb/get_console.c
index ad56e740f..74022b543 100644
--- a/libbb/get_console.c
+++ b/libbb/get_console.c
@@ -13,7 +13,6 @@
13/* From <linux/kd.h> */ 13/* From <linux/kd.h> */
14enum { KDGKBTYPE = 0x4B33 }; /* get keyboard type */ 14enum { KDGKBTYPE = 0x4B33 }; /* get keyboard type */
15 15
16
17static int open_a_console(const char *fnam) 16static int open_a_console(const char *fnam)
18{ 17{
19 int fd; 18 int fd;
@@ -37,7 +36,6 @@ static int open_a_console(const char *fnam)
37 * We try several things because opening /dev/console will fail 36 * We try several things because opening /dev/console will fail
38 * if someone else used X (which does a chown on /dev/console). 37 * if someone else used X (which does a chown on /dev/console).
39 */ 38 */
40
41int FAST_FUNC get_console_fd_or_die(void) 39int FAST_FUNC get_console_fd_or_die(void)
42{ 40{
43 static const char *const console_names[] = { 41 static const char *const console_names[] = {
diff --git a/libbb/lineedit.c b/libbb/lineedit.c
index 1f21866ca..3953cc904 100644
--- a/libbb/lineedit.c
+++ b/libbb/lineedit.c
@@ -1436,7 +1436,7 @@ int FAST_FUNC read_line_input(const char *prompt, char *command, int maxsize, li
1436#define _POSIX_VDISABLE '\0' 1436#define _POSIX_VDISABLE '\0'
1437#endif 1437#endif
1438 new_settings.c_cc[VINTR] = _POSIX_VDISABLE; 1438 new_settings.c_cc[VINTR] = _POSIX_VDISABLE;
1439 tcsetattr(STDIN_FILENO, TCSANOW, &new_settings); 1439 tcsetattr_stdin_TCSANOW(&new_settings);
1440 1440
1441 /* Now initialize things */ 1441 /* Now initialize things */
1442 previous_SIGWINCH_handler = signal(SIGWINCH, win_changed); 1442 previous_SIGWINCH_handler = signal(SIGWINCH, win_changed);
@@ -1860,7 +1860,7 @@ int FAST_FUNC read_line_input(const char *prompt, char *command, int maxsize, li
1860#endif 1860#endif
1861 1861
1862 /* restore initial_settings */ 1862 /* restore initial_settings */
1863 tcsetattr(STDIN_FILENO, TCSANOW, &initial_settings); 1863 tcsetattr_stdin_TCSANOW(&initial_settings);
1864 /* restore SIGWINCH handler */ 1864 /* restore SIGWINCH handler */
1865 signal(SIGWINCH, previous_SIGWINCH_handler); 1865 signal(SIGWINCH, previous_SIGWINCH_handler);
1866 fflush(stdout); 1866 fflush(stdout);
diff --git a/libbb/xfuncs.c b/libbb/xfuncs.c
index 8ef305ba0..e2aee136c 100644
--- a/libbb/xfuncs.c
+++ b/libbb/xfuncs.c
@@ -289,3 +289,8 @@ int FAST_FUNC get_terminal_width_height(int fd, unsigned *width, unsigned *heigh
289 289
290 return ret; 290 return ret;
291} 291}
292
293int FAST_FUNC tcsetattr_stdin_TCSANOW(const struct termios *tp)
294{
295 return tcsetattr(STDIN_FILENO, TCSANOW, tp);
296}