Using SOCK_CLOEXEC and SOCK_NONBLOCK breaks compilation on older distros/kernels. These were originally taken from systemd sources, but as it turns out they are not needed to trigger this issue.
I confirmed, that issue can still be reproduced on 3.8 kernel and that testcase can be compiled at least back to RHEL5.3 (2.6.18). Reported-by: DAN LI <[email protected]> Signed-off-by: Jan Stancek <[email protected]> --- testcases/kernel/syscalls/sendmsg/sendmsg02.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/testcases/kernel/syscalls/sendmsg/sendmsg02.c b/testcases/kernel/syscalls/sendmsg/sendmsg02.c index 8f38f2c..c38d438 100644 --- a/testcases/kernel/syscalls/sendmsg/sendmsg02.c +++ b/testcases/kernel/syscalls/sendmsg/sendmsg02.c @@ -88,7 +88,7 @@ static void client(int id, int pipefd[]) mh.msg_iovlen = 1; do { - fd = socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC, 0); + fd = socket(AF_UNIX, SOCK_DGRAM, 0); write(pipefd[1], &fd, 1); sendmsg(fd, &mh, MSG_NOSIGNAL); close(fd); @@ -109,7 +109,7 @@ static void server(int id, int pipefd[]) snprintf(sa.sun_path, sizeof(sa.sun_path), "socket_test%d", id); do { - fd = socket(AF_UNIX, SOCK_DGRAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0); + fd = socket(AF_UNIX, SOCK_DGRAM, 0); unlink(sa.sun_path); bind(fd, (struct sockaddr *) &sa, sizeof(struct sockaddr_un)); read(pipefd[0], &fd, 1); -- 1.7.1 ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
