Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.18-rc4 70 lines 1.6 kB view raw
1/* 2 * Copyright (C) 2000 - 2004 Jeff Dike (jdike@karaya.com) 3 * Licensed under the GPL 4 */ 5 6#ifndef _UM_UNISTD_H_ 7#define _UM_UNISTD_H_ 8 9#include <linux/syscalls.h> 10#include "linux/resource.h" 11#include "asm/uaccess.h" 12 13extern int um_execve(const char *file, char *const argv[], char *const env[]); 14 15#ifdef __KERNEL__ 16/* We get __ARCH_WANT_OLD_STAT and __ARCH_WANT_STAT64 from the base arch */ 17#define __ARCH_WANT_IPC_PARSE_VERSION 18#define __ARCH_WANT_OLD_READDIR 19#define __ARCH_WANT_SYS_ALARM 20#define __ARCH_WANT_SYS_GETHOSTNAME 21#define __ARCH_WANT_SYS_PAUSE 22#define __ARCH_WANT_SYS_SGETMASK 23#define __ARCH_WANT_SYS_SIGNAL 24#define __ARCH_WANT_SYS_TIME 25#define __ARCH_WANT_SYS_UTIME 26#define __ARCH_WANT_SYS_WAITPID 27#define __ARCH_WANT_SYS_SOCKETCALL 28#define __ARCH_WANT_SYS_FADVISE64 29#define __ARCH_WANT_SYS_GETPGRP 30#define __ARCH_WANT_SYS_LLSEEK 31#define __ARCH_WANT_SYS_NICE 32#define __ARCH_WANT_SYS_OLD_GETRLIMIT 33#define __ARCH_WANT_SYS_OLDUMOUNT 34#define __ARCH_WANT_SYS_SIGPENDING 35#define __ARCH_WANT_SYS_SIGPROCMASK 36#define __ARCH_WANT_SYS_RT_SIGACTION 37#define __ARCH_WANT_SYS_RT_SIGSUSPEND 38#endif 39 40#ifdef __KERNEL_SYSCALLS__ 41 42#include <linux/compiler.h> 43#include <linux/types.h> 44 45static inline int execve(const char *filename, char *const argv[], 46 char *const envp[]) 47{ 48 mm_segment_t fs; 49 int ret; 50 51 fs = get_fs(); 52 set_fs(KERNEL_DS); 53 ret = um_execve(filename, argv, envp); 54 set_fs(fs); 55 56 if (ret >= 0) 57 return ret; 58 59 errno = -(long)ret; 60 return -1; 61} 62 63int sys_execve(char *file, char **argv, char **env); 64 65#endif /* __KERNEL_SYSCALLS__ */ 66 67#undef __KERNEL_SYSCALLS__ 68#include "asm/arch/unistd.h" 69 70#endif /* _UM_UNISTD_H_*/