TSG-20717 Service Chaining增加全局链路号以支持无历史状态发包

This commit is contained in:
luwenpeng
2024-04-20 11:40:00 +08:00
parent 6b03470739
commit a0f1eca0ce
25 changed files with 314 additions and 109 deletions

View File

@@ -169,6 +169,9 @@ int marsio_buff_set_metadata(marsio_buff_t *m, enum mr_buff_metadata_type type,
mrb_metadata->link_db_index = route_ctx->link_db_index;
mrb_metadata->link_id = route_ctx->link_id;
return 0;
case MR_BUFF_LINK_ID:
mrb_metadata->link_id = *(uint16_t *)data;
return 0;
case MR_BUFF_SESSION_ID:
mrb_metadata->session_id = *(uint64_t *)data;
return 0;
@@ -178,6 +181,9 @@ int marsio_buff_set_metadata(marsio_buff_t *m, enum mr_buff_metadata_type type,
case MR_BUFF_USER_0:
mrb_metadata->user_data_0 = *(uint16_t *)data;
return 0;
case MR_BUFF_DIR:
mrb_metadata->dir = *(uint8_t *)data;
return 0;
default:
return -1;
}
@@ -238,6 +244,13 @@ int marsio_buff_get_metadata(marsio_buff_t *m, enum mr_buff_metadata_type type,
}
*(uint16_t *)(data) = (uint16_t)mrb_metadata->payload_offset;
return sizeof(uint16_t);
case MR_BUFF_LINK_ID:
if (sz_data < sizeof(uint16_t))
{
return -1;
}
*(uint16_t *)(data) = (uint16_t)mrb_metadata->link_id;
return sizeof(uint16_t);
case MR_BUFF_USER_0:
if (sz_data < sizeof(uint16_t))
{