… | |
… | |
325 | /* used for readlink etc. */ |
325 | /* used for readlink etc. */ |
326 | #ifndef PATH_MAX |
326 | #ifndef PATH_MAX |
327 | # define PATH_MAX 0 |
327 | # define PATH_MAX 0 |
328 | #endif |
328 | #endif |
329 | |
329 | |
|
|
330 | #ifndef O_CLOEXEC |
|
|
331 | #define O_CLOEXEC 0 |
|
|
332 | #endif |
|
|
333 | |
330 | #ifndef EIO_PATH_MIN |
334 | #ifndef EIO_PATH_MIN |
331 | # define EIO_PATH_MIN 8160 |
335 | # define EIO_PATH_MIN 8160 |
332 | #endif |
336 | #endif |
333 | |
337 | |
334 | #define EIO_PATH_MAX (PATH_MAX <= EIO_PATH_MIN ? EIO_PATH_MIN : PATH_MAX) |
338 | #define EIO_PATH_MAX (PATH_MAX <= EIO_PATH_MIN ? EIO_PATH_MIN : PATH_MAX) |
… | |
… | |
955 | intptr_t end = addr + len; |
959 | intptr_t end = addr + len; |
956 | intptr_t page = eio_pagesize (); |
960 | intptr_t page = eio_pagesize (); |
957 | |
961 | |
958 | if (addr < end) |
962 | if (addr < end) |
959 | if (flags & EIO_MT_MODIFY) /* modify */ |
963 | if (flags & EIO_MT_MODIFY) /* modify */ |
960 | do { *((volatile sig_atomic_t *)addr) |= 0; } while ((addr += page) < len && !EIO_CANCELLED (req)); |
964 | do { *((volatile sig_atomic_t *)addr) |= 0; } while ((addr += page) < end && !EIO_CANCELLED (req)); |
961 | else |
965 | else |
962 | do { *((volatile sig_atomic_t *)addr) ; } while ((addr += page) < len && !EIO_CANCELLED (req)); |
966 | do { *((volatile sig_atomic_t *)addr) ; } while ((addr += page) < end && !EIO_CANCELLED (req)); |
963 | } |
967 | } |
964 | |
968 | |
965 | return 0; |
969 | return 0; |
966 | } |
970 | } |
967 | |
971 | |