blob: 4ce3fc650e573b823ee7e17bb0b5c21a242a8845 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001/*
2 * Copyright (C) 2000 Jeff Dike (jdike@karaya.com)
3 * Licensed under the GPL
4 */
5
6#ifndef __KERN_H__
7#define __KERN_H__
8
9/* These are all user-mode things which are convenient to call directly
10 * from kernel code and for which writing a wrapper is too much of a pain.
11 * The regular include files can't be included because this file is included
12 * only into kernel code, and user-space includes conflict with kernel
13 * includes.
14 */
15
16extern int errno;
17
18extern int clone(int (*proc)(void *), void *sp, int flags, void *data);
19extern int sleep(int);
Jeff Dike2264c472006-01-06 00:18:59 -080020extern int printf(const char *fmt, ...);
Linus Torvalds1da177e2005-04-16 15:20:36 -070021extern char *strerror(int errnum);
22extern char *ptsname(int __fd);
23extern int munmap(void *, int);
24extern void *sbrk(int increment);
25extern void *malloc(int size);
26extern void perror(char *err);
27extern int kill(int pid, int sig);
28extern int getuid(void);
29extern int getgid(void);
30extern int pause(void);
31extern int write(int, const void *, int);
Jeff Dikec90e12b2006-03-27 01:14:29 -080032extern void exit(int);
Linus Torvalds1da177e2005-04-16 15:20:36 -070033extern int close(int);
34extern int read(unsigned int, char *, int);
35extern int pipe(int *);
36extern int sched_yield(void);
37extern int ptrace(int op, int pid, long addr, long data);
Jeff Dike2264c472006-01-06 00:18:59 -080038
Linus Torvalds1da177e2005-04-16 15:20:36 -070039#endif
40