From: Garrett C. <yab...@us...> - 2009-11-04 06:44:19
|
Update of /cvsroot/ltp/ltp/testcases/kernel/containers/libclone In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv5136 Modified Files: libclone.c Log Message: Report errors appropriate to whether or not the read / write operations with the pipe succeeded. Signed-off-by: Garrett Cooper <yan...@gm...> Index: libclone.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/containers/libclone/libclone.c,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** libclone.c 3 Nov 2009 20:07:35 -0000 1.6 --- libclone.c 4 Nov 2009 06:44:01 -0000 1.7 *************** *** 59,68 **** ret = syscall(SYS_unshare, clone_flags); if (ret == -1) { ! write(retpipe[1], "0", 2); close(retpipe[1]); - perror("unshare"); exit(1); ! } else ! write(retpipe[1], "1", 2); close(retpipe[1]); ret = fn1(arg1); --- 59,72 ---- ret = syscall(SYS_unshare, clone_flags); if (ret == -1) { ! if (write(retpipe[1], "0", 2) < 0) { ! perror("unshare:write(retpipe[1], ..)"); ! } close(retpipe[1]); exit(1); ! } else { ! if (write(retpipe[1], "1", 2) < 0) { ! perror("unshare:write(retpipe[1], ..)"); ! } ! } close(retpipe[1]); ret = fn1(arg1); *************** *** 70,74 **** } else { close(retpipe[1]); ! read(retpipe[0], &buf, 2); close(retpipe[0]); if (*buf == '0') --- 74,80 ---- } else { close(retpipe[1]); ! if (read(retpipe[0], &buf, 2) < 0) { ! perror("unshare:read(retpipe[0], ..)"); ! } close(retpipe[0]); if (*buf == '0') |