aboutsummaryrefslogtreecommitdiffstats
path: root/src/libcharon/encoding/payloads/ike_header.c
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2010-11-24 16:34:16 +0100
committerMartin Willi <martin@revosec.ch>2011-01-05 16:45:51 +0100
commitc93c7a7560b06f1cc11e3fbac3c6857f7ebcf79c (patch)
tree8cc102c44f568f0478f53221e3dfd8f63dc39e81 /src/libcharon/encoding/payloads/ike_header.c
parent1b671248c266bab03511a952f4bafaef7c591775 (diff)
downloadstrongswan-c93c7a7560b06f1cc11e3fbac3c6857f7ebcf79c.tar.bz2
strongswan-c93c7a7560b06f1cc11e3fbac3c6857f7ebcf79c.tar.xz
Added member fields for reserved bits and bytes in all payloads
Diffstat (limited to 'src/libcharon/encoding/payloads/ike_header.c')
-rw-r--r--src/libcharon/encoding/payloads/ike_header.c19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/libcharon/encoding/payloads/ike_header.c b/src/libcharon/encoding/payloads/ike_header.c
index 9c1bbbedb..d061bd25a 100644
--- a/src/libcharon/encoding/payloads/ike_header.c
+++ b/src/libcharon/encoding/payloads/ike_header.c
@@ -84,6 +84,11 @@ struct private_ike_header_t {
} flags;
/**
+ * Reserved bits of IKE header
+ */
+ bool reserved[5];
+
+ /**
* Associated Message-ID.
*/
u_int32_t message_id;
@@ -128,17 +133,17 @@ encoding_rule_t ike_header_encodings[] = {
{ U_INT_4, offsetof(private_ike_header_t, min_version) },
/* 8 Bit for the exchange type */
{ U_INT_8, offsetof(private_ike_header_t, exchange_type) },
- /* 2 Bit reserved bits, nowhere stored */
- { RESERVED_BIT, 0 },
- { RESERVED_BIT, 0 },
+ /* 2 Bit reserved bits */
+ { RESERVED_BIT, offsetof(private_ike_header_t, reserved[0]) },
+ { RESERVED_BIT, offsetof(private_ike_header_t, reserved[1]) },
/* 3 Bit flags, stored in the fields response, version and initiator */
{ FLAG, offsetof(private_ike_header_t, flags.response) },
{ FLAG, offsetof(private_ike_header_t, flags.version) },
{ FLAG, offsetof(private_ike_header_t, flags.initiator) },
- /* 3 Bit reserved bits, nowhere stored */
- { RESERVED_BIT, 0 },
- { RESERVED_BIT, 0 },
- { RESERVED_BIT, 0 },
+ /* 3 Bit reserved bits */
+ { RESERVED_BIT, offsetof(private_ike_header_t, reserved[2]) },
+ { RESERVED_BIT, offsetof(private_ike_header_t, reserved[3]) },
+ { RESERVED_BIT, offsetof(private_ike_header_t, reserved[4]) },
/* 4 Byte message id, stored in the field message_id */
{ U_INT_32, offsetof(private_ike_header_t, message_id) },
/* 4 Byte length fied, stored in the field length */