/** * @brief Parses ClockIdentity from message buffer * @param buffer [in] Message buffer. It should be at least ::PTP_CLOCK_IDENTITY_LENGTH bytes long. * @param size [in] Buffer size. Should be the length of the data pointed to by the buffer argument. * @return void */ void parseClockIdentity(uint8_t *buffer, int size) { int length = PLAT_ntohs(*(uint16_t*)buffer); buffer += sizeof(uint16_t); size -= sizeof(uint16_t); if((unsigned)size < (unsigned)length) { length = size; } length /= PTP_CLOCK_IDENTITY_LENGTH; for(; length > 0; --length) { ClockIdentity add; add.set(buffer); identityList.push_back(add); buffer += PTP_CLOCK_IDENTITY_LENGTH; } }
/** * @brief Constructs PortIdentity interface. * @param clock_id Clock ID value as defined at IEEE 802.1AS Clause * 8.5.2.2 * @param portNumber Port Number */ PortIdentity(uint8_t * clock_id, uint16_t * portNumber) { this->portNumber = *portNumber; this->portNumber = PLAT_ntohs(this->portNumber); this->clock_id.set(clock_id); }