PGlob and TGlob are 2 types used in the Glob function:
PGlob = ^TGlob; TGlob = record Name : PChar; Next : PGlob; end;The following types are used in the signal-processing procedures.
{$Packrecords 1} SignalHandler = Procedure ( Sig : Integer);cdecl; PSignalHandler = SignalHandler; SignalRestorer = Procedure;cdecl; PSignalrestorer = SignalRestorer; SigActionRec = Record Sa_Handler : Signalhandler; Sa_Mask : Longint; Sa_flags : Integer; Sa_Restorer : SignalRestorer; end; PSigActionRec = ^SigActionRec;Stat is used to store information about a file. It is defined in the syscalls unit.
stat = record dev : word; pad1 : word; ino : longint; mode : word; nlink : word; uid : word; gid : word; rdev : word; pad2 : word; size : longint; blksze : Longint; blocks : Longint; atime : Longint; unused1 : longint; mtime : Longint; unused2 : longint; ctime : Longint; unused3 : longint; unused4 : longint; unused5 : longint; end;
Statfs is used to store information about a filesystem. It is defined in the syscalls unit.
statfs = record fstype : longint; bsize : longint; blocks : longint; bfree : longint; bavail : longint; files : longint; ffree : longint; fsid : longint; namelen : longint; spare : array [0..6] of longint; endDir and PDir are used in the OpenDir and ReadDir functions.
TDir =record fd : integer; loc : longint; size : integer; buf : pdirent; nextoff: longint; dd_max : integer; lock : pointer; end; PDir =^TDir;Dirent, PDirent are used in the ReadDir function to return files in a directory.
PDirent = ^Dirent; Dirent = Record ino, off : longint; reclen : word; name : string[255] end;Termio and Termios are used with iotcl() calls for terminal handling.
Const NCCS = 19; NCC = 8; Type termio = record c_iflag, { input mode flags } c_oflag, { output mode flags } c_cflag, { control mode flags } c_lflag : Word; { local mode flags } c_line : Word; { line discipline - careful, only High byte in use} c_cc : array [0..NCC-1] of char; { control characters } end; termios = record c_iflag, { input mode flags } c_oflag, { output mode flags } c_cflag, { control mode flags } c_lflag : Cardinal; { local mode flags } c_line : char; { line discipline } c_cc : array [0..NCCS-1] of char; { control characters } end;Utimbuf is used in the Utime call to set access and modificaton time of a file.
utimbuf = record actime,modtime : Longint; end;For the Select call, the following 4 types are needed:
FDSet = Array [0..31] of longint; PFDSet = ^FDSet; TimeVal = Record sec,usec : Longint; end; PTimeVal = ^TimeVal;The Uname function uses the utsname to return information about the current kernel :
utsname =record sysname,nodename,release, version,machine,domainname : Array[0..64] of char; end;Its elements are null-terminated C style strings, you cannot access them directly !