From 5fe7f5b4798c548dbbc62865c08ee4be4d67e119 Mon Sep 17 00:00:00 2001 From: Javier Garcia Date: Fri, 21 May 2021 09:07:41 +0200 Subject: pceplib: Extract fields needed for PcInitiated with Cisco pce. (1/4) 1.- Unknown/non-standard tlv where cisco sends BSID. 2.- Non-standard Vendor Info object where cisco sends color. Co-authored-by: Javier Garcia Signed-off-by: Sebastien Merle Signed-off-by: Javier Garcia --- pceplib/pcep_msg_objects_encoding.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'pceplib/pcep_msg_objects_encoding.c') diff --git a/pceplib/pcep_msg_objects_encoding.c b/pceplib/pcep_msg_objects_encoding.c index 9ab96f7bce..69420f8e7a 100644 --- a/pceplib/pcep_msg_objects_encoding.c +++ b/pceplib/pcep_msg_objects_encoding.c @@ -1339,8 +1339,15 @@ pcep_decode_obj_vendor_info(struct pcep_object_header *hdr, struct pcep_object_vendor_info *obj = (struct pcep_object_vendor_info *)common_object_create( hdr, sizeof(struct pcep_object_vendor_info)); + obj->enterprise_number = ntohl(*((uint32_t *)(obj_buf))); obj->enterprise_specific_info = ntohl(*((uint32_t *)(obj_buf + 4))); + if (obj->enterprise_number == ENTERPRISE_NUMBER_CISCO + && obj->enterprise_specific_info == ENTERPRISE_COLOR_CISCO) + obj->enterprise_specific_info1 = + ntohl(*((uint32_t *)(obj_buf + 8))); + else + obj->enterprise_specific_info1 = 0; return (struct pcep_object_header *)obj; } -- cgit v1.2.3