| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 | {    This file is part of the Free Pascal run time library.    Copyright (c) 2007 by the Free Pascal development team        This file should become an alternative to the syscalls in due time,    to import the base calls from libc.    Be very careful though. Kernel types and libc types are often not the    same on Linux.        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.                                               ***********************************************************************}{ ********************************************************************* }{ fpioctl                                                               }{ ********************************************************************* }function  real_FpIOCtl   (Handle:cint;Ndx: TIOCtlRequest):cint; cdecl; varargs; external clib name 'ioctl';function  FpIOCtl   (Handle:cint;Ndx: TIOCtlRequest;Data: Pointer):cint;begin  FpIOCtl:=real_FpIOCtl(Handle, Ndx, Data);end;{ ********************************************************************* }{ fpfcntl                                                               }{ ********************************************************************* }function real_FpFcntl (fildes : cInt; cmd : cInt): cInt; cdecl; varargs; external clib name 'fcntl';Function  FpFcntl      (fildes : cInt; cmd : cInt): cInt;begin  FpFcntl:=real_FpFcntl(fildes, cmd);end;Function  FpFcntl      (fildes : cInt; cmd : cInt; arg :cInt): cInt;begin  FpFcntl:=real_FpFcntl(fildes, cmd, arg);end;Function  FpFcntl      (fildes : cInt; cmd : cInt; var arg : flock): cInt;begin  FpFcntl:=real_FpFcntl(fildes, cmd, @arg);end;{ ********************************************************************* }{ fpopen                                                                }{ ********************************************************************* }function  real_FpOpen(path: PAnsiChar; flags : cint):cint; varargs; cdecl; external clib name 'open'{$ifdef aix}+suffix64bit{$endif};function  FpOpen    (path: PAnsiChar; flags : cint; mode: TMode):cint;begin{$if defined(linux) and defined(fs32bit)}  flags:=flags or O_LARGEFILE;{$endif}  { emulate what the bunxovl(h).inc version of fpopen does. Required because    existing code depends on this (it doesn't always pass a valid mode when    using fmCreate) }  FpOpen:=real_FpOpen(path,flags,mode);end;
 |