1/* 2 * If linux/types.h is already been included, assume it has defined 3 * everything we need. (cross fingers) Other header files may have 4 * also defined the types that we need. 5 */ 6#if (!defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \ 7 !defined(_EXT2_TYPES_H)) 8#define _EXT2_TYPES_H 9 10typedef unsigned char __u8; 11typedef __signed__ char __s8; 12typedef unsigned short __u16; 13typedef __signed__ short __s16; 14typedef unsigned int __u32; 15typedef __signed__ int __s32; 16typedef unsigned long long __u64; 17typedef __signed__ long long __s64; 18#endif 19 20#include <stdint.h> //uintptr_t 21 22/* endian checking stuff */ 23#ifndef EXT2_ENDIAN_H_ 24#define EXT2_ENDIAN_H_ 25 26#ifdef __CHECKER__ 27#define __bitwise __attribute__((bitwise)) 28#define __force __attribute__((force)) 29#else 30#ifndef __bitwise 31#define __bitwise 32#endif 33#define __force 34#endif 35 36typedef __u16 __bitwise __le16; 37typedef __u32 __bitwise __le32; 38typedef __u64 __bitwise __le64; 39typedef __u16 __bitwise __be16; 40typedef __u32 __bitwise __be32; 41typedef __u64 __bitwise __be64; 42 43#endif /* EXT2_ENDIAN_H_ */ 44