message: Include encrypted fragment payload in payload (order) rules
Otherwise fragmented CREATE_CHILD_SA exchanges won't get accepted because they don't contain an SA payload. It also prevents a warning when ordering payloads. Fixes #752.
This commit is contained in:
@@ -180,6 +180,7 @@ static payload_order_t ike_sa_init_r_order[] = {
|
||||
*/
|
||||
static payload_rule_t ike_auth_i_rules[] = {
|
||||
/* payload type min max encr suff */
|
||||
{PLV2_FRAGMENT, 0, 1, TRUE, TRUE},
|
||||
{PLV2_NOTIFY, 0, MAX_NOTIFY_PAYLOADS, TRUE, FALSE},
|
||||
{PLV2_EAP, 0, 1, TRUE, TRUE},
|
||||
{PLV2_AUTH, 0, 1, TRUE, TRUE},
|
||||
@@ -227,6 +228,7 @@ static payload_order_t ike_auth_i_order[] = {
|
||||
{PLV2_NOTIFY, NO_ADDITIONAL_ADDRESSES},
|
||||
{PLV2_NOTIFY, 0},
|
||||
{PLV2_VENDOR_ID, 0},
|
||||
{PLV2_FRAGMENT, 0},
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -234,6 +236,7 @@ static payload_order_t ike_auth_i_order[] = {
|
||||
*/
|
||||
static payload_rule_t ike_auth_r_rules[] = {
|
||||
/* payload type min max encr suff */
|
||||
{PLV2_FRAGMENT, 0, 1, TRUE, TRUE},
|
||||
{PLV2_NOTIFY, 0, MAX_NOTIFY_PAYLOADS, TRUE, TRUE},
|
||||
{PLV2_EAP, 0, 1, TRUE, TRUE},
|
||||
{PLV2_AUTH, 0, 1, TRUE, TRUE},
|
||||
@@ -270,6 +273,7 @@ static payload_order_t ike_auth_r_order[] = {
|
||||
{PLV2_NOTIFY, NO_ADDITIONAL_ADDRESSES},
|
||||
{PLV2_NOTIFY, 0},
|
||||
{PLV2_VENDOR_ID, 0},
|
||||
{PLV2_FRAGMENT, 0},
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -277,6 +281,7 @@ static payload_order_t ike_auth_r_order[] = {
|
||||
*/
|
||||
static payload_rule_t informational_i_rules[] = {
|
||||
/* payload type min max encr suff */
|
||||
{PLV2_FRAGMENT, 0, 1, TRUE, TRUE},
|
||||
{PLV2_NOTIFY, 0, MAX_NOTIFY_PAYLOADS, TRUE, FALSE},
|
||||
{PLV2_CONFIGURATION, 0, 1, TRUE, FALSE},
|
||||
{PLV2_DELETE, 0, MAX_DELETE_PAYLOADS, TRUE, FALSE},
|
||||
@@ -295,6 +300,7 @@ static payload_order_t informational_i_order[] = {
|
||||
{PLV2_NOTIFY, 0},
|
||||
{PLV2_DELETE, 0},
|
||||
{PLV2_CONFIGURATION, 0},
|
||||
{PLV2_FRAGMENT, 0},
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -302,6 +308,7 @@ static payload_order_t informational_i_order[] = {
|
||||
*/
|
||||
static payload_rule_t informational_r_rules[] = {
|
||||
/* payload type min max encr suff */
|
||||
{PLV2_FRAGMENT, 0, 1, TRUE, TRUE},
|
||||
{PLV2_NOTIFY, 0, MAX_NOTIFY_PAYLOADS, TRUE, FALSE},
|
||||
{PLV2_CONFIGURATION, 0, 1, TRUE, FALSE},
|
||||
{PLV2_DELETE, 0, MAX_DELETE_PAYLOADS, TRUE, FALSE},
|
||||
@@ -320,6 +327,7 @@ static payload_order_t informational_r_order[] = {
|
||||
{PLV2_NOTIFY, 0},
|
||||
{PLV2_DELETE, 0},
|
||||
{PLV2_CONFIGURATION, 0},
|
||||
{PLV2_FRAGMENT, 0},
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -327,6 +335,7 @@ static payload_order_t informational_r_order[] = {
|
||||
*/
|
||||
static payload_rule_t create_child_sa_i_rules[] = {
|
||||
/* payload type min max encr suff */
|
||||
{PLV2_FRAGMENT, 0, 1, TRUE, TRUE},
|
||||
{PLV2_NOTIFY, 0, MAX_NOTIFY_PAYLOADS, TRUE, FALSE},
|
||||
{PLV2_SECURITY_ASSOCIATION, 1, 1, TRUE, FALSE},
|
||||
{PLV2_NONCE, 1, 1, TRUE, FALSE},
|
||||
@@ -353,6 +362,7 @@ static payload_order_t create_child_sa_i_order[] = {
|
||||
{PLV2_TS_INITIATOR, 0},
|
||||
{PLV2_TS_RESPONDER, 0},
|
||||
{PLV2_NOTIFY, 0},
|
||||
{PLV2_FRAGMENT, 0},
|
||||
};
|
||||
|
||||
/**
|
||||
@@ -360,6 +370,7 @@ static payload_order_t create_child_sa_i_order[] = {
|
||||
*/
|
||||
static payload_rule_t create_child_sa_r_rules[] = {
|
||||
/* payload type min max encr suff */
|
||||
{PLV2_FRAGMENT, 0, 1, TRUE, TRUE},
|
||||
{PLV2_NOTIFY, 0, MAX_NOTIFY_PAYLOADS, TRUE, TRUE},
|
||||
{PLV2_SECURITY_ASSOCIATION, 1, 1, TRUE, FALSE},
|
||||
{PLV2_NONCE, 1, 1, TRUE, FALSE},
|
||||
@@ -386,6 +397,7 @@ static payload_order_t create_child_sa_r_order[] = {
|
||||
{PLV2_TS_RESPONDER, 0},
|
||||
{PLV2_NOTIFY, ADDITIONAL_TS_POSSIBLE},
|
||||
{PLV2_NOTIFY, 0},
|
||||
{PLV2_FRAGMENT, 0},
|
||||
};
|
||||
|
||||
#ifdef ME
|
||||
|
||||
Reference in New Issue
Block a user