aboutsummaryrefslogtreecommitdiff
path: root/utils/sctp/func_tests/test_1_to_1_recvfrom.c
diff options
context:
space:
mode:
Diffstat (limited to 'utils/sctp/func_tests/test_1_to_1_recvfrom.c')
-rw-r--r--utils/sctp/func_tests/test_1_to_1_recvfrom.c17
1 files changed, 14 insertions, 3 deletions
diff --git a/utils/sctp/func_tests/test_1_to_1_recvfrom.c b/utils/sctp/func_tests/test_1_to_1_recvfrom.c
index a4bdf6a41..0ede5628d 100644
--- a/utils/sctp/func_tests/test_1_to_1_recvfrom.c
+++ b/utils/sctp/func_tests/test_1_to_1_recvfrom.c
@@ -69,6 +69,8 @@ main(int argc, char *argv[])
char *message = "hello, world!\n";
char *message_rcv;
int count;
+ int fd, err_no = 0;
+ char filename[21];
struct sockaddr_in conn_addr,lstn_addr,svr_addr;
@@ -122,11 +124,20 @@ main(int argc, char *argv[])
tst_resm(TPASS, "recvfrom() with a bad socket descriptor - EBADF");
/*recvfrom () TEST2: Invalid socket , ENOTSOCK Expected error*/
- count = recvfrom(0, message_rcv, msg_count, flag,
+ strcpy(filename, "/tmp/sctptest.XXXXXX");
+ fd = mkstemp(filename);
+ if (fd == -1)
+ tst_brkm(TBROK, tst_exit, "Failed to mkstemp %s: %s",
+ filename, strerror(errno));
+ count = recvfrom(fd, message_rcv, msg_count, flag,
(struct sockaddr *)&svr_addr, &len);
- if (count != -1 || errno != ENOTSOCK)
+ if (count == -1)
+ err_no = errno;
+ close(fd);
+ unlink(filename);
+ if (count != -1 || err_no != ENOTSOCK)
tst_brkm(TBROK, tst_exit, "recvfrom with invalid socket "
- "count:%d, errno:%d", count, errno);
+ "count:%d, errno:%d", count, err_no);
tst_resm(TPASS, "recvfrom() with invalid socket - ENOTSOCK");