]> git.proxmox.com Git - mirror_edk2.git/blame - StdLib/Include/unistd.h
Add Socket Libraries.
[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
40\r
53e1e5c6 41// Networking\r
42long gethostid(void);\r
43int gethostname(char *, size_t);\r
44int getdomainname(char *, size_t);\r
45int setdomainname(const char *, size_t);\r
46int sethostid(long);\r
47int sethostname(const char *, size_t);\r
48\r
d7ce7006 49/* Stub functions implemented for porting ease.\r
50 These functions always fail or return NULL.\r
51*/\r
52__aconst char *getlogin(void);\r
53pid_t fork(void);\r
54uid_t getuid(void);\r
55\r
53e1e5c6 56// For Future implementation\r
53e1e5c6 57ssize_t pread(int, void *, size_t, off_t);\r
58ssize_t pwrite(int, const void *, size_t, off_t);\r
59int syscall(int, ...);\r
53e1e5c6 60\r
d7ce7006 61#if 0 // The following functions are not implemented\r
62__dead void _exit(int) __attribute__((__noreturn__));\r
53e1e5c6 63unsigned int alarm(unsigned int);\r
64int chown(const char *, uid_t, gid_t);\r
65size_t confstr(int, char *, size_t);\r
66int execl(const char *, const char *, ...);\r
67int execle(const char *, const char *, ...);\r
68int execlp(const char *, const char *, ...);\r
69int execv(const char *, char * const *);\r
70int execve(const char *, char * const *, char * const *);\r
71int execvp(const char *, char * const *);\r
72long fpathconf(int, int);\r
73gid_t getegid(void);\r
74uid_t geteuid(void);\r
75gid_t getgid(void);\r
76int getgroups(int, gid_t []);\r
53e1e5c6 77pid_t getpid(void);\r
78pid_t getppid(void);\r
53e1e5c6 79int link(const char *, const char *);\r
80long pathconf(const char *, int);\r
81int pause(void);\r
82int pipe(int *);\r
83int setgid(gid_t);\r
84int setpgid(pid_t, pid_t);\r
85pid_t setsid(void);\r
86int setuid(uid_t);\r
87unsigned int sleep(unsigned int);\r
88long sysconf(int);\r
d7ce7006 89\r
53e1e5c6 90int tcsetpgrp(int, pid_t);\r
91__aconst char *ttyname(int);\r
92\r
53e1e5c6 93extern int opterr;\r
53e1e5c6 94extern int optopt;\r
d7ce7006 95extern int optreset;\r
96extern char *suboptarg;\r
53e1e5c6 97\r
98int setegid(gid_t);\r
99int seteuid(uid_t);\r
100int fdatasync(int);\r
101int fsync(int);\r
102int ttyname_r(int, char *, size_t);\r
103int chroot(const char *);\r
104int nice(int);\r
105__aconst char *crypt(const char *, const char *);\r
106int encrypt(char *, int);\r
53e1e5c6 107pid_t getsid(pid_t);\r
108\r
109#ifndef intptr_t\r
110typedef __intptr_t intptr_t;\r
111#define intptr_t __intptr_t\r
112#endif\r
113\r
114int brk(void *);\r
115int fchdir(int);\r
116int fchown(int, uid_t, gid_t);\r
117int getdtablesize(void);\r
118__pure int getpagesize(void); /* legacy */\r
119pid_t getpgid(pid_t);\r
120int lchown(const char *, uid_t, gid_t);\r
121int lockf(int, int, off_t);\r
122ssize_t readlink(const char * __restrict, char * __restrict, size_t);\r
123void *sbrk(intptr_t);\r
124int setregid(gid_t, gid_t);\r
125int setreuid(uid_t, uid_t);\r
126void swab(const void *, void *, size_t);\r
127int symlink(const char *, const char *);\r
128void sync(void);\r
129useconds_t ualarm(useconds_t, useconds_t);\r
130int usleep(useconds_t);\r
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