Parent: [288ae8] (diff)

Download this file

UnixCalls.def    56 lines (48 with data), 3.6 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
DEFINITION MODULE FOR "C" UnixCalls; (* GNU M2 *)
(*========================================================================*)
(* WICHTIG: BITTE NUR DIE DATEI UnixCalls.def.m2cc EDITIEREN !!! *)
(*========================================================================*)
(* Aufrufe von UNIX Prozeduren mit "C" Huelle *)
(* Call to UNIX procedures with a "C" wrapper *)
(* *)
(* Es sind 3 Versionen enthalten die mit *)
(* *)
(* m2cc -D __{Parameter}__ < UnixCalls.def.m2cc > UnixCalls.def *)
(* *)
(* mit Parameter = {XDS|GM2} erzeugt werden koennen. *)
(* *)
(* XDS : Parameter werden fuer den XDS Modula-2 Compilter gesetzt *)
(* GM2 : Parameter werden fuer den GNU Modula-2 Compilter gesetzt *)
(* MOCKA : Parameter werden fuer den MOCKA Compilter gesetzt *)
(* *)
(* There are three version contained for XDS,GM2 and the Mocka compiler, *)
(* they can obtained with the m2cc command line shown above *)
(*------------------------------------------------------------------------*)
(* Implementation : Michael Riedl *)
(* Licence : GNU Lesser General Public License (LGPL) *)
(*------------------------------------------------------------------------*)
(* $Id: UnixCalls.def.m2cc,v 1.3 2018/06/08 07:46:25 mriedl Exp $ *)
PROCEDURE FileLength(VAR DateiLaenge : LONGCARD;
VAR Fehler : INTEGER;
VAR DateiName : ARRAY OF CHAR); (* Als letztes wg. HIGH *)
(*----------------------------------------------------------------*)
(* Kann von FileSystem.Length gerufen werden, um die L"ange *)
(* einer Datei zu ermitteln. *)
(* *)
(* Can be user by FileSystem.Lenght to get the length of a file *)
(* for internal use only. *)
(*----------------------------------------------------------------*)
PROCEDURE SetErrFlag(VAR Fehlerflag : ARRAY OF CHAR);
(*----------------------------------------------------------------*)
(* Ermitteln der letzten System-Fehlermeldung. Dies wird mittels *)
(* strerror(errno) und kopieren des gelieferten Zeigerinhalt in *)
(* Fehlerflag erreicht. *)
(* *)
(* Can be used to get the system error massage of the last error *)
(* errno is an integer variable which is set by system calls and *)
(* some library functions in the event of an error to indicate *)
(* what went wrong. "strerror" provides a pointer to a string *)
(* that describes the error code passed in the argument errnum. *)
(* The procedure copies that content to Fehlerflag via strcpy *)
(*----------------------------------------------------------------*)
END UnixCalls.