X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=BlackBox%2F_FreeBSD_%2FLin%2FMod%2FLibc.txt;h=d9691eee2997bea8aff61fa5056e7b5febe59dff;hb=cb77c1eed98f6467672287f7bc6e3017f50c266f;hp=0aeaa91339424d09088b58ab1663a1a5083db77f;hpb=9a2b37ab5fec7ceee3e62651c14ef85e5d86542f;p=bbcp.git diff --git a/BlackBox/_FreeBSD_/Lin/Mod/Libc.txt b/BlackBox/_FreeBSD_/Lin/Mod/Libc.txt index 0aeaa91..d9691ee 100644 --- a/BlackBox/_FreeBSD_/Lin/Mod/Libc.txt +++ b/BlackBox/_FreeBSD_/Lin/Mod/Libc.txt @@ -1,7 +1,7 @@ MODULE LinLibc ["libc.so.7"]; (* - FreeBSD 9.0 + FreeBSD 11.0 i386 *) @@ -18,9 +18,8 @@ MODULE LinLibc ["libc.so.7"]; MAP_SHARED* = {0}; (* share changes *) MAP_PRIVATE* = {1}; (* changes are private *) MAP_FIXED* = {4}; (* map addr must be exactly as requested *) - MAP_COPY* = MAP_PRIVATE; (* Obsolete *) - MAP_RENAME* = {5}; (* Sun: rename private pages to file *) - MAP_NORESERVE* = {6}; (* Sun: don't reserve needed swap area *) + MAP_RESERVED0020* = {5}; (* previously unimplemented MAP_RENAME *) + MAP_RESERVED0040* = {6}; (* previously unimplemented MAP_NORESERVE *) MAP_RESERVED0080* = {7}; (* previously misimplemented MAP_INHERIT *) MAP_RESERVED0100* = {8}; (* previously unimplemented MAP_NOEXTEND *) MAP_HASSEMAPHORE* = {9}; (* region may contain semaphores *) @@ -28,8 +27,10 @@ MODULE LinLibc ["libc.so.7"]; MAP_NOSYNC* = {11}; (* page to but do not sync underlying file *) MAP_FILE* = {}; (* map from file (default) *) MAP_ANON* = {12}; (* allocated from memory, swap space *) + MAP_EXCL* = {14}; (* for MAP_FIXED, fail if address is used *) MAP_NOCORE* = {17}; (* dont include these pages in a coredump *) MAP_PREFAULT_READ* = {18}; (* prefault mapping for reading *) + MAP_ALIGNMENT_SHIFT* = {3,4}; (* PROT_READ, PROT_WRITE, PROT_EXEC (intFlags) *) @@ -103,6 +104,7 @@ MODULE LinLibc ["libc.so.7"]; SIGUSR2* = 31; (* user defined signal 2 *) SIGTHR* = 32; (* reserved by thread library. *) SIGLWP* = SIGTHR; + SIGLIBRT* = 33; (* reserved by real-time library. *) SIGEV_NONE* = 0; (* No async notification. *) SIGEV_SIGNAL* = 1; (* Generate a queued signal. *) SIGEV_THREAD* = 2; (* Call back from another pthread. *) @@ -304,11 +306,9 @@ MODULE LinLibc ["libc.so.7"]; EDOOFUS* = 88; (* Programming error *) ENOTCAPABLE* = 93; (* Capabilities insufficient *) ECAPMODE* = 94; (* Not permitted in capability mode *) - ELAST* = 94; (* Must be equal largest errno *) - ERESTART* = -1; (* restart syscall *) - EJUSTRETURN* = -2; (* don't modify regs, just return *) - ENOIOCTL* = -3; (* ioctl not handled by this layer *) - EDIRIOCTL* = -4; (* do direct ioctl in GEOM *) + ENOTRECOVERABLE* = 95; (* State not recoverable *) + EOWNERDEAD* = 96; (* Previous owner died *) + ELAST* = 96; (* Must be equal largest errno *) NAME_MAX* = 255; @@ -317,6 +317,10 @@ MODULE LinLibc ["libc.so.7"]; SEEK_CUR* = 1; SEEK_END* = 2; + STDIN_FILENO* = 0; + STDOUT_FILENO* = 1; + STDERR_FILENO* = 2; + P_tmpdir* = "/tmp"; (* O_RDWR, O_NONBLOCK (intFlags) *) @@ -330,6 +334,7 @@ MODULE LinLibc ["libc.so.7"]; O_EXEC* = {18}; (* Open for execute only *) O_TTY_INIT* = {19}; (* Restore default termios attributes *) O_CLOEXEC* = {20}; + O_VERIFY* = {21}; (* open only after verification *) O_RDONLY* = {}; (* open for reading only *) O_WRONLY* = {0}; (* open for writing only *) O_RDWR* = {1}; (* open for reading and writing *) @@ -343,6 +348,22 @@ MODULE LinLibc ["libc.so.7"]; O_NOCTTY* = {15}; (* don't assign controlling terminal *) + (* FreeBSD 11.0 /usr/include/time.h *) + CLOCK_REALTIME* = 0; + CLOCK_VIRTUAL* = 1; + CLOCK_PROF* = 2; + CLOCK_MONOTONIC* = 4; + CLOCK_UPTIME* = 5; (* FreeBSD-specific *) + CLOCK_UPTIME_PRECISE* = 7; (* FreeBSD-specific *) + CLOCK_UPTIME_FAST* = 8; (* FreeBSD-specific *) + CLOCK_REALTIME_PRECISE* = 9; (* FreeBSD-specific *) + CLOCK_REALTIME_FAST* = 10; (* FreeBSD-specific *) + CLOCK_MONOTONIC_PRECISE* = 11; (* FreeBSD-specific *) + CLOCK_MONOTONIC_FAST* = 12; (* FreeBSD-specific *) + CLOCK_SECOND* = 13; (* FreeBSD-specific *) + CLOCK_THREAD_CPUTIME_ID* = 14; + CLOCK_PROCESS_CPUTIME_ID* = 15; + TYPE StrArray* = POINTER TO ARRAY [untagged] OF PtrSTR; PtrSTR* = POINTER TO ARRAY [untagged] OF SHORTCHAR; @@ -357,6 +378,7 @@ MODULE LinLibc ["libc.so.7"]; ssize_t* = INTEGER; off_t* = LONGINT; clock_t* = INTEGER; + clockid_t* = INTEGER; time_t* = INTEGER; mode_t* = SHORTINT; pid_t* = INTEGER; @@ -555,6 +577,12 @@ MODULE LinLibc ["libc.so.7"]; d_name*: ARRAY [untagged] 255 + 1 (* 256 *) OF SHORTCHAR; END; + timespec_t* = RECORD [untagged] + (* FreeBSD 11.0 /usr/include/sys/_timespec.h *) + tv_sec*: time_t; (* seconds *) + tv_nsec*: long; (* and nanoseconds *) + END; + (* VAR stdin*: INTEGER; @@ -567,9 +595,13 @@ MODULE LinLibc ["libc.so.7"]; (* POSIX.1 *) PROCEDURE [ccall] stat* (path: PtrSTR; VAR sp: stat_t): int; *) +(* VAR errno*: INTEGER; stdin* ["__stdinp"]: PtrFILE; +*) + + PROCEDURE [ccall] __errno_location* ["__error"] (): PtrVoid; (* POSIX.1 *) PROCEDURE [ccall] stat* (path: PtrSTR; VAR sp: stat_t): int; @@ -578,6 +610,9 @@ MODULE LinLibc ["libc.so.7"]; (* ANSI C 89 *) PROCEDURE [ccall] clock* (): clock_t; + (* POSIX.1 *) + PROCEDURE [ccall] clock_gettime* (clock_id: clockid_t; VAR tp: timespec_t): int; + PROCEDURE [ccall] mmap* (adr: PtrVoid; len: size_t; prot: intFlags; flags: intFlags; fd: int; offset: off_t): PtrVoid; (* BSD *) PROCEDURE [ccall] munmap* (adr: PtrVoid; len: size_t): int; @@ -616,6 +651,7 @@ MODULE LinLibc ["libc.so.7"]; (* ANSI C 89 *) PROCEDURE [ccall] fopen* (path, mode: PtrSTR): PtrFILE; + PROCEDURE [ccall] fdopen* (fildes: int; mode: PtrSTR): PtrFILE; PROCEDURE [ccall] fclose* (stream: PtrFILE): int; PROCEDURE [ccall] fread* (ptr: PtrVoid; size: size_t; nmemb: size_t; stream: PtrFILE): size_t; PROCEDURE [ccall] fwrite* (ptr: PtrVoid; size: size_t; nmemb: size_t; stream: PtrFILE): size_t; @@ -650,8 +686,18 @@ MODULE LinLibc ["libc.so.7"]; PROCEDURE [ccall] write* (d: int; buf: PtrVoid; nbytes: size_t): ssize_t; PROCEDURE [ccall] read* (d: int; buf: PtrVoid; nbytes: size_t): ssize_t; PROCEDURE [ccall] close* (d: int): int; + PROCEDURE [ccall] lseek* (d: int; offset: off_t; whence: int): off_t; + + (* POSIX.1 *) + PROCEDURE [ccall] chmod* (path: PtrSTR; mode: mode_t): int; (* POSIX.1 *) PROCEDURE [ccall] sysconf* (name: int): long; + (* POSIX.2 *) + PROCEDURE [ccall] system* (string: PtrSTR): int; + + PROCEDURE [ccall] popen* (command, type: PtrSTR): PtrFILE; + PROCEDURE [ccall] pclose* (stream: PtrFILE): int; + END LinLibc.