code cleanup; some minor modifications for out-of-band software;

pull/48/head
Bryan Biedenkapp 2 years ago
parent 140b4ecd3c
commit 9fb2201139

@ -71,7 +71,7 @@ private:
public:
/// <summary>Flag indicating if the thread was started.</summary>
__READONLY_PROPERTY_PLAIN(bool, started, started);
__PROTECTED_READONLY_PROPERTY_PLAIN(bool, started, started);
};
#endif // __THREAD_H__

@ -86,13 +86,20 @@ DataHeader::~DataHeader()
/// Decodes P25 PDU data header.
/// </summary>
/// <param name="data"></param>
/// <param name="noTrellis"></param>
/// <returns>True, if PDU data header was decoded, otherwise false.</returns>
bool DataHeader::decode(const uint8_t* data)
bool DataHeader::decode(const uint8_t* data, bool noTrellis)
{
assert(data != nullptr);
// decode 1/2 rate Trellis & check CRC-CCITT 16
bool valid = m_trellis.decode12(data, m_data);
bool valid = true;
if (noTrellis) {
::memcpy(m_data, data, P25_PDU_HEADER_LENGTH_BYTES);
}
else {
valid = m_trellis.decode12(data, m_data);
}
if (valid)
valid = edac::CRC::checkCCITT162(m_data, P25_PDU_HEADER_LENGTH_BYTES);
if (!valid) {
@ -171,7 +178,7 @@ bool DataHeader::decode(const uint8_t* data)
/// Encodes P25 PDU data header.
/// </summary>
/// <param name="data"></param>
void DataHeader::encode(uint8_t* data)
void DataHeader::encode(uint8_t* data, bool noTrellis)
{
assert(data != nullptr);
@ -243,9 +250,11 @@ void DataHeader::encode(uint8_t* data)
Utils::dump(1U, "P25, DataHeader::encode(), PDU Header Data", header, P25_PDU_HEADER_LENGTH_BYTES);
#endif
if (!noTrellis) {
// encode 1/2 rate Trellis
m_trellis.encode12(header, data);
}
}
/// <summary>
/// Helper to reset data values to defaults.

@ -48,9 +48,9 @@ namespace p25
~DataHeader();
/// <summary>Decodes P25 PDU data header.</summary>
bool decode(const uint8_t* data);
bool decode(const uint8_t* data, bool noTrellis = false);
/// <summary>Encodes P25 PDU data header.</summary>
void encode(uint8_t* data);
void encode(uint8_t* data, bool noTrellis = false);
/// <summary>Helper to reset data values to defaults.</summary>
void reset();

@ -7,7 +7,7 @@
*
*/
/*
* Copyright (C) 2022 by Bryan Biedenkapp N2PLL
* Copyright (C) 2022-2024 by Bryan Biedenkapp N2PLL
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@ -44,6 +44,26 @@ namespace p25
// Constants
// ---------------------------------------------------------------------------
const uint8_t P25_DFSI_STATUS_NO_ERROR = 0x00; //
const uint8_t P25_DFSI_STATUS_ERASE = 0x02; //
const uint8_t P25_DFSI_RT_ENABLED = 0x02; //
const uint8_t P25_DFSI_RT_DISABLED = 0x04; //
const uint8_t P25_DFSI_START_FLAG = 0x0C; //
const uint8_t P25_DFSI_STOP_FLAG = 0x25; //
const uint8_t P25_DFSI_TYPE_DATA_PAYLOAD = 0x06; //
const uint8_t P25_DFSI_TYPE_VOICE = 0x0B; //
const uint8_t P25_DFSI_DEF_ICW_SOURCE = 0x00; // Infrastructure Source - Default Source
const uint8_t P25_DFSI_DEF_SOURCE = 0x00; //
const uint8_t P25_DFSI_MOT_START_STOP = 0x00; // Motorola Start/Stop Frame
const uint32_t P25_DFSI_VHDR_RAW_LEN = 36U;
const uint32_t P25_DFSI_VHDR_LEN = 27U;
const uint32_t P25_DFSI_LDU1_VOICE1_FRAME_LENGTH_BYTES = 22U;
const uint32_t P25_DFSI_LDU1_VOICE2_FRAME_LENGTH_BYTES = 14U;
const uint32_t P25_DFSI_LDU1_VOICE3_FRAME_LENGTH_BYTES = 17U;
@ -65,6 +85,9 @@ namespace p25
const uint32_t P25_DFSI_LDU2_VOICE18_FRAME_LENGTH_BYTES = 16U;
// Frame Type(s)
const uint8_t P25_DFSI_MOT_VHDR_1 = 0x60; // Motorola Voice Header 1
const uint8_t P25_DFSI_MOT_VHDR_2 = 0x61; // Motorola Voice Header 2
const uint8_t P25_DFSI_LDU1_VOICE1 = 0x62U; // IMBE LDU1 - Voice 1
const uint8_t P25_DFSI_LDU1_VOICE2 = 0x63U; // IMBE LDU1 - Voice 2
const uint8_t P25_DFSI_LDU1_VOICE3 = 0x64U; // IMBE LDU1 - Voice 3 + Link Control

@ -55,7 +55,7 @@ MBT_IOSP_ACK_RSP::MBT_IOSP_ACK_RSP() : AMBT()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_IOSP_ACK_RSP::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -83,7 +83,7 @@ bool MBT_IOSP_ACK_RSP::decodeMBT(const data::DataHeader& dataHeader, const data:
/// <param name="pduUserData"></param>
void MBT_IOSP_ACK_RSP::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -55,7 +55,7 @@ MBT_IOSP_CALL_ALRT::MBT_IOSP_CALL_ALRT() : AMBT()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_IOSP_CALL_ALRT::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -81,7 +81,7 @@ bool MBT_IOSP_CALL_ALRT::decodeMBT(const data::DataHeader& dataHeader, const dat
/// <param name="pduUserData"></param>
void MBT_IOSP_CALL_ALRT::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -56,7 +56,7 @@ MBT_IOSP_EXT_FNCT::MBT_IOSP_EXT_FNCT() : AMBT(),
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_IOSP_EXT_FNCT::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -83,7 +83,7 @@ bool MBT_IOSP_EXT_FNCT::decodeMBT(const data::DataHeader& dataHeader, const data
/// <param name="pduUserData"></param>
void MBT_IOSP_EXT_FNCT::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -55,7 +55,7 @@ MBT_IOSP_GRP_AFF::MBT_IOSP_GRP_AFF() : AMBT()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_IOSP_GRP_AFF::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -81,7 +81,7 @@ bool MBT_IOSP_GRP_AFF::decodeMBT(const data::DataHeader& dataHeader, const data:
/// <param name="pduUserData"></param>
void MBT_IOSP_GRP_AFF::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -56,7 +56,7 @@ MBT_IOSP_MSG_UPDT::MBT_IOSP_MSG_UPDT() : AMBT(),
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_IOSP_MSG_UPDT::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -83,7 +83,7 @@ bool MBT_IOSP_MSG_UPDT::decodeMBT(const data::DataHeader& dataHeader, const data
/// <param name="pduUserData"></param>
void MBT_IOSP_MSG_UPDT::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -56,7 +56,7 @@ MBT_IOSP_STS_UPDT::MBT_IOSP_STS_UPDT() : AMBT(),
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_IOSP_STS_UPDT::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -83,7 +83,7 @@ bool MBT_IOSP_STS_UPDT::decodeMBT(const data::DataHeader& dataHeader, const data
/// <param name="pduUserData"></param>
void MBT_IOSP_STS_UPDT::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -57,14 +57,14 @@ MBT_ISP_AUTH_RESP_M::MBT_ISP_AUTH_RESP_M() : AMBT()
/// </summary>
MBT_ISP_AUTH_RESP_M::~MBT_ISP_AUTH_RESP_M()
{
if (m_authRes != NULL) {
if (m_authRes != nullptr) {
delete[] m_authRes;
m_authRes = NULL;
m_authRes = nullptr;
}
if (m_authRC != NULL) {
if (m_authRC != nullptr) {
delete[] m_authRC;
m_authRC = NULL;
m_authRC = nullptr;
}
}
@ -76,7 +76,7 @@ MBT_ISP_AUTH_RESP_M::~MBT_ISP_AUTH_RESP_M()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_ISP_AUTH_RESP_M::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -120,7 +120,7 @@ bool MBT_ISP_AUTH_RESP_M::decodeMBT(const data::DataHeader& dataHeader, const da
/// <param name="pduUserData"></param>
void MBT_ISP_AUTH_RESP_M::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */
@ -141,7 +141,7 @@ std::string MBT_ISP_AUTH_RESP_M::toString(bool isp)
/// <returns></returns>
void MBT_ISP_AUTH_RESP_M::getAuthRes(uint8_t* res) const
{
assert(res != NULL);
assert(res != nullptr);
::memcpy(res, m_authRes, P25_AUTH_RES_LENGTH_BYTES);
}
@ -150,7 +150,7 @@ void MBT_ISP_AUTH_RESP_M::getAuthRes(uint8_t* res) const
/// <param name="rc"></param>
void MBT_ISP_AUTH_RESP_M::setAuthRC(const uint8_t* rc)
{
assert(rc != NULL);
assert(rc != nullptr);
::memcpy(m_authRC, rc, P25_AUTH_RAND_CHLNG_LENGTH_BYTES);
}
@ -159,7 +159,7 @@ void MBT_ISP_AUTH_RESP_M::setAuthRC(const uint8_t* rc)
/// <returns></returns>
void MBT_ISP_AUTH_RESP_M::getAuthRC(uint8_t* rc) const
{
assert(rc != NULL);
assert(rc != nullptr);
::memcpy(rc, m_authRC, P25_AUTH_RAND_CHLNG_LENGTH_BYTES);
}
@ -178,14 +178,14 @@ void MBT_ISP_AUTH_RESP_M::copy(const MBT_ISP_AUTH_RESP_M& data)
m_authStandalone = data.m_authStandalone;
if (m_authRes != NULL) {
if (m_authRes != nullptr) {
delete[] m_authRes;
}
m_authRes = new uint8_t[P25_AUTH_RES_LENGTH_BYTES];
::memcpy(m_authRes, data.m_authRes, P25_AUTH_RES_LENGTH_BYTES);
if (m_authRC != NULL) {
if (m_authRC != nullptr) {
delete[] m_authRC;
}

@ -55,7 +55,7 @@ MBT_ISP_AUTH_SU_DMD::MBT_ISP_AUTH_SU_DMD() : AMBT()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_ISP_AUTH_SU_DMD::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -80,7 +80,7 @@ bool MBT_ISP_AUTH_SU_DMD::decodeMBT(const data::DataHeader& dataHeader, const da
/// <param name="pduUserData"></param>
void MBT_ISP_AUTH_SU_DMD::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -55,7 +55,7 @@ MBT_ISP_CAN_SRV_REQ::MBT_ISP_CAN_SRV_REQ() : AMBT()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_ISP_CAN_SRV_REQ::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
uint8_t pduUserData[P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow()];
::memset(pduUserData, 0x00U, P25_PDU_UNCONFIRMED_LENGTH_BYTES * dataHeader.getBlocksToFollow());
@ -85,7 +85,7 @@ bool MBT_ISP_CAN_SRV_REQ::decodeMBT(const data::DataHeader& dataHeader, const da
/// <param name="pduUserData"></param>
void MBT_ISP_CAN_SRV_REQ::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
/* stub */

@ -61,7 +61,7 @@ MBT_OSP_ADJ_STS_BCAST::MBT_OSP_ADJ_STS_BCAST() : AMBT(),
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_OSP_ADJ_STS_BCAST::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
/* stub */
@ -75,7 +75,7 @@ bool MBT_OSP_ADJ_STS_BCAST::decodeMBT(const data::DataHeader& dataHeader, const
/// <param name="pduUserData"></param>
void MBT_OSP_ADJ_STS_BCAST::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
if ((m_adjRfssId != 0U) && (m_adjSiteId != 0U) && (m_adjChannelNo != 0U)) {
if (m_adjSysId == 0U) {

@ -57,14 +57,14 @@ MBT_OSP_AUTH_DMD::MBT_OSP_AUTH_DMD() : AMBT()
/// </summary>
MBT_OSP_AUTH_DMD::~MBT_OSP_AUTH_DMD()
{
if (m_authRS != NULL) {
if (m_authRS != nullptr) {
delete[] m_authRS;
m_authRS = NULL;
m_authRS = nullptr;
}
if (m_authRC != NULL) {
if (m_authRC != nullptr) {
delete[] m_authRC;
m_authRC = NULL;
m_authRC = nullptr;
}
}
@ -76,7 +76,7 @@ MBT_OSP_AUTH_DMD::~MBT_OSP_AUTH_DMD()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_OSP_AUTH_DMD::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
/* stub */
@ -90,7 +90,7 @@ bool MBT_OSP_AUTH_DMD::decodeMBT(const data::DataHeader& dataHeader, const data:
/// <param name="pduUserData"></param>
void MBT_OSP_AUTH_DMD::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
dataHeader.setBlocksToFollow(2U);
@ -138,7 +138,7 @@ std::string MBT_OSP_AUTH_DMD::toString(bool isp)
/// <param name="mi"></param>
void MBT_OSP_AUTH_DMD::setAuthRS(const uint8_t* rs)
{
assert(rs != NULL);
assert(rs != nullptr);
::memcpy(m_authRS, rs, P25_AUTH_RAND_SEED_LENGTH_BYTES);
}
@ -147,7 +147,7 @@ void MBT_OSP_AUTH_DMD::setAuthRS(const uint8_t* rs)
/// <returns></returns>
void MBT_OSP_AUTH_DMD::getAuthRS(uint8_t* rs) const
{
assert(rs != NULL);
assert(rs != nullptr);
::memcpy(rs, m_authRS, P25_AUTH_RAND_SEED_LENGTH_BYTES);
}
@ -156,7 +156,7 @@ void MBT_OSP_AUTH_DMD::getAuthRS(uint8_t* rs) const
/// <param name="rc"></param>
void MBT_OSP_AUTH_DMD::setAuthRC(const uint8_t* rc)
{
assert(rc != NULL);
assert(rc != nullptr);
::memcpy(m_authRC, rc, P25_AUTH_RAND_CHLNG_LENGTH_BYTES);
}
@ -165,7 +165,7 @@ void MBT_OSP_AUTH_DMD::setAuthRC(const uint8_t* rc)
/// <returns></returns>
void MBT_OSP_AUTH_DMD::getAuthRC(uint8_t* rc) const
{
assert(rc != NULL);
assert(rc != nullptr);
::memcpy(rc, m_authRC, P25_AUTH_RAND_CHLNG_LENGTH_BYTES);
}
@ -182,14 +182,14 @@ void MBT_OSP_AUTH_DMD::copy(const MBT_OSP_AUTH_DMD& data)
{
TSBK::copy(data);
if (m_authRS != NULL) {
if (m_authRS != nullptr) {
delete[] m_authRS;
}
m_authRS = new uint8_t[P25_AUTH_RAND_SEED_LENGTH_BYTES];
::memcpy(m_authRS, data.m_authRS, P25_AUTH_RAND_SEED_LENGTH_BYTES);
if (m_authRC != NULL) {
if (m_authRC != nullptr) {
delete[] m_authRC;
}

@ -55,7 +55,7 @@ MBT_OSP_NET_STS_BCAST::MBT_OSP_NET_STS_BCAST() : AMBT()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_OSP_NET_STS_BCAST::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
/* stub */
@ -69,7 +69,7 @@ bool MBT_OSP_NET_STS_BCAST::decodeMBT(const data::DataHeader& dataHeader, const
/// <param name="pduUserData"></param>
void MBT_OSP_NET_STS_BCAST::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
// pack LRA and system ID into LLID
uint32_t llId = m_siteData.lra(); // Location Registration Area

@ -55,7 +55,7 @@ MBT_OSP_RFSS_STS_BCAST::MBT_OSP_RFSS_STS_BCAST() : AMBT()
/// <returns>True, if TSBK was decoded, otherwise false.</returns>
bool MBT_OSP_RFSS_STS_BCAST::decodeMBT(const data::DataHeader& dataHeader, const data::DataBlock* blocks)
{
assert(blocks != NULL);
assert(blocks != nullptr);
/* stub */
@ -69,7 +69,7 @@ bool MBT_OSP_RFSS_STS_BCAST::decodeMBT(const data::DataHeader& dataHeader, const
/// <param name="pduUserData"></param>
void MBT_OSP_RFSS_STS_BCAST::encodeMBT(data::DataHeader& dataHeader, uint8_t* pduUserData)
{
assert(pduUserData != NULL);
assert(pduUserData != nullptr);
// pack LRA and system ID into LLID
uint32_t llId = m_siteData.lra(); // Location Registration Area

@ -65,7 +65,6 @@ using namespace network::fne;
/// <param name="parrotGrantDemand">Flag indicating whether a parrot TG will generate a grant demand.</param>
/// <param name="allowActivityTransfer">Flag indicating that the system activity logs will be sent to the network.</param>
/// <param name="allowDiagnosticTransfer">Flag indicating that the system diagnostic logs will be sent to the network.</param>
/// <param name="trafficRepeat">Flag indicating if traffic should be repeated from this master.</param>
/// <param name="pingTime"></param>
/// <param name="updateLookupTime"></param>
FNENetwork::FNENetwork(HostFNE* host, const std::string& address, uint16_t port, uint32_t peerId, const std::string& password,

@ -68,6 +68,7 @@ namespace network
m_connected(false),
m_connectionState(NET_STAT_INVALID),
m_pingsReceived(0U),
m_lastPing(0U),
m_config(),
m_pktLastSeq(0U),
m_pktNextSeq(1U)
@ -89,6 +90,7 @@ namespace network
m_connected(false),
m_connectionState(NET_STAT_INVALID),
m_pingsReceived(0U),
m_lastPing(0U),
m_config(),
m_pktLastSeq(0U),
m_pktNextSeq(1U)

@ -53,7 +53,7 @@ using namespace network;
/// </summary>
/// <param name="address">Network Hostname/IP address to connect to.</param>
/// <param name="port">Network port number.</param>
/// <param name="local"></param>
/// <param name="localPort"></param>
/// <param name="peerId">Unique ID on the network.</param>
/// <param name="password">Network authentication password.</param>
/// <param name="duplex">Flag indicating full-duplex operation.</param>
@ -597,15 +597,6 @@ bool Network::open()
return true;
}
/// <summary>
/// Sets flag enabling network communication.
/// </summary>
/// <param name="enabled"></param>
void Network::enable(bool enabled)
{
m_enabled = enabled;
}
/// <summary>
/// Closes connection to the network.
/// </summary>
@ -629,6 +620,15 @@ void Network::close()
m_status = NET_STAT_WAITING_CONNECT;
}
/// <summary>
/// Sets flag enabling network communication.
/// </summary>
/// <param name="enabled"></param>
void Network::enable(bool enabled)
{
m_enabled = enabled;
}
// ---------------------------------------------------------------------------
// Protected Class Members
// ---------------------------------------------------------------------------

Loading…
Cancel
Save

Powered by TurnKey Linux.