26 #ifndef _DTLS_NUMERIC_H_
27 #define _DTLS_NUMERIC_H_
32 #define min(A,B) ((A) <= (B) ? (A) : (B))
36 #define max(A,B) ((A) < (B) ? (B) : (A))
42 field[0] = value & 0xff;
48 field[0] = (value >> 8) & 0xff;
49 field[1] = value & 0xff;
55 field[0] = (value >> 16) & 0xff;
56 field[1] = (value >> 8) & 0xff;
57 field[2] = value & 0xff;
63 field[0] = (value >> 24) & 0xff;
64 field[1] = (value >> 16) & 0xff;
65 field[2] = (value >> 8) & 0xff;
66 field[3] = value & 0xff;
72 field[0] = (value >> 40) & 0xff;
73 field[1] = (value >> 32) & 0xff;
74 field[2] = (value >> 24) & 0xff;
75 field[3] = (value >> 16) & 0xff;
76 field[4] = (value >> 8) & 0xff;
77 field[5] = value & 0xff;
83 field[0] = (value >> 56) & 0xff;
84 field[1] = (value >> 48) & 0xff;
85 field[2] = (value >> 40) & 0xff;
86 field[3] = (value >> 32) & 0xff;
87 field[4] = (value >> 24) & 0xff;
88 field[5] = (value >> 16) & 0xff;
89 field[6] = (value >> 8) & 0xff;
90 field[7] = value & 0xff;
96 return (uint8_t)field[0];
101 return ((uint16_t)field[0] << 8)
102 | (uint16_t)field[1];
107 return ((uint32_t)field[0] << 16)
108 | ((uint32_t)field[1] << 8)
109 | (uint32_t)field[2];
114 return ((uint32_t)field[0] << 24)
115 | ((uint32_t)field[1] << 16)
116 | ((uint32_t)field[2] << 8)
117 | (uint32_t)field[3];
122 return ((uint64_t)field[0] << 40)
123 | ((uint64_t)field[1] << 32)
124 | ((uint64_t)field[2] << 24)
125 | ((uint64_t)field[3] << 16)
126 | ((uint64_t)field[4] << 8)
127 | (uint64_t)field[5];
132 return ((uint64_t)field[0] << 56)
133 | ((uint64_t)field[1] << 48)
134 | ((uint64_t)field[2] << 40)
135 | ((uint64_t)field[3] << 32)
136 | ((uint64_t)field[4] << 24)
137 | ((uint64_t)field[5] << 16)
138 | ((uint64_t)field[6] << 8)
139 | (uint64_t)field[7];
static uint32_t dtls_uint32_to_int(const unsigned char *field)
static uint64_t dtls_uint64_to_int(const unsigned char *field)
static int dtls_int_to_uint48(unsigned char *field, uint64_t value)
static int dtls_int_to_uint24(unsigned char *field, uint32_t value)
static uint8_t dtls_uint8_to_int(const unsigned char *field)
static int dtls_int_to_uint64(unsigned char *field, uint64_t value)
static int dtls_int_to_uint16(unsigned char *field, uint16_t value)
static uint16_t dtls_uint16_to_int(const unsigned char *field)
static int dtls_int_to_uint32(unsigned char *field, uint32_t value)
static uint64_t dtls_uint48_to_int(const unsigned char *field)
static int dtls_int_to_uint8(unsigned char *field, uint8_t value)
static uint32_t dtls_uint24_to_int(const unsigned char *field)