Merge commit 'meins/master'
authorAndre Noll <maan@systemlinux.org>
Fri, 9 Jan 2009 00:16:44 +0000 (01:16 +0100)
committerAndre Noll <maan@systemlinux.org>
Fri, 9 Jan 2009 00:16:44 +0000 (01:16 +0100)
fd.c
fd.h
string.c
string.h

diff --git a/fd.c b/fd.c
index d0b5c89..c675aaf 100644 (file)
--- a/fd.c
+++ b/fd.c
@@ -427,3 +427,24 @@ again:
                goto again;
        return ret;
 }
+
+/**
+ * Ensure that file descriptors 0, 1, and 2 are valid.
+ *
+ * Common approach that opens /dev/null until it gets a file descriptor greater
+ * than two.
+ *
+ * \sa okir's Black Hats Manual.
+ */
+void valid_fd_012(void)
+{
+       while (1) {
+               int fd = open("/dev/null", O_RDWR);
+               if (fd < 0)
+                       exit(EXIT_FAILURE);
+               if (fd > 2) {
+                       close(fd);
+                       break;
+               }
+       }
+}
diff --git a/fd.h b/fd.h
index 22141be..ae692b4 100644 (file)
--- a/fd.h
+++ b/fd.h
@@ -24,3 +24,4 @@ int mmap_full_file(const char *filename, int open_mode, void **map,
        size_t *size, int *fd_ptr);
 int para_munmap(void *start, size_t length);
 int write_ok(int fd);
+void valid_fd_012(void);
index d23e43c..bdc113d 100644 (file)
--- a/string.c
+++ b/string.c
@@ -328,27 +328,6 @@ __must_check unsigned split_args(char *args, char *** const argv_ptr, const char
        return n;
 }
 
-/**
- * Ensure that file descriptors 0, 1, and 2 are valid.
- *
- * Common approach that opens /dev/null until it gets a file descriptor greater
- * than two.
- *
- * \sa okir's Black Hats Manual.
- */
-void valid_fd_012(void)
-{
-       while (1) {
-               int fd = open("/dev/null", O_RDWR);
-               if (fd < 0)
-                       exit(EXIT_FAILURE);
-               if (fd > 2) {
-                       close(fd);
-                       break;
-               }
-       }
-}
-
 /**
  * Get the own hostname.
  *
index 561ff4e..e91a140 100644 (file)
--- a/string.h
+++ b/string.h
@@ -40,7 +40,6 @@ __must_check __malloc char *para_logname(void);
 __must_check __malloc char *para_homedir(void);
 __must_check unsigned split_args(char *args, char *** const argv_ptr, const char *delim);
 __malloc char *para_hostname(void);
-void valid_fd_012(void);
 __printf_2_3 int para_printf(struct para_buffer *b, const char *fmt, ...);
 /** Used for for_each_line() and for_each_line_ro(). */
 typedef int line_handler_t(char *, void *);