00001
00002
00003
00004
00005
00006
00007
00008
00009 #include "wvloopback.h"
00010 #include <sys/socket.h>
00011 #include <fcntl.h>
00012
00013 WvLoopback::WvLoopback()
00014 {
00015 int socks[2];
00016
00017 if (socketpair(AF_UNIX, SOCK_STREAM, 0, socks))
00018 {
00019 errnum = errno;
00020 return;
00021 }
00022
00023 rfd = socks[0];
00024 wfd = socks[1];
00025
00026 fcntl(rfd, F_SETFD, 1);
00027 fcntl(rfd, F_SETFL, O_RDONLY|O_NONBLOCK);
00028 fcntl(wfd, F_SETFD, 1);
00029 fcntl(wfd, F_SETFL, O_WRONLY|O_NONBLOCK);
00030 }