Skip to content

Commit

Permalink
UAPI: elf_read_implies_exec() is a kernel-only feature - so hide from…
Browse files Browse the repository at this point in the history
… userspace

elf_read_implies_exec() is a kernel-only feature as the second parameter is a
constant that isn't exported to userspace.  Not only that, but the
arch-specific overrides are not exported either.

So hide the macro from userspace.

Similarly, struct file should not be predeclared in userspace.

Signed-off-by: David Howells <dhowells@redhat.com>
  • Loading branch information
David Howells committed Dec 12, 2011
1 parent 070712c commit 267aed9
Showing 1 changed file with 9 additions and 9 deletions.
18 changes: 9 additions & 9 deletions include/linux/elf.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,6 @@
#include <asm/elf.h>
#endif

struct file;

#ifndef elf_read_implies_exec
/* Executables for which elf_read_implies_exec() returns TRUE will
have the READ_IMPLIES_EXEC personality flag set automatically.
Override in asm/elf.h as needed. */
# define elf_read_implies_exec(ex, have_pt_gnu_stack) 0
#endif

/* 32-bit ELF base types. */
typedef __u32 Elf32_Addr;
typedef __u16 Elf32_Half;
Expand Down Expand Up @@ -414,6 +405,13 @@ typedef struct elf64_note {
} Elf64_Nhdr;

#ifdef __KERNEL__
#ifndef elf_read_implies_exec
/* Executables for which elf_read_implies_exec() returns TRUE will
have the READ_IMPLIES_EXEC personality flag set automatically.
Override in asm/elf.h as needed. */
# define elf_read_implies_exec(ex, have_pt_gnu_stack) 0
#endif

#if ELF_CLASS == ELFCLASS32

extern Elf32_Dyn _DYNAMIC [];
Expand All @@ -437,6 +435,8 @@ extern Elf64_Dyn _DYNAMIC [];
#endif

/* Optional callbacks to write extra ELF notes. */
struct file;

#ifndef ARCH_HAVE_EXTRA_ELF_NOTES
static inline int elf_coredump_extra_notes_size(void) { return 0; }
static inline int elf_coredump_extra_notes_write(struct file *file,
Expand Down

0 comments on commit 267aed9

Please sign in to comment.