From: Lennart Poettering Date: Tue, 28 Jan 2014 12:25:51 +0000 (+0100) Subject: util: define O_TMPFILE on x86/x86-64, where the generic value is used X-Git-Tag: v209~311 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=c09918f97a3c2fc4c8320d327eafd287bc2138da 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. --- diff --git a/src/shared/missing.h b/src/shared/missing.h index 4e6210003..939f81d9c 100644 --- a/src/shared/missing.h +++ b/src/shared/missing.h @@ -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