+ ext_id = m_sections[sect_num].exts[i];
+ if(ext_id >= m_nextcfgs) {
+ std::cout << "Invalid section extension configuration index - " << ext_id << " [max " << m_nextcfgs-1 << "]" << std::endl;
+ return (-1);
+ }
+
+ switch(m_extcfgs[ext_id].type) {
+ case XRAN_CP_SECTIONEXTCMD_1:
+// std::cout << "Skip Extension 1 !!" << std::endl;
+ continue;
+ case XRAN_CP_SECTIONEXTCMD_2:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext2);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext2;
+ break;
+ case XRAN_CP_SECTIONEXTCMD_3:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext3);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext3;
+ break;
+ case XRAN_CP_SECTIONEXTCMD_4:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext4);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext4;
+ break;
+ case XRAN_CP_SECTIONEXTCMD_5:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext5);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext5;
+ break;
+ case XRAN_CP_SECTIONEXTCMD_6:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext6);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext6;
+ break;
+ case XRAN_CP_SECTIONEXTCMD_9:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext9);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext9;
+ break;
+ case XRAN_CP_SECTIONEXTCMD_10:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext10);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext10;
+ break;
+ case XRAN_CP_SECTIONEXTCMD_11:
+ m_params.sections[sect_num].exData[numext].len = sizeof(m_extcfgs[ext_id].u.ext11);
+ m_params.sections[sect_num].exData[numext].data = &m_extcfgs[ext_id].u.ext11;
+
+ m_result.sections[sect_num].exts[numext].type = m_extcfgs[ext_id].type;
+ for(j=0 ; j < XRAN_MAX_SET_BFWS; j++)
+ m_result.sections[sect_num].exts[numext].u.ext11.bundInfo[j].pBFWs = (uint8_t *)m_pBfw_rx[j];
+
+ break;
+ default:
+ std::cout << "Invalid Section Extension Type - " << (int)m_extcfgs[ext_id].type << std::endl;
+ return (-1);
+ } /* switch(m_extcfgs[ext_id].type) */
+
+ m_params.sections[sect_num].exData[numext].type = m_extcfgs[ext_id].type;
+ numext++;
+ } /* for(i=0; i < m_sections[sect_num].exts.size(); i++) */
+
+ if(numext) {
+ m_params.sections[sect_num].exDataSize = numext;
+ m_params.sections[sect_num].info->ef = 1;
+ }
+ else {
+ m_params.sections[sect_num].exDataSize = 0;
+ m_params.sections[sect_num].info->ef = 0;
+ }
+ } /* for(sect_num=0; sect_num < m_numSections; sect_num++) */