Ignore:
Timestamp:
Aug 29, 2005, 5:35:39 AM (20 years ago)
Author:
bird
Message:

o Reworked the open backend, adding directory support. Some O_*

flags was changed in the process, breaking the old ABI.
This is not fully tested.

o Added more BSD fields to struct stat, breaking the old ABI.

The mtime field and ctime fields will now keep the same values
and the creation time is to be found in birthtime. This means that
ctime will be updated in a few places where it doesn't on unix - but
this is probably better than previously where it wasn't ever updated
when it should.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/emx/include/sys/fcntl.h

    • Property cvs2svn:cvs-rev changed from 1.8 to 1.9
    r2315 r2316  
    126126/* bird: EMX used 0x2000 for O_SYNC. */
    127127#define O_SYNC          0x0080          /* POSIX synonym for O_FSYNC */
    128 #if 0  /* bird: not implemented - start */
    129128#if __BSD_VISIBLE
    130129#define O_NOFOLLOW      0x0100          /* don't follow symlinks */
    131130#endif
    132 #endif /* bird: not implemented - end */
    133131#define O_CREAT         0x0200          /* create if nonexistent */
    134132#define O_TRUNC         0x0400          /* truncate to zero length */
     
    145143#define O_NOCTTY        0x8000          /* don't assign controlling terminal */
    146144
    147 #if 0  /* bird: not implemented - start */
    148145#if __BSD_VISIBLE
    149146/* Attempt to bypass buffer cache */
    150147#define O_DIRECT        0x00010000
    151148#endif
    152 #endif /* bird: not implemented - end */
    153149
    154150/*
     
    279275#if !defined (O_TEXT)
    280276/* Open flags.
    281    As stated in the FreeBSD part, there is supposidly a limited number of bits
    282    available. We'll try keep it suitable for 16bit just in case (don't care to
    283    check what we use right now) because that'll enable us to share a 32-bit flag
    284    variable per handle to both status (O_*) flags and descriptor (FD_*) flags.
    285 
    286    When we've disabled a few BSD flags and leave out KERNEL stuff the following
    287    bits are available:
    288         0x0010, 0x0020, 0x0040, 0x0100, 0x1000, 0x4000*, 0x2000
    289 */
    290 #define O_TEXT          0x0010
    291 #define O_BINARY        0x0100
    292 #define O_SIZE          0x0020          /* EMX used 0x8000 for O_SIZE. */
     277 *      There is some limits to the available bits, generally FreeBSD limits
     278 *      it's range to the first 16-bits. See emx\io.h for the complete
     279 *      assignments.
     280 */
     281#define O_BINARY    0x00020000
     282#define O_TEXT      0x00040000
     283#define O_SIZE      0x00080000
    293284#if !defined (_POSIX_SOURCE) || defined(__USE_EMX)
    294 #define O_NOINHERIT     0x1000          /* EMX used 0x1000 for O_NOINHERIT. */
     285#define O_NOINHERIT 0x00001000
    295286#endif
    296287#endif
Note: See TracChangeset for help on using the changeset viewer.