#include <stddef.h>
+#ifdef __cplusplus
+extern "C" {
+#endif
+
//! \brief flags for open(2)
#define O_WRONLY 0x01
#define O_RDONLY 0x02
extern ssize_t write(int fd, const void *buf, size_t count);
extern ssize_t read(int fd, void *buf, size_t count);
+extern off_t lseek(int fd, off_t offset, int whence);
extern int fork(void);
extern int execv(const char *b, char *v[]);
#define S_IXOTH 00001
extern int chmod(const char *path, mode_t mode);
+extern int unlink(const char *pathname);
+
+extern int access(const char *pathname, int mode);
+
+extern pid_t setsid(void);
+
extern uid_t getuid(void);
+//extern int setuid(uid_t uid);
extern uid_t geteuid(void);
extern pid_t getpid(void);
+extern int seteuid(uid_t euid);
+extern int setegid(gid_t egid);
+//extern int setgid(gid_t gid);
+
+typedef uint32_t useconds_t;
+
+extern unsigned int sleep(unsigned int seconds);
+extern int usleep(useconds_t usec);
+extern unsigned int alarm(unsigned int seconds);
+
+// - crypt.c
+extern char *crypt(const char *key, const char *salt);
+
+// - pty.c
+extern char *ttyname(int fd);
+extern int ttyname_r(int fd, char *buf, size_t buflen);
// signal.h / sys/types.h
-#define SIGWINCH 101
-#define SIGTSTP 102
extern int kill(pid_t pid, int sig);
+extern int chdir(const char *dir);
+extern int rmdir(const char *pathname);
+
+// Deprecated POSIX.1-2001
+#define PASS_MAX 63
+extern char *getpass(const char *prompt);
+
+#if __cplusplus
+}
+#endif
#endif