mirror of
https://github.com/Qortal/Brooklyn.git
synced 2025-02-15 11:45:54 +00:00
* 0day explit mitigation * Memory corruption prevention * Privilege escalation prevention * Buffer over flow prevention * File System corruption defense * Thread escape prevention This may very well be the most intensive inclusion to BrooklynR. This will not be part of an x86 suite nor it will be released as tool kit. The security core toolkit will remain part of kernel base.
36 lines
1.0 KiB
C
36 lines
1.0 KiB
C
#ifndef __ASM_GENERIC_UNALIGNED_H
|
|
#define __ASM_GENERIC_UNALIGNED_H
|
|
|
|
/*
|
|
* This is the most generic implementation of unaligned accesses
|
|
* and should work almost anywhere.
|
|
*/
|
|
#include <asm/byteorder.h>
|
|
|
|
/* Set by the arch if it can handle unaligned accesses in hardware. */
|
|
#ifdef CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS
|
|
# include <linux/unaligned/access_ok.h>
|
|
#endif
|
|
|
|
#if defined(__LITTLE_ENDIAN)
|
|
# ifndef CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS
|
|
# include <linux/unaligned/le_struct.h>
|
|
# include <linux/unaligned/be_byteshift.h>
|
|
# endif
|
|
# include <linux/unaligned/generic.h>
|
|
# define get_unaligned __get_unaligned_le
|
|
# define put_unaligned __put_unaligned_le
|
|
#elif defined(__BIG_ENDIAN)
|
|
# ifndef CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS
|
|
# include <linux/unaligned/be_struct.h>
|
|
# include <linux/unaligned/le_byteshift.h>
|
|
# endif
|
|
# include <linux/unaligned/generic.h>
|
|
# define get_unaligned __get_unaligned_be
|
|
# define put_unaligned __put_unaligned_be
|
|
#else
|
|
# error need to define endianess
|
|
#endif
|
|
|
|
#endif /* __ASM_GENERIC_UNALIGNED_H */
|