Skip to content

Commit

Permalink
Merge pull request #1833 from lopsided98/ftp-segfault
Browse files Browse the repository at this point in the history
plugins: ftp: fix null pointer dereference
  • Loading branch information
vooon committed Feb 22, 2023
2 parents 10569e6 + a132cbd commit 6e86500
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions mavros/src/plugins/ftp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@ class FTPRequest : public mavlink::common::msg::FILE_TRANSFER_PROTOCOL
uint8_t req_opcode; ///< Request opcode returned in kRspAck, kRspNak message
uint8_t padding[2]; ///< 32 bit aligment padding
uint32_t offset; ///< Offsets for List and Read commands
uint8_t * data; ///< command data, varies by Opcode
};

/// @brief Command opcodes
Expand Down Expand Up @@ -141,32 +140,32 @@ class FTPRequest : public mavlink::common::msg::FILE_TRANSFER_PROTOCOL

inline const uint8_t * data() const
{
return header()->data;
return payload.data() + sizeof(PayloadHeader);
}

inline uint8_t * data()
{
return header()->data;
return payload.data() + sizeof(PayloadHeader);
}

inline const char * data_c() const
{
return reinterpret_cast<const char *>(header()->data);
return reinterpret_cast<const char *>(data());
}

inline char * data_c()
{
return reinterpret_cast<char *>(header()->data);
return reinterpret_cast<char *>(data());
}

inline const uint32_t * data_u32() const
{
return reinterpret_cast<const uint32_t *>(header()->data);
return reinterpret_cast<const uint32_t *>(data());
}

inline uint32_t * data_u32()
{
return reinterpret_cast<uint32_t *>(header()->data);
return reinterpret_cast<uint32_t *>(data());
}

/**
Expand Down

0 comments on commit 6e86500

Please sign in to comment.