/** Public domain dup2() lookalike* by Curtis Jackson @ AT&T Technologies, Burlington, NC* electronic address: burl!rcj** dup2 performs the following functions:** Check to make sure that fd1 is a valid open file descriptor.* Check to see if fd2 is already open; if so, close it.* Duplicate fd1 onto fd2; checking to make sure fd2 is a valid fd.* Return fd2 if all went well; return BADEXIT otherwise.*/#include <fcntl.h>#include <unistd.h>#define BADEXIT -1intdup2(int fd1, int fd2){if (fd1 != fd2) {if (fcntl(fd1, F_GETFL) < 0)return BADEXIT;if (fcntl(fd2, F_GETFL) >= 0)close(fd2);if (fcntl(fd1, F_DUPFD, fd2) < 0)return BADEXIT;}return fd2;}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。