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;
end
Dir 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 !