util: define O_TMPFILE on x86/x86-64, where the generic value is used

On other archs we'll not define it so that open_tmpfile() falls back to
unguessable name + unlink.
This commit is contained in:
Lennart Poettering 2014-01-28 13:25:51 +01:00
parent a6afc4aeaa
commit c09918f97a

View file

@ -327,3 +327,19 @@ static inline int name_to_handle_at(int fd, const char *name, struct file_handle
#ifndef TMP_MAX
# define TMP_MAX 238328
#endif
#if defined(__i386__) || defined(__x86_64__)
/* The precise definition of __O_TMPFILE is arch specific, so let's
* just define this on x86 where we know the value. */
#ifndef __O_TMPFILE
#define __O_TMPFILE 020000000
#endif
/* a horrid kludge trying to make sure that this will fail on old kernels */
#ifndef O_TMPFILE
#define O_TMPFILE (__O_TMPFILE | O_DIRECTORY)
#endif
#endif