summaryrefslogtreecommitdiffstats
path: root/main/busybox/0001-Revert-add-remove-safe_-it-seems-we-had-a-few-incorr.patch
blob: 0ebeac56b5f10ec5d50acdb539a8fd6c11927267 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
From 3aa62731bcc7589a7e77be8b86b954551f06f3af Mon Sep 17 00:00:00 2001
From: Natanael Copa <ncopa@alpinelinux.org>
Date: Tue, 2 Mar 2010 12:56:23 +0000
Subject: [PATCH] Revert "*: add/remove safe_, it seems we had a few incorrect uses"

This reverts commit cb23d93c6845df3f2733a32caa4194e60ef871a7.
---
 miscutils/microcom.c       |    7 +++----
 networking/httpd.c         |    6 +++---
 networking/telnet.c        |    8 ++++----
 networking/udhcp/arpping.c |    2 +-
 util-linux/script.c        |    4 ++--
 5 files changed, 13 insertions(+), 14 deletions(-)

diff --git a/miscutils/microcom.c b/miscutils/microcom.c
index 9a7a41d..fe6661f 100644
--- a/miscutils/microcom.c
+++ b/miscutils/microcom.c
@@ -117,9 +117,8 @@ int microcom_main(int argc UNUSED_PARAM, char **argv)
 
 	bb_got_signal = 0;
 	nfd = 2;
-	// Not safe_poll: we want to exit on signal
-	while (!bb_got_signal && poll(pfd, nfd, timeout) > 0) {
-		if (nfd > 1 && (pfd[1].revents & POLLIN)) {
+	while (!bb_got_signal && safe_poll(pfd, nfd, timeout) > 0) {
+		if (nfd > 1 && pfd[1].revents) {
 			char c;
 			// read from stdin -> write to device
 			if (safe_read(STDIN_FILENO, &c, 1) < 1) {
@@ -143,7 +142,7 @@ int microcom_main(int argc UNUSED_PARAM, char **argv)
 				safe_poll(pfd, 1, delay);
 skip_write: ;
 		}
-		if (pfd[0].revents & POLLIN) {
+		if (pfd[0].revents) {
 #define iobuf bb_common_bufsiz1
 			ssize_t len;
 			// read from device -> write to stdout
diff --git a/networking/httpd.c b/networking/httpd.c
index 5bbc7ee..8834c1c 100644
--- a/networking/httpd.c
+++ b/networking/httpd.c
@@ -1167,7 +1167,7 @@ static NOINLINE void cgi_io_loop_and_exit(int fromCgi_rd, int toCgi_wr, int post
 			break;
 		}
 
-		if (pfd[TO_CGI].revents & POLLOUT) {
+		if (pfd[TO_CGI].revents) {
 			/* hdr_cnt > 0 here due to the way pfd[TO_CGI].events set */
 			/* Have data from peer and can write to CGI */
 			count = safe_write(toCgi_wr, hdr_ptr, hdr_cnt);
@@ -1184,7 +1184,7 @@ static NOINLINE void cgi_io_loop_and_exit(int fromCgi_rd, int toCgi_wr, int post
 			}
 		}
 
-		if (pfd[0].revents & POLLIN) {
+		if (pfd[0].revents) {
 			/* post_len > 0 && hdr_cnt == 0 here */
 			/* We expect data, prev data portion is eaten by CGI
 			 * and there *is* data to read from the peer
@@ -1202,7 +1202,7 @@ static NOINLINE void cgi_io_loop_and_exit(int fromCgi_rd, int toCgi_wr, int post
 			}
 		}
 
-		if (pfd[FROM_CGI].revents & POLLIN) {
+		if (pfd[FROM_CGI].revents) {
 			/* There is something to read from CGI */
 			char *rbuf = iobuf;
 
diff --git a/networking/telnet.c b/networking/telnet.c
index 344bb0d..5bbad78 100644
--- a/networking/telnet.c
+++ b/networking/telnet.c
@@ -618,12 +618,12 @@ int telnet_main(int argc UNUSED_PARAM, char **argv)
 		default:
 
 #ifdef USE_POLL
-			if (ufds[0].revents & POLLIN)
+			if (ufds[0].revents) /* well, should check POLLIN, but ... */
 #else
 			if (FD_ISSET(STDIN_FILENO, &rfds))
 #endif
 			{
-				len = safe_read(STDIN_FILENO, G.buf, DATABUFSIZE);
+				len = read(STDIN_FILENO, G.buf, DATABUFSIZE);
 				if (len <= 0)
 					doexit(EXIT_SUCCESS);
 				TRACE(0, ("Read con: %d\n", len));
@@ -631,12 +631,12 @@ int telnet_main(int argc UNUSED_PARAM, char **argv)
 			}
 
 #ifdef USE_POLL
-			if (ufds[1].revents & POLLIN)
+			if (ufds[1].revents) /* well, should check POLLIN, but ... */
 #else
 			if (FD_ISSET(netfd, &rfds))
 #endif
 			{
-				len = safe_read(netfd, G.buf, DATABUFSIZE);
+				len = read(netfd, G.buf, DATABUFSIZE);
 				if (len <= 0) {
 					write_str(1, "Connection closed by foreign host\r\n");
 					doexit(EXIT_FAILURE);
diff --git a/networking/udhcp/arpping.c b/networking/udhcp/arpping.c
index cf18153..c9b421e 100644
--- a/networking/udhcp/arpping.c
+++ b/networking/udhcp/arpping.c
@@ -96,7 +96,7 @@ int FAST_FUNC arpping(uint32_t test_nip,
 		if (r < 0)
 			break;
 		if (r) {
-			r = safe_read(s, &arp, sizeof(arp));
+			r = read(s, &arp, sizeof(arp));
 			if (r < 0)
 				break;
 
diff --git a/util-linux/script.c b/util-linux/script.c
index 37213ee..d9a62fb 100644
--- a/util-linux/script.c
+++ b/util-linux/script.c
@@ -119,7 +119,7 @@ int script_main(int argc UNUSED_PARAM, char **argv)
 				 * for example, try "script -c true" */
 				break;
 			}
-			if (pfd[0].revents & POLLIN) {
+			if (pfd[0].revents) {
 				errno = 0;
 				count = safe_read(pty, buf, sizeof(buf));
 				if (count <= 0 && errno != EAGAIN) {
@@ -143,7 +143,7 @@ int script_main(int argc UNUSED_PARAM, char **argv)
 					}
 				}
 			}
-			if (pfd[1].revents & POLLIN) {
+			if (pfd[1].revents) {
 				count = safe_read(STDIN_FILENO, buf, sizeof(buf));
 				if (count <= 0) {
 					/* err/eof from stdin: don't read stdin anymore */
-- 
1.6.6.1