| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- DEFINITION MODULE FOR "C" Posix ;
- (* Thin ISO-friendly bindings to libc for the TP3 shell.
- Foreign (FOR "C") module: maps directly onto C symbols. *)
- FROM SYSTEM IMPORT ADDRESS ;
- TYPE
- Dir = ADDRESS ;
- dirent = RECORD
- d_ino : LONGCARD ;
- d_off : LONGINT ;
- d_reclen : ARRAY [0..1] OF CHAR ;
- d_type : CHAR ;
- d_name : ARRAY [0..255] OF CHAR ;
- END ;
- statvfsbuf = RECORD
- f_bsize : LONGCARD ;
- f_frsize : LONGCARD ;
- f_blocks : LONGCARD ;
- f_bfree : LONGCARD ;
- f_bavail : LONGCARD ;
- f_files : LONGCARD ;
- f_ffree : LONGCARD ;
- f_favail : LONGCARD ;
- f_fsid : LONGCARD ;
- f_flag : LONGCARD ;
- f_namemax : LONGCARD ;
- END ;
- PROCEDURE read (fd : INTEGER ; buf : ADDRESS ; nbytes : LONGCARD) : LONGINT ;
- PROCEDURE write (fd : INTEGER ; buf : ADDRESS ; nbytes : LONGCARD) : LONGINT ;
- PROCEDURE open (path : ADDRESS ; oflag : INTEGER ; mode : LONGCARD) : INTEGER ;
- PROCEDURE close (fd : INTEGER) : INTEGER ;
- PROCEDURE unlink (path : ADDRESS) : INTEGER ;
- PROCEDURE rename (oldp, newp : ADDRESS) : INTEGER ;
- PROCEDURE getcwd (buf : ADDRESS ; size : LONGCARD) : ADDRESS ;
- PROCEDURE chdir (path : ADDRESS) : INTEGER ;
- PROCEDURE opendir (path : ADDRESS) : Dir ;
- PROCEDURE readdir (d : Dir) : ADDRESS ;
- PROCEDURE closedir (d : Dir) : INTEGER ;
- PROCEDURE statvfs (path : ADDRESS ; buf : ADDRESS) : INTEGER ;
- (* termios (linux): *)
- PROCEDURE tcgetattr (fd : INTEGER ; t : ADDRESS) : INTEGER ;
- PROCEDURE tcsetattr (fd : INTEGER ; opt : INTEGER ; t : ADDRESS) : INTEGER ;
- PROCEDURE cfmakeraw (t : ADDRESS) ;
- (* poll(2): wait for readiness on pollfds (POLLIN = 1) *)
- PROCEDURE poll (fds : ADDRESS ; nfds : LONGCARD ; timeout : INTEGER) : INTEGER ;
- END Posix.
|