a76a17f
diff -up vsftpd-2.2.2/sysdeputil.c.clone vsftpd-2.2.2/sysdeputil.c
a76a17f
--- vsftpd-2.2.2/sysdeputil.c.clone	2010-05-13 13:26:32.099358732 +0200
a76a17f
+++ vsftpd-2.2.2/sysdeputil.c	2010-05-13 13:26:43.894359985 +0200
a76a17f
@@ -1279,7 +1279,7 @@ vsf_sysutil_fork_isolate_failok()
a76a17f
   static int cloneflags_work = 1;
a76a17f
   if (cloneflags_work)
a76a17f
   {
a76a17f
-    int ret = syscall(__NR_clone, CLONE_NEWPID | CLONE_NEWIPC | SIGCHLD, NULL);
a76a17f
+    int ret = clone(NULL, NULL, CLONE_NEWPID | CLONE_NEWIPC | SIGCHLD, NULL);
a76a17f
     if (ret != -1 || (errno != EINVAL && errno != EPERM))
a76a17f
     {
a76a17f
       if (ret == 0)
a76a17f
@@ -1301,7 +1301,7 @@ vsf_sysutil_fork_newnet()
a76a17f
   static int cloneflags_work = 1;
a76a17f
   if (cloneflags_work)
a76a17f
   {
a76a17f
-    int ret = syscall(__NR_clone, CLONE_NEWNET | SIGCHLD, NULL);
a76a17f
+    int ret = clone(NULL, NULL, CLONE_NEWNET | SIGCHLD, NULL);
a76a17f
     if (ret != -1 || (errno != EINVAL && errno != EPERM))
a76a17f
     {
a76a17f
       if (ret == 0)