home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 1 / crawlyvol1.bin / program / compiler / m2posx14 / src / bsd.dpp < prev    next >
Encoding:
Modula Definition  |  1994-05-14  |  6.9 KB  |  214 lines

  1. DEFINITION MODULE BSD;
  2. __DEF_SWITCHES__
  3. #ifdef HM2
  4. #ifdef __LONG_WHOLE__
  5. (*$!i+: Modul muss mit $i- uebersetzt werden! *)
  6. (*$!w+: Modul muss mit $w- uebersetzt werden! *)
  7. #else
  8. (*$!i-: Modul muss mit $i+ uebersetzt werden! *)
  9. (*$!w-: Modul muss mit $w+ uebersetzt werden! *)
  10. #endif
  11. #endif
  12. #if no_reexport
  13. #  error *** compiler does not allow reexporting!
  14. #endif
  15. (****************************************************************************)
  16. (* Das Modul fasst Aufrufe, Typen und Konstanten zusammen, die nicht zu     *)
  17. (* POSIX.1 gehoeren. Der Name des Moduls wurde so gewaehlt, weil die meisten*)
  18. (* dieser Objekte im BSD-Unix vorkommen, es kann aber auch sein, dass einige*)
  19. (* aus anderen Unix-Systemen stammen, deshalb ist der Name des Moduls nicht *)
  20. (* unbedingt als Programm zu verstehen.                                     *)
  21. (* Fuer Leute, die lieber aus einem einzigen Modul importieren wollen, und  *)
  22. (* deren Compiler den Reexport erlaubt.                                     *)
  23. (* Fuer die Beschreibung der Funktionen sollten die entsprechenden Defini-  *)
  24. (* tionsmodule konsultiert werden.                                          *)
  25. (* -------------------------------------------------------------------------*)
  26. (* 14-Mai-94, Holger Kleinschmidt                                           *)
  27. (****************************************************************************)
  28. #if !ISO_proc_const
  29. FROM PORTAB IMPORT SIGNEDLONG,UNSIGNEDLONG;
  30. FROM types  IMPORT int,signedlong,StrPtr,offT,pidT,uidT,gidT,sizeT;
  31. FROM dir    IMPORT DIR;
  32. FROM proc   IMPORT WaitVal,WaitOption;
  33. #endif
  34. IMPORT e,types,file,dir,proc,sys,sig;
  35.  
  36. (*===========================================================================*)
  37. (* Modul: 'e'                                                                *)
  38. (*===========================================================================*)
  39.  
  40. CONST
  41.   ENOTSOCK        = e.ENOTSOCK;
  42.   EDESTADDRREQ    = e.EDESTADDRREQ;
  43.   EMSGSIZE        = e.EMSGSIZE;
  44.   EPROTOTYPE      = e.EPROTOTYPE;
  45.   ENOPROTOOPT     = e.ENOPROTOOPT;
  46.   EPROTONOSUPPORT = e.EPROTONOSUPPORT;
  47.   ESOCKTNOSUPPORT = e.ESOCKTNOSUPPORT;
  48.   EOPNOTSUPP      = e.EOPNOTSUPP;
  49.   EPFNOSUPPORT    = e.EPFNOSUPPORT;
  50.   EAFNOSUPPORT    = e.EAFNOSUPPORT;
  51.   EADDRINUSE      = e.EADDRINUSE;
  52.   EADDRNOTAVAIL   = e.EADDRNOTAVAIL;
  53.   ENETDOWN        = e.ENETDOWN;
  54.   ENETUNREACH     = e.ENETUNREACH;
  55.   ENETRESET       = e.ENETRESET;
  56.   ECONNABORTED    = e.ECONNABORTED;
  57.   ECONNRESET      = e.ECONNRESET;
  58.   EISCONN         = e.EISCONN;
  59.   ENOTCONN        = e.ENOTCONN;
  60.   ESHUTDOWN       = e.ESHUTDOWN;
  61.   ETIMEDOUT       = e.ETIMEDOUT;
  62.   ECONNREFUSED    = e.ECONNREFUSED;
  63.   EHOSTDOWN       = e.EHOSTDOWN;
  64.   EHOSTUNREACH    = e.EHOSTUNREACH;
  65.   EALREADY        = e.EALREADY;
  66.   EINPROGRESS     = e.EINPROGRESS;
  67.   EWOULDBLOCK     = e.EWOULDBLOCK;
  68.  
  69. (*===========================================================================*)
  70. (* Modul: 'file'                                                             *)
  71. (*===========================================================================*)
  72.  
  73. CONST
  74.   sIFMT  = file.sIFMT;
  75.   sIFCHR = file.sIFCHR;
  76.   sIFDIR = file.sIFDIR;
  77.   sIFBLK = file.sIFBLK;
  78.   sIFREG = file.sIFREG;
  79.   sIFIFO = file.sIFIFO;
  80.   sIFLNK = file.sIFLNK;
  81.  
  82. (*===========================================================================*)
  83. (* Modul: 'dir'                                                              *)
  84. (*===========================================================================*)
  85.  
  86. #if ISO_proc_const
  87.  telldir = dir.telldir;
  88.  seekdir = dir.seekdir;
  89. #else
  90. VAR (* READ ONLY! *)
  91.  telldir : PROCEDURE(DIR):offT;
  92.  seekdir : PROCEDURE(DIR,offT);
  93. #endif
  94.  
  95. (*===========================================================================*)
  96. (* Modul: 'proc'                                                             *)
  97. (*===========================================================================*)
  98.  
  99. CONST
  100.   wRetcode  = proc.wRetcode;
  101.   wTermsig  = proc.wTermsig;
  102.   wCoredump = proc.wCoredump;
  103.   wStopval  = proc.wStopval;
  104.   wStopsig  = proc.wStopsig;
  105.   WSTOPPED  = proc.WSTOPPED;
  106.  
  107. CONST
  108.   FDSETSIZE = proc.FDSETSIZE;
  109.  
  110. TYPE
  111.   fdSet    = proc.fdSet;
  112.   FdSetPtr = proc.FdSetPtr;
  113.  
  114. TYPE
  115.   TimevalRec = proc.TimevalRec;
  116.   TimevalPtr = proc.TimevalPtr;
  117.  
  118. TYPE
  119.   RusageRec = proc.RusageRec;
  120.  
  121. #if ISO_proc_const
  122. CONST
  123.   setreuid = proc.setreuid;
  124.   setregid = proc.setregid;
  125.   vfork    = proc.vfork;
  126.   wait3    = proc.wait3;
  127.   wait4    = proc.wait4;
  128.   select   = proc.select;
  129.   FDZERO   = proc.FDZERO;
  130.   FDSET    = proc.FDSET;
  131.   FDCLR    = proc.FDCLR;
  132.   FDISSET  = proc.FDISSET;
  133. #else
  134. VAR (* READ ONLY! *)
  135.   setreuid : PROCEDURE(uidT,uidT):int;
  136.   setregid : PROCEDURE(gidT,gidT):int;
  137.   vfork    : PROCEDURE():pidT;
  138.   wait3    : PROCEDURE(VAR WaitVal,WaitOption,VAR RusageRec):pidT;
  139.   wait4    : PROCEDURE(pidT,VAR WaitVal,WaitOption,VAR RusageRec):pidT;
  140.   select   : PROCEDURE(int,FdSetPtr,FdSetPtr,FdSetPtr,TimevalPtr):int;
  141.   FDZERO   : PROCEDURE(VAR fdSet);
  142.   FDSET    : PROCEDURE(int,VAR fdSet);
  143.   FDCLR    : PROCEDURE(int,VAR fdSet);
  144.   FDISSET  : PROCEDURE(int,fdSet):BOOLEAN;
  145. #endif
  146.  
  147. (*===========================================================================*)
  148. (* Modul: 'sig'                                                              *)
  149. (*===========================================================================*)
  150.  
  151. CONST
  152.   SIGNULL   = sig.SIGNULL;
  153.   SIGTRAP   = sig.SIGTRAP;
  154.   SIGIOT    = sig.SIGIOT;
  155.   SIGEMT    = sig.SIGEMT;
  156.   SIGBUS    = sig.SIGBUS;
  157.   SIGSYS    = sig.SIGSYS;
  158.   SIGURG    = sig.SIGURG;
  159.   SIGIO     = sig.SIGIO;
  160.   SIGXCPU   = sig.SIGXCPU;
  161.   SIGXFSZ   = sig.SIGXFSZ;
  162.   SIGVTALRM = sig.SIGVTALRM;
  163.   SIGPROF   = sig.SIGPROF;
  164.   SIGWINCH  = sig.SIGWINCH;
  165.  
  166. CONST
  167.   NSIG = sig.NSIG;
  168.  
  169. TYPE
  170.   SigAtomicT = sig.SigAtomicT;
  171.  
  172. #if ISO_proc_const
  173. CONST
  174.   killpg     = sig.killpg;
  175.   usleep     = sig.usleep;
  176.   sigmask    = sig.sigmask;
  177.   sigpause   = sig.sigpause;
  178.   sigblock   = sig.sigblock;
  179.   sigsetmask = sig.sigsetmask;
  180. #else
  181. VAR (* READ ONLY! *)
  182.   killpg     : PROCEDURE(pidT,int):int;
  183.   usleep     : PROCEDURE(signedlong):signedlong;
  184.   sigmask    : PROCEDURE(int):UNSIGNEDLONG;
  185.   sigpause   : PROCEDURE(UNSIGNEDLONG);
  186.   sigblock   : PROCEDURE(UNSIGNEDLONG):UNSIGNEDLONG;
  187.   sigsetmask : PROCEDURE(UNSIGNEDLONG):UNSIGNEDLONG;
  188. #endif
  189.  
  190. (*===========================================================================*)
  191. (* Modul: 'sys'                                                              *)
  192. (*===========================================================================*)
  193.  
  194. CONST
  195.   MAXHOSTNAMELEN = sys.MAXHOSTNAMELEN;
  196.  
  197. TYPE
  198.   fsidT = sys.fsidT;
  199.  
  200. TYPE
  201.   StatfsRec = sys.StatfsRec;
  202.  
  203. #if ISO_proc_const
  204. CONST
  205.   statfs      = sys.statfs;
  206.   gethostname = sys.gethostname;
  207. #else
  208. VAR (* READ ONLY! *)
  209.   statfs      : PROCEDURE(REF ARRAY OF CHAR,VAR StatfsRec):int;
  210.   gethostname : PROCEDURE(StrPtr,sizeT):int;
  211. #endif
  212.  
  213. END BSD.
  214.