lib: Add xpipe_nonblocking helper
authorEd Maste <emaste@adaranet.com>
Fri, 28 Sep 2012 21:06:41 +0000 (21:06 +0000)
committerBen Pfaff <blp@nicira.com>
Fri, 28 Sep 2012 21:21:52 +0000 (14:21 -0700)
Signed-off-by: Ed Maste <emaste@adaranet.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
lib/fatal-signal.c
lib/process.c
lib/signals.c
lib/socket-util.c
lib/socket-util.h

index 21ebb5a84a8f6eea6b0b032b0342e27e4afc6ad3..7cfbd05393615be04a156bddc8f39457c992cae4 100644 (file)
@@ -74,9 +74,7 @@ fatal_signal_init(void)
 
         inited = true;
 
-        xpipe(signal_fds);
-        xset_nonblocking(signal_fds[0]);
-        xset_nonblocking(signal_fds[1]);
+        xpipe_nonblocking(signal_fds);
 
         sigemptyset(&fatal_signal_set);
         for (i = 0; i < ARRAY_SIZE(fatal_signals); i++) {
index 91dfc064ca8c2ce3fb7e01cc29dce76ec9ef9608..9f5c35f2489198e52ec2bcd3aa40fca5c76f9184 100644 (file)
@@ -82,9 +82,7 @@ process_init(void)
     inited = true;
 
     /* Create notification pipe. */
-    xpipe(fds);
-    xset_nonblocking(fds[0]);
-    xset_nonblocking(fds[1]);
+    xpipe_nonblocking(fds);
 
     /* Set up child termination signal handler. */
     memset(&sa, 0, sizeof sa);
index b712f7e74da8bc819a6d9fd5d0b401aaee43d0d5..152afcf6cb8669e55840db487d9a9f4502bae6fc 100644 (file)
@@ -63,9 +63,7 @@ signal_init(void)
     static bool inited;
     if (!inited) {
         inited = true;
-        xpipe(fds);
-        xset_nonblocking(fds[0]);
-        xset_nonblocking(fds[1]);
+        xpipe_nonblocking(fds);
     }
 }
 
index e32c03dd4abf253b36d749d4720a749c7684916e..f8b44cc18741945cdd5ab7505e7dfbe4fe43389b 100644 (file)
@@ -893,6 +893,14 @@ xpipe(int fds[2])
     }
 }
 
+void
+xpipe_nonblocking(int fds[2])
+{
+    xpipe(fds);
+    xset_nonblocking(fds[0]);
+    xset_nonblocking(fds[1]);
+}
+
 void
 xsocketpair(int domain, int type, int protocol, int fds[2])
 {
index bacb236f1c0209726214b490508181a99b728e9b..a00b32e57b0a6c43274f49eab53ed1fe6f810a7b 100644 (file)
@@ -64,6 +64,7 @@ int fsync_parent_dir(const char *file_name);
 int get_mtime(const char *file_name, struct timespec *mtime);
 
 void xpipe(int fds[2]);
+void xpipe_nonblocking(int fds[2]);
 
 char *describe_fd(int fd);