blob: 8c1af7d3dc83e76a10cf7393aa6cbb5dc26111cf [file] [log] [blame] [edit]
#define _GNU_SOURCE
#include <stdarg.h>
#include <unistd.h>
#include <sched.h>
#include "pthread_impl.h"
#include "syscall.h"
int clone(int (*func)(void *), void *stack, int flags, void *arg, ...)
{
va_list ap;
pid_t *ptid, *ctid;
void *tls;
va_start(ap, arg);
ptid = va_arg(ap, pid_t *);
tls = va_arg(ap, void *);
ctid = va_arg(ap, pid_t *);
va_end(ap);
return __syscall_ret(__clone(func, stack, flags, arg, ptid, tls, ctid));
}