notify-payload: Add notify type for IP-TFS/AGGFRAG

This commit is contained in:
Tobias Brunner
2025-05-28 16:37:46 +02:00
parent 6372b2890f
commit f5f7424e1d
2 changed files with 16 additions and 6 deletions
@@ -122,9 +122,10 @@ ENUM_NEXT(notify_type_names, USE_PPK, INTERMEDIATE_EXCHANGE_SUPPORTED, SIGNATURE
"PPK_IDENTITY",
"NO_PPK_AUTH",
"INTERMEDIATE_EXCHANGE_SUPPORTED");
ENUM_NEXT(notify_type_names, ADDITIONAL_KEY_EXCHANGE, ADDITIONAL_KEY_EXCHANGE, INTERMEDIATE_EXCHANGE_SUPPORTED,
"ADDITIONAL_KEY_EXCHANGE");
ENUM_NEXT(notify_type_names, SA_RESOURCE_INFO, SA_RESOURCE_INFO, ADDITIONAL_KEY_EXCHANGE,
ENUM_NEXT(notify_type_names, ADDITIONAL_KEY_EXCHANGE, USE_AGGFRAG, INTERMEDIATE_EXCHANGE_SUPPORTED,
"ADDITIONAL_KEY_EXCHANGE",
"USE_AGGFRAG");
ENUM_NEXT(notify_type_names, SA_RESOURCE_INFO, SA_RESOURCE_INFO, USE_AGGFRAG,
"SA_RESOURCE_INFO");
ENUM_NEXT(notify_type_names, INITIAL_CONTACT_IKEV1, INITIAL_CONTACT_IKEV1, SA_RESOURCE_INFO,
"INITIAL_CONTACT");
@@ -244,9 +245,10 @@ ENUM_NEXT(notify_type_short_names, USE_PPK, INTERMEDIATE_EXCHANGE_SUPPORTED, SIG
"PPK_ID",
"NO_PPK",
"IKE_INT_SUP");
ENUM_NEXT(notify_type_short_names, ADDITIONAL_KEY_EXCHANGE, ADDITIONAL_KEY_EXCHANGE, INTERMEDIATE_EXCHANGE_SUPPORTED,
"ADD_KE");
ENUM_NEXT(notify_type_short_names, SA_RESOURCE_INFO, SA_RESOURCE_INFO, ADDITIONAL_KEY_EXCHANGE,
ENUM_NEXT(notify_type_short_names, ADDITIONAL_KEY_EXCHANGE, USE_AGGFRAG, INTERMEDIATE_EXCHANGE_SUPPORTED,
"ADD_KE",
"AGGFRAG");
ENUM_NEXT(notify_type_short_names, SA_RESOURCE_INFO, SA_RESOURCE_INFO, USE_AGGFRAG,
"RES_INFO");
ENUM_NEXT(notify_type_short_names, INITIAL_CONTACT_IKEV1, INITIAL_CONTACT_IKEV1, SA_RESOURCE_INFO,
"INITIAL_CONTACT");
@@ -560,6 +562,12 @@ METHOD(payload_t, verify, status_t,
bad_length = TRUE;
}
break;
case USE_AGGFRAG:
if (this->notify_data.len != 1)
{
bad_length = TRUE;
}
break;
default:
/* TODO: verify */
break;
@@ -171,6 +171,8 @@ enum notify_type_t {
/* multiple key exchanges, RFC 9370 */
ADDITIONAL_KEY_EXCHANGE = 16441,
/* IP-TFS/AGGFRAG, RFC 9347 */
USE_AGGFRAG = 16442,
/* Resource info for CHILD_SAs, RFC 9611 */
SA_RESOURCE_INFO = 16444,