direnth.inc 3.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. Const
  2. DT_UNKNOWN = 0;
  3. DT_FIFO = 1;
  4. DT_CHR = 2;
  5. DT_DIR = 4;
  6. DT_BLK = 6;
  7. DT_REG = 8;
  8. DT_LNK = 10;
  9. DT_SOCK = 12;
  10. DT_WHT = 14;
  11. function IFTODT(mode : __mode_t) : longint;
  12. function DTTOIF(dirtype : longint) : __mode_t;
  13. type
  14. DIR = record end;
  15. __dirstream = DIR;
  16. PDIR = ^DIR;
  17. function opendir(__name:Pchar):PDIR;cdecl;external clib name 'opendir';
  18. function closedir(__dirp:PDIR):longint;cdecl;external clib name 'closedir';
  19. function readdir(__dirp:PDIR):Pdirent;cdecl;external clib name 'readdir';
  20. function readdir64(__dirp:PDIR):Pdirent64;cdecl;external clib name 'readdir64';
  21. function readdir_r(__dirp:PDIR; __entry:Pdirent; __result:PPdirent):longint;cdecl;external clib name 'readdir_r';
  22. function readdir64_r(__dirp:PDIR; __entry:Pdirent64; __result:PPdirent64):longint;cdecl;external clib name 'readdir64_r';
  23. procedure rewinddir(__dirp:PDIR);cdecl;external clib name 'rewinddir';
  24. procedure seekdir(__dirp:PDIR; __pos:longint);cdecl;external clib name 'seekdir';
  25. function telldir(__dirp:PDIR):longint;cdecl;external clib name 'telldir';
  26. function dirfd(__dirp:PDIR):longint;cdecl;external clib name 'dirfd';
  27. const
  28. MAXNAMLEN = 255;
  29. Type
  30. TSelectorFunc = function(const p1: PDirEnt): Integer; cdecl;
  31. TSelectorFunc64 = function(const p1: PDirEnt64): Integer; cdecl;
  32. TCompareFunc = function(const p1, p2: Pointer): Integer; cdecl;
  33. function scandir(__dir:Pchar; __namelist:PPPdirent; __selector:TSelectorfunc; __cmp:TComparefunc):longint;cdecl;external clib name 'scandir';
  34. function scandir64(__dir:Pchar; __namelist:PPPdirent64; __selector:TSelectorFunc64; __cmp:TCompareFunc):longint;cdecl;external clib name 'scandir64';
  35. function getdirentries(__fd:longint; __buf:Pchar; __nbytes:size_t; __basep:P__off_t):__ssize_t;cdecl;external clib name 'getdirentries';
  36. function getdirentries64(__fd:longint; __buf:Pchar; __nbytes:size_t; __basep:P__off64_t):__ssize_t;cdecl;external clib name 'getdirentries64';
  37. function alphasort(const e1: Pointer; const e2: Pointer): Integer; cdecl; external clib name 'alphasort';
  38. function alphasort64(const e1: Pointer; const e2: Pointer): Integer; cdecl; external clib name 'alphasort64';
  39. function versionsort(const e1: Pointer; const e2: Pointer): Integer; cdecl; external clib name 'versionsort';
  40. function versionsort64(const e1: Pointer; const e2: Pointer): Integer; cdecl; external clib name 'versionsort64';
  41. { ---------------------------------------------------------------------
  42. Borland compatibility types
  43. ---------------------------------------------------------------------}
  44. Type
  45. TDirectoryStream = DIR;
  46. PDirectoryStream = ^TDirectoryStream;
  47. TSelectorProc = TSelectorFunc;
  48. TSelectorProc64 = TSelectorFunc64;
  49. TCompareProc = TCompareFunc;
  50. function scandir(__dir:Pchar; var __namelist:PPdirent; __selector:TSelectorfunc; __cmp:TComparefunc):longint;cdecl;external clib name 'scandir';
  51. function scandir64(__dir:Pchar; var __namelist:PPdirent64; __selector:TSelectorFunc64; __cmp:TCompareFunc):longint;cdecl;external clib name 'scandir64';
  52. function getdirentries(__fd:longint; __buf:Pchar; __nbytes:size_t; var __basep:__off_t):__ssize_t;cdecl;external clib name 'getdirentries';
  53. function getdirentries64(__fd:longint; __buf:Pchar; __nbytes:size_t; var __basep: __off64_t):__ssize_t;cdecl;external clib name 'getdirentries64';