we already have CFDP messages
This commit is contained in:
parent
a1f36a0dd8
commit
b0b6c68720
@ -4,8 +4,9 @@ CfdpMessage::CfdpMessage() = default;
|
|||||||
|
|
||||||
CfdpMessage::~CfdpMessage() = default;
|
CfdpMessage::~CfdpMessage() = default;
|
||||||
|
|
||||||
void CfdpMessage::setCommand(CommandMessage *message, store_address_t cfdpPacket) {
|
void CfdpMessage::setPutRequest(CommandMessage *message, store_address_t putRequest) {
|
||||||
message->setParameter(cfdpPacket.raw);
|
message->setCommand(PUT_REQUEST);
|
||||||
|
message->setParameter(putRequest.raw);
|
||||||
}
|
}
|
||||||
|
|
||||||
store_address_t CfdpMessage::getStoreId(const CommandMessage *message) {
|
store_address_t CfdpMessage::getStoreId(const CommandMessage *message) {
|
||||||
|
@ -11,9 +11,11 @@ class CfdpMessage {
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
static const uint8_t MESSAGE_ID = messagetypes::CFDP;
|
static const uint8_t MESSAGE_ID = messagetypes::CFDP;
|
||||||
|
static const Command_t PUT_REQUEST = MAKE_COMMAND_ID(1);
|
||||||
|
static const Command_t CANCEL_REQUEST = MAKE_COMMAND_ID(1);
|
||||||
|
|
||||||
virtual ~CfdpMessage();
|
virtual ~CfdpMessage();
|
||||||
static void setCommand(CommandMessage* message, store_address_t cfdpPacket);
|
static void setPutRequest(CommandMessage* message, store_address_t putRequest);
|
||||||
|
|
||||||
static store_address_t getStoreId(const CommandMessage* message);
|
static store_address_t getStoreId(const CommandMessage* message);
|
||||||
|
|
||||||
|
@ -11,7 +11,7 @@ ReturnValue_t cfdp::PutRequest::serialize(uint8_t **buffer, size_t *size, size_t
|
|||||||
if (result != OK) {
|
if (result != OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
if (*size + 1 > maxSize) {
|
if (*size + getSerializedSize() > maxSize) {
|
||||||
return SerializeIF::BUFFER_TOO_SHORT;
|
return SerializeIF::BUFFER_TOO_SHORT;
|
||||||
}
|
}
|
||||||
**buffer = metadataOnly;
|
**buffer = metadataOnly;
|
||||||
@ -26,9 +26,6 @@ ReturnValue_t cfdp::PutRequest::serialize(uint8_t **buffer, size_t *size, size_t
|
|||||||
if (result != OK) {
|
if (result != OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
if (*size + sourceNameSize > maxSize) {
|
|
||||||
return SerializeIF::BUFFER_TOO_SHORT;
|
|
||||||
}
|
|
||||||
std::memcpy(*buffer, sourceName, sourceNameSize);
|
std::memcpy(*buffer, sourceName, sourceNameSize);
|
||||||
*buffer += sourceNameSize;
|
*buffer += sourceNameSize;
|
||||||
*size += sourceNameSize;
|
*size += sourceNameSize;
|
||||||
@ -36,9 +33,6 @@ ReturnValue_t cfdp::PutRequest::serialize(uint8_t **buffer, size_t *size, size_t
|
|||||||
if (result != OK) {
|
if (result != OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
if (*size + destNameSize > maxSize) {
|
|
||||||
return SerializeIF::BUFFER_TOO_SHORT;
|
|
||||||
}
|
|
||||||
std::memcpy(*buffer, destName, destNameSize);
|
std::memcpy(*buffer, destName, destNameSize);
|
||||||
*buffer += destNameSize;
|
*buffer += destNameSize;
|
||||||
*size += destNameSize;
|
*size += destNameSize;
|
||||||
@ -62,9 +56,6 @@ ReturnValue_t cfdp::PutRequest::serialize(uint8_t **buffer, size_t *size, size_t
|
|||||||
if (result != OK) {
|
if (result != OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
if (*size + msgsToUsersTotalSize > maxSize) {
|
|
||||||
return SerializeIF::BUFFER_TOO_SHORT;
|
|
||||||
}
|
|
||||||
std::memcpy(*buffer, messagesToUserStartPtr, msgsToUsersTotalSize);
|
std::memcpy(*buffer, messagesToUserStartPtr, msgsToUsersTotalSize);
|
||||||
*buffer += msgsToUsersTotalSize;
|
*buffer += msgsToUsersTotalSize;
|
||||||
*size += msgsToUsersTotalSize;
|
*size += msgsToUsersTotalSize;
|
||||||
@ -78,9 +69,6 @@ ReturnValue_t cfdp::PutRequest::serialize(uint8_t **buffer, size_t *size, size_t
|
|||||||
if (result != OK) {
|
if (result != OK) {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
if (*size + fsRequestsTotalSize > maxSize) {
|
|
||||||
return SerializeIF::BUFFER_TOO_SHORT;
|
|
||||||
}
|
|
||||||
std::memcpy(*buffer, fsRequest, fsRequestsTotalSize);
|
std::memcpy(*buffer, fsRequest, fsRequestsTotalSize);
|
||||||
*buffer += fsRequestsTotalSize;
|
*buffer += fsRequestsTotalSize;
|
||||||
*size += fsRequestsTotalSize;
|
*size += fsRequestsTotalSize;
|
||||||
@ -91,4 +79,12 @@ ReturnValue_t cfdp::PutRequest::deSerialize(const uint8_t **buffer, size_t *size
|
|||||||
SerializeIF::Endianness streamEndianness) {
|
SerializeIF::Endianness streamEndianness) {
|
||||||
return OK;
|
return OK;
|
||||||
}
|
}
|
||||||
size_t cfdp::PutRequest::getSerializedSize() const { return 0; }
|
size_t cfdp::PutRequest::getSerializedSize() const {
|
||||||
|
size_t baseSize = destId.getSerializedSize() + 1;
|
||||||
|
if (!metadataOnly) {
|
||||||
|
baseSize += sizeof(sourceNameSize) + sourceNameSize + sizeof(destNameSize) + destNameSize + 2;
|
||||||
|
}
|
||||||
|
baseSize += sizeof(msgsToUsersTotalSize) + sizeof(numOfMsgsToUser) + msgsToUsersTotalSize +
|
||||||
|
sizeof(fsRequestsTotalSize) + sizeof(numOfFsRequests) + fsRequestsTotalSize;
|
||||||
|
return baseSize;
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user