Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- C++:
- void OTWriter::setChecksum()
- {
- uint16_t value = 0;
- unsigned char* bytePos = reinterpret_cast<unsigned char*>(&otData);
- for (int i = 16; i < sizeof(otData) - 2; i++)
- value += bytePos[i];
- otData.checkSum = SYSTEM_USE_LITTLE_ENDIAN ? __builtin_bswap16(value) : value;
- }
- JAVA:
- // TODO
- // This calculation is wrong
- int Checksum (byte[] data) {
- int checkSum = 0;
- for(byte b : data) {
- checkSum += b & 0xffff;
- }
- return checkSum;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement