src/java.base/unix/classes/sun/nio/fs/UnixNativeDispatcher.java
changeset 57568 460ac76019f4
parent 55693 9a97b1393e72
child 58131 3054503bad7d
equal deleted inserted replaced
57567:b000362a89a0 57568:460ac76019f4
   417      * futimes(int fildes, const struct timeval times[2])
   417      * futimes(int fildes, const struct timeval times[2])
   418      */
   418      */
   419     static native void futimes(int fd, long times0, long times1) throws UnixException;
   419     static native void futimes(int fd, long times0, long times1) throws UnixException;
   420 
   420 
   421     /**
   421     /**
       
   422      * futimens(int fildes, const struct timespec times[2])
       
   423      */
       
   424     static native void futimens(int fd, long times0, long times1) throws UnixException;
       
   425 
       
   426     /**
   422      * lutimes(const char* path, const struct timeval times[2])
   427      * lutimes(const char* path, const struct timeval times[2])
   423      */
   428      */
   424     static void lutimes(UnixPath path, long times0, long times1)
   429     static void lutimes(UnixPath path, long times0, long times1)
   425         throws UnixException
   430         throws UnixException
   426     {
   431     {
   591     /**
   596     /**
   592      * Capabilities
   597      * Capabilities
   593      */
   598      */
   594     private static final int SUPPORTS_OPENAT        = 1 << 1;  // syscalls
   599     private static final int SUPPORTS_OPENAT        = 1 << 1;  // syscalls
   595     private static final int SUPPORTS_FUTIMES       = 1 << 2;
   600     private static final int SUPPORTS_FUTIMES       = 1 << 2;
   596     private static final int SUPPORTS_LUTIMES       = 1 << 4;
   601     private static final int SUPPORTS_FUTIMENS      = 1 << 4;
       
   602     private static final int SUPPORTS_LUTIMES       = 1 << 8;
   597     private static final int SUPPORTS_BIRTHTIME     = 1 << 16; // other features
   603     private static final int SUPPORTS_BIRTHTIME     = 1 << 16; // other features
   598     private static final int capabilities;
   604     private static final int capabilities;
   599 
   605 
   600     /**
   606     /**
   601      * Supports openat and other *at calls.
   607      * Supports openat and other *at calls.
   607     /**
   613     /**
   608      * Supports futimes or futimesat
   614      * Supports futimes or futimesat
   609      */
   615      */
   610     static boolean futimesSupported() {
   616     static boolean futimesSupported() {
   611         return (capabilities & SUPPORTS_FUTIMES) != 0;
   617         return (capabilities & SUPPORTS_FUTIMES) != 0;
       
   618     }
       
   619 
       
   620     /**
       
   621      * Supports futimens
       
   622      */
       
   623     static boolean futimensSupported() {
       
   624         return (capabilities & SUPPORTS_FUTIMENS) != 0;
   612     }
   625     }
   613 
   626 
   614     /**
   627     /**
   615      * Supports lutimes
   628      * Supports lutimes
   616      */
   629      */