47 lines
1.6 KiB
C
47 lines
1.6 KiB
C
// POSIX process, path, and byte-stream declarations for nt-lite.
|
|
|
|
#pragma once
|
|
|
|
#include <stddef.h>
|
|
#include <sys/types.h>
|
|
#include <ntlite_posix_api.h>
|
|
#include <ntlite_posix_profile.h>
|
|
|
|
#define _POSIX_VERSION NTL_POSIX_PROFILE_VERSION
|
|
|
|
#define SEEK_SET 0
|
|
#define SEEK_CUR 1
|
|
#define SEEK_END 2
|
|
|
|
#define PIPE_BUF 4096
|
|
|
|
NTL_POSIX_API ssize_t read(int fd, void* buffer, size_t count);
|
|
NTL_POSIX_API ssize_t write(int fd, const void* buffer, size_t count);
|
|
NTL_POSIX_API int close(int fd);
|
|
NTL_POSIX_API int dup(int oldfd);
|
|
NTL_POSIX_API int dup2(int oldfd, int newfd);
|
|
NTL_POSIX_API int pipe(int pipefd[2]);
|
|
NTL_POSIX_API off_t lseek(int fd, off_t offset, int whence);
|
|
NTL_POSIX_API int chdir(const char* path);
|
|
NTL_POSIX_API char* getcwd(char* buffer, size_t size);
|
|
NTL_POSIX_API int unlink(const char* path);
|
|
NTL_POSIX_API pid_t getpid(void);
|
|
NTL_POSIX_API pid_t getppid(void);
|
|
NTL_POSIX_API pid_t vfork(void);
|
|
NTL_POSIX_API int execve(const char* path, char* const argv[], char* const envp[]);
|
|
NTL_POSIX_API void _exit(int status);
|
|
NTL_POSIX_API unsigned int alarm(unsigned int seconds);
|
|
NTL_POSIX_API int pause(void);
|
|
NTL_POSIX_API unsigned int sleep(unsigned int seconds);
|
|
NTL_POSIX_API uid_t getuid(void);
|
|
NTL_POSIX_API uid_t geteuid(void);
|
|
NTL_POSIX_API gid_t getgid(void);
|
|
NTL_POSIX_API gid_t getegid(void);
|
|
NTL_POSIX_API int setuid(uid_t uid);
|
|
NTL_POSIX_API int setgid(gid_t gid);
|
|
NTL_POSIX_API int getgroups(int size, gid_t list[]);
|
|
NTL_POSIX_API char* getlogin(void);
|
|
NTL_POSIX_API pid_t getpgrp(void);
|
|
NTL_POSIX_API int setpgid(pid_t pid, pid_t pgid);
|
|
NTL_POSIX_API pid_t setsid(void);
|