fix out-of-bounds read in PCDU Handler #218
@ -81,13 +81,17 @@ ReturnValue_t PCDUHandler::initialize() {
|
|||||||
|
|
||||||
void PCDUHandler::initializeSwitchStates() {
|
void PCDUHandler::initializeSwitchStates() {
|
||||||
using namespace pcdu;
|
using namespace pcdu;
|
||||||
|
try {
|
||||||
for (uint8_t idx = 0; idx < NUMBER_OF_SWITCHES; idx++) {
|
for (uint8_t idx = 0; idx < NUMBER_OF_SWITCHES; idx++) {
|
||||||
if (idx < PDU::CHANNELS_LEN) {
|
if (idx < PDU::CHANNELS_LEN) {
|
||||||
switchStates[idx] = INIT_SWITCHES_PDU1[idx];
|
switchStates[idx] = INIT_SWITCHES_PDU1.at(idx);
|
||||||
} else {
|
} else {
|
||||||
switchStates[idx] = INIT_SWITCHES_PDU2[idx];
|
switchStates[idx] = INIT_SWITCHES_PDU2.at(idx - PDU::CHANNELS_LEN);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (const std::out_of_range& err) {
|
||||||
|
sif::error << "PCDUHandler::initializeSwitchStates: " << err.what() << std::endl;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PCDUHandler::readCommandQueue() {
|
void PCDUHandler::readCommandQueue() {
|
||||||
|
Loading…
Reference in New Issue
Block a user