2022-09-14 19:48:11 +02:00
|
|
|
#include "PromptPduReader.h"
|
2021-12-03 15:37:49 +01:00
|
|
|
|
2022-09-14 19:48:11 +02:00
|
|
|
PromptPduReader::PromptPduReader(const uint8_t *pduBuf, size_t maxSize)
|
2022-08-03 16:00:48 +02:00
|
|
|
: FileDirectiveReader(pduBuf, maxSize) {}
|
2021-12-03 15:37:49 +01:00
|
|
|
|
2022-09-14 19:48:11 +02:00
|
|
|
cfdp::PromptResponseRequired PromptPduReader::getPromptResponseRequired() const {
|
2022-02-02 10:29:30 +01:00
|
|
|
return responseRequired;
|
2021-12-03 15:37:49 +01:00
|
|
|
}
|
|
|
|
|
2022-09-14 19:48:11 +02:00
|
|
|
ReturnValue_t PromptPduReader::parseData() {
|
2022-08-03 16:00:48 +02:00
|
|
|
ReturnValue_t result = FileDirectiveReader::parseData();
|
2022-08-16 01:08:26 +02:00
|
|
|
if (result != returnvalue::OK) {
|
2022-02-02 10:29:30 +01:00
|
|
|
return result;
|
|
|
|
}
|
2022-08-03 16:00:48 +02:00
|
|
|
if (FileDirectiveReader::getWholePduSize() <= FileDirectiveReader::getHeaderSize()) {
|
2022-02-02 10:29:30 +01:00
|
|
|
return SerializeIF::STREAM_TOO_SHORT;
|
|
|
|
}
|
2022-08-03 16:00:48 +02:00
|
|
|
responseRequired = static_cast<cfdp::PromptResponseRequired>(
|
2022-08-08 18:29:32 +02:00
|
|
|
(pointers.rawPtr[FileDirectiveReader::getHeaderSize()] >> 7) & 0x01);
|
2022-08-16 01:08:26 +02:00
|
|
|
return returnvalue::OK;
|
2021-12-03 15:37:49 +01:00
|
|
|
}
|