diff options
author | Sergei Golubchik <serg@mariadb.org> | 2017-04-18 11:29:02 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2017-04-20 16:36:22 +0200 |
commit | 036b689f187361848a315a192a83556256c0fe96 (patch) | |
tree | 71c6ec5cd52ae3bd36a795a0f17e2d1c7ccb725d /mysys | |
parent | 786363e89b834629410932afd3191af72b4001eb (diff) | |
download | mariadb-git-036b689f187361848a315a192a83556256c0fe96.tar.gz |
MDEV-12310 openat(<directory>, ...O_EXEC) fails on Illumos / Solaris
it could be
* O_SEARCH on Illumos
* O_EXEC on FreeBSD
* O_PATH on Linux
ugh
Diffstat (limited to 'mysys')
-rw-r--r-- | mysys/mysys_priv.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/mysys/mysys_priv.h b/mysys/mysys_priv.h index 4b489504c26..661c4c184f1 100644 --- a/mysys/mysys_priv.h +++ b/mysys/mysys_priv.h @@ -89,9 +89,13 @@ void sf_free(void *ptr); void my_error_unregister_all(void); -#if !defined(O_PATH) && defined(O_EXEC) /* FreeBSD */ +#ifndef O_PATH /* not Linux */ +#if defined(O_SEARCH) /* Illumos */ +#define O_PATH O_SEARCH +#elif defined(O_EXEC) /* FreeBSD */ #define O_PATH O_EXEC #endif +#endif #ifdef O_PATH #define HAVE_OPEN_PARENT_DIR_NOSYMLINKS |