chiark / gitweb /
util: in make_stdio() use dup2() rather than dup3()
[elogind.git] / src / shared / missing.h
index c547479ad277651058a96d117742b153f572ba67..bea1254369ab3362ce7c5b867a6932ee90a04bb5 100644 (file)
@@ -635,3 +635,13 @@ static inline int setns(int fd, int nstype) {
 #ifndef CAP_AUDIT_READ
 #define CAP_AUDIT_READ 37
 #endif
+
+static inline long raw_clone(unsigned long flags, void *child_stack) {
+#if defined(__s390__) || defined(__CRIS__)
+        /* On s390 and cris the order of the first and second arguments
+         * of the raw clone() system call is reversed. */
+        return syscall(__NR_clone, child_stack, flags);
+#else
+        return syscall(__NR_clone, flags, child_stack);
+#endif
+}