#include <netinet/in.h>
#include "sg_global.h"
struct __una_in6_addr { struct in6_addr x; } __packed;
struct __una_u16 { __u16 x; } __packed;
struct __una_u32 { __u32 x; } __packed;
struct __una_u64 { __u64 x; } __packed;
static inline __u16 __get_unaligned_cpu16(const void *p)
{
const struct __una_u16 *ptr = (const struct __una_u16 *)p;
return ptr->x;
}
static inline __u32 __get_unaligned_cpu32(const void *p)
{
const struct __una_u32 *ptr = (const struct __una_u32 *)p;
return ptr->x;
}
static inline __u64 __get_unaligned_cpu64(const void *p)
{
const struct __una_u64 *ptr = (const struct __una_u64 *)p;
return ptr->x;
}
static inline struct in6_addr __get_unaligned_in6_addr(const void *p)
{
const struct __una_in6_addr *ptr = (const struct