Increase includes reusability and consistency

This commit is contained in:
Hamish Coleman 2022-04-16 11:43:19 +01:00
parent 7590ed51d5
commit 9728a36a56
2 changed files with 33 additions and 29 deletions

View File

@ -16,6 +16,9 @@
*
*/
#ifndef _N2N_DEFINE_H_
#define _N2N_DEFINE_H_
/* N2N packet header indicators. */
#define MSG_TYPE_REGISTER 1
#define MSG_TYPE_DEREGISTER 2
@ -219,3 +222,5 @@ enum skip_add {SN_ADD = 0, SN_ADD_SKIP = 1, SN_ADD_ADDED = 2};
#ifndef min
#define min(a, b) (((a) >(b)) ? (b) : (a))
#endif
#endif

View File

@ -19,6 +19,10 @@
#ifndef _N2N_TYPEDEFS_H_
#define _N2N_TYPEDEFS_H_
#include <stdint.h> // for uint8_t and friends
#include <arpa/inet.h> // for in_addr_t
#include <uthash.h>
#include <n2n_define.h>
typedef uint8_t n2n_community_t[N2N_COMMUNITY_SIZE];
typedef uint8_t n2n_private_public_key_t[N2N_PRIVATE_PUBLIC_KEY_SIZE];
@ -38,11 +42,6 @@ typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
typedef unsigned char uint8_t;
/* sys/types.h typedefs (not present in Visual Studio) */
typedef unsigned int u_int32_t;
typedef unsigned short u_int16_t;
typedef unsigned char u_int8_t;
#ifndef __MINGW32__
typedef int ssize_t;
#endif
@ -139,45 +138,45 @@ typedef struct ether_hdr ether_hdr_t;
struct n2n_iphdr {
#if defined(__LITTLE_ENDIAN__)
u_int8_t ihl:4, version:4;
uint8_t ihl:4, version:4;
#elif defined(__BIG_ENDIAN__)
u_int8_t version:4, ihl:4;
uint8_t version:4, ihl:4;
#else
# error "Byte order must be defined"
#endif
u_int8_t tos;
u_int16_t tot_len;
u_int16_t id;
u_int16_t frag_off;
u_int8_t ttl;
u_int8_t protocol;
u_int16_t check;
u_int32_t saddr;
u_int32_t daddr;
uint8_t tos;
uint16_t tot_len;
uint16_t id;
uint16_t frag_off;
uint8_t ttl;
uint8_t protocol;
uint16_t check;
uint32_t saddr;
uint32_t daddr;
} PACK_STRUCT;
struct n2n_tcphdr {
u_int16_t source;
u_int16_t dest;
u_int32_t seq;
u_int32_t ack_seq;
uint16_t source;
uint16_t dest;
uint32_t seq;
uint32_t ack_seq;
#if defined(__LITTLE_ENDIAN__)
u_int16_t res1:4, doff:4, fin:1, syn:1, rst:1, psh:1, ack:1, urg:1, ece:1, cwr:1;
uint16_t res1:4, doff:4, fin:1, syn:1, rst:1, psh:1, ack:1, urg:1, ece:1, cwr:1;
#elif defined(__BIG_ENDIAN__)
u_int16_t doff:4, res1:4, cwr:1, ece:1, urg:1, ack:1, psh:1, rst:1, syn:1, fin:1;
uint16_t doff:4, res1:4, cwr:1, ece:1, urg:1, ack:1, psh:1, rst:1, syn:1, fin:1;
#else
# error "Byte order must be defined"
#endif
u_int16_t window;
u_int16_t check;
u_int16_t urg_ptr;
uint16_t window;
uint16_t check;
uint16_t urg_ptr;
} PACK_STRUCT;
struct n2n_udphdr {
u_int16_t source;
u_int16_t dest;
u_int16_t len;
u_int16_t check;
uint16_t source;
uint16_t dest;
uint16_t len;
uint16_t check;
} PACK_STRUCT;
#if defined(_MSC_VER) || defined(__MINGW32__)