aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/sockets/test_sockets_select_server_down_client.c (renamed from tests/sockets/test_sockets_select_server_no_accept_client.c)0
-rw-r--r--tests/sockets/test_sockets_select_server_down_server.c (renamed from tests/sockets/test_sockets_select_server_no_accept_server.c)41
-rw-r--r--tests/test_sockets.py7
3 files changed, 10 insertions, 38 deletions
diff --git a/tests/sockets/test_sockets_select_server_no_accept_client.c b/tests/sockets/test_sockets_select_server_down_client.c
index e05bd4c8..e05bd4c8 100644
--- a/tests/sockets/test_sockets_select_server_no_accept_client.c
+++ b/tests/sockets/test_sockets_select_server_down_client.c
diff --git a/tests/sockets/test_sockets_select_server_no_accept_server.c b/tests/sockets/test_sockets_select_server_down_server.c
index 4a399ed1..c2e70f33 100644
--- a/tests/sockets/test_sockets_select_server_no_accept_server.c
+++ b/tests/sockets/test_sockets_select_server_down_server.c
@@ -14,38 +14,13 @@
#include <emscripten.h>
#endif
-int serverfd = -1;
-
-void iter(void *arg) {
- int res;
- fd_set fdr;
- fd_set fdw;
-
- // see if there are any connections to accept / write to
- FD_ZERO(&fdr);
- FD_ZERO(&fdw);
- FD_SET(serverfd, &fdr);
- if (clientfd != -1) FD_SET(clientfd, &fdw);
- res = select(64, &fdr, &fdw, NULL, NULL);
- if (res == -1) {
- perror("select failed");
- exit(EXIT_SUCCESS);
- }
-
- if (FD_ISSET(serverfd, &fdr)) {
- printf("accepted someone\n");
- clientfd = accept(serverfd, NULL, NULL);
- assert(clientfd != -1);
- }
-
- if (FD_ISSET(clientfd, &fdw)) {
- do_send(clientfd);
- }
+void main_loop(void *arg) {
}
int main() {
struct sockaddr_in addr;
int res;
+ int serverfd;
// create the socket
serverfd = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
@@ -55,7 +30,7 @@ int main() {
}
fcntl(serverfd, F_SETFL, O_NONBLOCK);
- // bind and listen to the supplied port
+ // bind to the supplied port
memset(&addr, 0, sizeof(addr));
addr.sin_family = AF_INET;
addr.sin_port = htons(SOCKK);
@@ -70,16 +45,12 @@ int main() {
exit(EXIT_FAILURE);
}
- res = listen(serverfd, 50);
- if (res == -1) {
- perror("listen failed");
- exit(EXIT_FAILURE);
- }
+ close(serverfd);
#if EMSCRIPTEN
- emscripten_set_main_loop(iter, 60, 0);
+ emscripten_set_main_loop(main_loop, 60, 0);
#else
- while (1) iter(NULL);
+ while (1) main_loop(NULL); sleep(1);
#endif
return EXIT_SUCCESS;
diff --git a/tests/test_sockets.py b/tests/test_sockets.py
index 4f6ee2a9..4e8bbd75 100644
--- a/tests/test_sockets.py
+++ b/tests/test_sockets.py
@@ -142,11 +142,12 @@ class sockets(BrowserCore):
# def test_sockets_gethostbyname(self):
# self.btest(os.path.join('sockets', 'test_sockets_gethostbyname.c'), expected='0', args=['-O2', '-DSOCKK=8997'])
- def test_sockets_select_server_no_accept(self):
+ def test_sockets_select_server_down(self):
for harness in [
- WebsockifyServerHarness(os.path.join('sockets', 'test_sockets_select_server_no_accept_server.c'), ['-DSOCKK=8995'], 8996, 8995)
+ WebsockifyServerHarness(os.path.join('sockets', 'test_sockets_select_server_down_server.c'), ['-DSOCKK=9002'], 9003, 9002)
]:
- self.btest(os.path.join('sockets', 'test_sockets_select_server_no_accept_client.c'), expected='266', args=['-DSOCKK=8996'])
+ with harness:
+ self.btest(os.path.join('sockets', 'test_sockets_select_server_down_client.c'), expected='266', args=['-DSOCKK=9003'])
def test_sockets_select_server_closes_connection_rw(self):
sockets_include = '-I'+path_from_root('tests', 'sockets')