marco 21 år sedan
förälder
incheckning
03d224009d
1 ändrade filer med 103 tillägg och 0 borttagningar
  1. 103 0
      rtl/unix/ipccdecl.inc

+ 103 - 0
rtl/unix/ipccdecl.inc

@@ -0,0 +1,103 @@
+{
+    $Id$
+    This file is part of the Free Pascal run time library.
+    Copyright (c) 1999-2000 by Marco van de Voort
+    member of the Free Pascal development team
+
+    CDecl calls for ipc unit
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+
+
+function cshmget(key:key_t;size:cint;shmflg:cint):cint; cdecl; external;
+Function cshmat (shmid:cint; shmaddr:pointer; shmflg:cint):pointer; cdecl;external;
+Function cshmdt (shmaddr:pointer):cint;  cdecl; external; 
+Function cshmctl(shmid:cint; cmd:cint; buf: pshmid_ds): cint; cdecl; external;
+Function csemget(key:Tkey; nsems:cint; semflg:cint): cint;  cdecl; external;
+Function csemop(semid:cint; sops: psembuf; nsops: cuint): cint;  cdecl; external;
+Function csemctl(semid:cint; semnum:cint; cmd:cint; var arg: tsemun): cint;  cdecl; external;
+Function cmsgget(key: TKey; msgflg:cint):cint;  cdecl; external; 
+Function cmsgsnd(msqid:cint; msgp: PMSGBuf; msgsz: size_t; msgflg:cint): cint;  cdecl; external;
+Function cmsgrcv(msqid:cint; msgp: PMSGBuf; msgsz: size_t; msgtyp:cint; msgflg:cint):cint;  cdecl; external;
+Function cmsgctl(msqid:cint; cmd: cint; buf: PMSQid_ds): cint;  cdecl; external;
+
+function cftok(path:Pchar; id:cint):key_t; cdecl; external;
+
+function ftok(path:Pchar; id:cint):key_t;
+
+var st:stat;
+
+begin
+  ftok:=cftok(path,id);
+end;
+
+function shmget(key:key_t;size:cint;flag:cint):cint;
+begin
+  shmget:=cshmget(key, size, flag);
+end;
+
+Function shmat (shmid:cint; shmaddr:pointer; shmflg:cint):pointer;
+begin
+  shmat:=cshmat(shmid, shmaddr, shmflg);
+end;
+
+Function shmdt (shmaddr:pointer):cint;
+
+begin
+  shmdt:=cshmdt(shmaddr);
+end;
+
+Function shmctl(shmid:cint; cmd:cint; buf: pshmid_ds): cint;
+
+begin
+  shmctl:= cshmctl(shmid, cmd, buf);
+end;
+
+Function semget(key:Tkey; nsems:cint; semflg:cint): cint;
+begin
+  semget:=csemget(key, nsems, semflg);
+end;
+
+Function semop(semid:cint; sops: psembuf; nsops: cuint): cint;
+begin
+  semop:=csemop(semid, sops, nsops);
+end;
+
+Function semctl(semid:cint; semnum:cint; cmd:cint; var arg: tsemun): longint;
+begin
+  semctl:=csemctl(semid, semnum, cmd, arg);
+end;
+
+Function msgget(key: TKey; msgflg:cint):cint;
+begin
+  msgget:=cmsgget(key, msgflg);
+end;
+
+Function msgsnd(msqid:cint; msgp: PMSGBuf; msgsz: size_t; msgflg:cint): cint;
+begin
+  msgsnd:=cmsgsnd(msqid, msgp, msgsz, msgflg);
+end;
+
+Function msgrcv(msqid:cint; msgp: PMSGBuf; msgsz: size_t; msgtyp:cint; msgflg:cint):cint;
+begin
+  msgrcv:=cmsgrcv(msqid, msgp, msgsz, msgtyp, msgflg);
+end;
+
+Function msgctl(msqid:cint; cmd: cint; buf: PMSQid_ds): cint;
+begin
+ msgctl:=cmsgctl( msqid, cmd, buf);
+end;
+
+{
+  $Log$
+  Revision 1.1  2004-04-25 20:33:50  marco
+   * intiial
+
+}