* Makefile.in (OBSOLETE_FUNCTIONS): Add fcntl.
(NEW_FUNCTIONS): Add fcntl64. * cygwin.din: Export fcntl64. Make fcntl being SIGFE. * fcntl.cc (fcntl_worker): New function. (fcntl64): New function. (_fcntl): Call fcntl_worker. Convert 32 bit flock structure into 64 bit flock structure and vice versa. * fhandler.cc (fhandler_base::lock): Change 2nd parameter to struct __flock64 *. * fhandler_disk_file.cc (fhandler_disk_file::lock): Ditto. Rework to be 64 bit aware. * fhandler.h: Accomodate above method argument changes. * include/cygwin/types.h: Add struct __flock32 and __flock64. Define struct flock according to setting of __CYGWIN_USE_BIG_TYPES__. * include/cygwin/version.h: Bump API minor number.
This commit is contained in:
@@ -294,7 +294,7 @@ class fhandler_base
|
||||
virtual ssize_t readv (const struct iovec *, int iovcnt, ssize_t tot = -1);
|
||||
virtual ssize_t writev (const struct iovec *, int iovcnt, ssize_t tot = -1);
|
||||
virtual _off64_t lseek (_off64_t offset, int whence);
|
||||
virtual int lock (int, struct flock *);
|
||||
virtual int lock (int, struct __flock64 *);
|
||||
virtual void dump ();
|
||||
virtual int dup (fhandler_base *child);
|
||||
|
||||
@@ -603,7 +603,7 @@ class fhandler_disk_file: public fhandler_base
|
||||
|
||||
int open (int flags, mode_t mode);
|
||||
int close ();
|
||||
int lock (int, struct flock *);
|
||||
int lock (int, struct __flock64 *);
|
||||
bool isdevice () { return false; }
|
||||
int __stdcall fstat (struct __stat64 *buf) __attribute__ ((regparm (2)));
|
||||
|
||||
|
Reference in New Issue
Block a user