]> git.proxmox.com Git - mirror_edk2.git/blame - StdLib/Include/unistd.h
Fix compilation errors detected with GCC 4.4
[mirror_edk2.git] / StdLib / Include / unistd.h
CommitLineData
53e1e5c6 1/** @file\r
2\r
3 Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>\r
4 This program and the accompanying materials are licensed and made available under\r
5 the terms and conditions of the BSD License that accompanies this distribution.\r
6 The full text of the license may be found at\r
7 http://opensource.org/licenses/bsd-license.\r
8\r
9 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
10 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
11\r
12**/\r
13#ifndef _UNISTD_H_\r
14#define _UNISTD_H_\r
15\r
16//#include <machine/ansi.h>\r
17//#include <machine/int_types.h>\r
18//#include <sys/featuretest.h>\r
19//#include <sys/types.h>\r
20#include <sys/unistd.h>\r
21#include <sys/EfiSysCall.h>\r
22\r
23#define F_ULOCK 0\r
24#define F_LOCK 1\r
25#define F_TLOCK 2\r
26#define F_TEST 3\r
27\r
28\r
29__BEGIN_DECLS\r
d7ce7006 30int dup(int);\r
53e1e5c6 31int rename(const char *, const char *);\r
32\r
d7ce7006 33/* Functions implemented for compatibility. */\r
34int getopt(int, char * const [], const char *);\r
35extern char *optarg; /* getopt(3) external variables */\r
36extern int optind;\r
37pid_t getpgrp(void);\r
38pid_t tcgetpgrp(int);\r
39char *getpass(const char *);\r
5252c292 40int usleep(useconds_t);\r
41unsigned int sleep(unsigned int);\r
d7ce7006 42\r
53e1e5c6 43// Networking\r
44long gethostid(void);\r
45int gethostname(char *, size_t);\r
46int getdomainname(char *, size_t);\r
47int setdomainname(const char *, size_t);\r
48int sethostid(long);\r
49int sethostname(const char *, size_t);\r
50\r
d7ce7006 51/* Stub functions implemented for porting ease.\r
52 These functions always fail or return NULL.\r
53*/\r
54__aconst char *getlogin(void);\r
55pid_t fork(void);\r
56uid_t getuid(void);\r
57\r
53e1e5c6 58// For Future implementation\r
53e1e5c6 59ssize_t pread(int, void *, size_t, off_t);\r
60ssize_t pwrite(int, const void *, size_t, off_t);\r
61int syscall(int, ...);\r
53e1e5c6 62\r
d7ce7006 63#if 0 // The following functions are not implemented\r
64__dead void _exit(int) __attribute__((__noreturn__));\r
53e1e5c6 65unsigned int alarm(unsigned int);\r
66int chown(const char *, uid_t, gid_t);\r
67size_t confstr(int, char *, size_t);\r
68int execl(const char *, const char *, ...);\r
69int execle(const char *, const char *, ...);\r
70int execlp(const char *, const char *, ...);\r
71int execv(const char *, char * const *);\r
72int execve(const char *, char * const *, char * const *);\r
73int execvp(const char *, char * const *);\r
74long fpathconf(int, int);\r
75gid_t getegid(void);\r
76uid_t geteuid(void);\r
77gid_t getgid(void);\r
78int getgroups(int, gid_t []);\r
53e1e5c6 79pid_t getpid(void);\r
80pid_t getppid(void);\r
53e1e5c6 81int link(const char *, const char *);\r
82long pathconf(const char *, int);\r
83int pause(void);\r
84int pipe(int *);\r
85int setgid(gid_t);\r
86int setpgid(pid_t, pid_t);\r
87pid_t setsid(void);\r
88int setuid(uid_t);\r
53e1e5c6 89long sysconf(int);\r
d7ce7006 90\r
53e1e5c6 91int tcsetpgrp(int, pid_t);\r
92__aconst char *ttyname(int);\r
93\r
53e1e5c6 94extern int opterr;\r
53e1e5c6 95extern int optopt;\r
d7ce7006 96extern int optreset;\r
97extern char *suboptarg;\r
53e1e5c6 98\r
99int setegid(gid_t);\r
100int seteuid(uid_t);\r
101int fdatasync(int);\r
102int fsync(int);\r
103int ttyname_r(int, char *, size_t);\r
104int chroot(const char *);\r
105int nice(int);\r
106__aconst char *crypt(const char *, const char *);\r
107int encrypt(char *, int);\r
53e1e5c6 108pid_t getsid(pid_t);\r
109\r
110#ifndef intptr_t\r
111typedef __intptr_t intptr_t;\r
112#define intptr_t __intptr_t\r
113#endif\r
114\r
115int brk(void *);\r
116int fchdir(int);\r
117int fchown(int, uid_t, gid_t);\r
118int getdtablesize(void);\r
119__pure int getpagesize(void); /* legacy */\r
120pid_t getpgid(pid_t);\r
121int lchown(const char *, uid_t, gid_t);\r
122int lockf(int, int, off_t);\r
123ssize_t readlink(const char * __restrict, char * __restrict, size_t);\r
124void *sbrk(intptr_t);\r
125int setregid(gid_t, gid_t);\r
126int setreuid(uid_t, uid_t);\r
127void swab(const void *, void *, size_t);\r
128int symlink(const char *, const char *);\r
129void sync(void);\r
130useconds_t ualarm(useconds_t, useconds_t);\r
53e1e5c6 131pid_t vfork(void) __RENAME(__vfork14);\r
132\r
133/*\r
134 * Implementation-defined extensions\r
135 */\r
136int acct(const char *);\r
137int closefrom(int);\r
138int des_cipher(const char *, char *, long, int);\r
139int des_setkey(const char *);\r
140void endusershell(void);\r
141int exect(const char *, char * const *, char * const *);\r
142int fchroot(int);\r
143int fsync_range(int, int, off_t, off_t);\r
144int getgrouplist(const char *, gid_t, gid_t *, int *);\r
145int getgroupmembership(const char *, gid_t, gid_t *, int, int *);\r
146mode_t getmode(const void *, mode_t);\r
147int getsubopt(char **, char * const *, char **);\r
148__aconst char *getusershell(void);\r
149int initgroups(const char *, gid_t);\r
150int iruserok(uint32_t, int, const char *, const char *);\r
151int issetugid(void);\r
152int nfssvc(int, void *);\r
153int profil(char *, size_t, u_long, u_int);\r
154void psignal(unsigned int, const char *);\r
155int rcmd(char **, int, const char *, const char *, const char *, int *);\r
156int revoke(const char *);\r
157int rresvport(int *);\r
158int ruserok(const char *, int, const char *, const char *);\r
159int setgroups(int, const gid_t *);\r
160int setlogin(const char *);\r
161void *setmode(const char *);\r
162int setrgid(gid_t);\r
163int setruid(uid_t);\r
164void setusershell(void);\r
165void strmode(mode_t, char *);\r
166__aconst char *strsignal(int);\r
167int swapctl(int, void *, int);\r
168quad_t __syscall(quad_t, ...);\r
169int undelete(const char *);\r
170int rcmd_af(char **, int, const char *, const char *, const char *, int *, int);\r
171int rresvport_af(int *, int);\r
172int iruserok_sa(const void *, int, int, const char *, const char *);\r
d7ce7006 173#endif /* Unimplemented functions. */\r
53e1e5c6 174\r
175__END_DECLS\r
176\r
177#endif /* !_UNISTD_H_ */\r