mirror of
https://github.com/zerotier/ZeroTierOne.git
synced 2025-06-05 20:13:44 +02:00
.
This commit is contained in:
parent
3fedf16f35
commit
56d969c709
1 changed files with 8 additions and 10 deletions
|
@ -376,16 +376,14 @@ void SoftwareUpdater::handleSoftwareUpdateUserMessage(uint64_t origin,const void
|
||||||
idx |= (unsigned long)*(reinterpret_cast<const uint8_t *>(data) + 20);
|
idx |= (unsigned long)*(reinterpret_cast<const uint8_t *>(data) + 20);
|
||||||
printf("<< GET_DATA @%u from %.10llx for %s\n",(unsigned int)idx,origin,Utils::hex(reinterpret_cast<const uint8_t *>(data) + 1,16).c_str());
|
printf("<< GET_DATA @%u from %.10llx for %s\n",(unsigned int)idx,origin,Utils::hex(reinterpret_cast<const uint8_t *>(data) + 1,16).c_str());
|
||||||
std::map< Array<uint8_t,16>,_D >::iterator d(_dist.find(Array<uint8_t,16>(reinterpret_cast<const uint8_t *>(data) + 1)));
|
std::map< Array<uint8_t,16>,_D >::iterator d(_dist.find(Array<uint8_t,16>(reinterpret_cast<const uint8_t *>(data) + 1)));
|
||||||
if (d != _dist.end()) {
|
if ((d != _dist.end())&&(idx < d->second.bin.length())) {
|
||||||
if (idx < d->second.bin.length()) {
|
Buffer<ZT_SOFTWARE_UPDATE_CHUNK_SIZE + 128> buf;
|
||||||
Buffer<ZT_SOFTWARE_UPDATE_CHUNK_SIZE + 128> buf;
|
buf.append((uint8_t)VERB_DATA);
|
||||||
buf.append((uint8_t)VERB_DATA);
|
buf.append(reinterpret_cast<const uint8_t *>(data) + 1,16);
|
||||||
buf.append(reinterpret_cast<const uint8_t *>(data) + 1,16);
|
buf.append((uint32_t)idx);
|
||||||
buf.append((uint32_t)idx);
|
buf.append(d->second.bin.data() + idx,std::min((unsigned long)ZT_SOFTWARE_UPDATE_CHUNK_SIZE,(unsigned long)(d->second.bin.length() - idx)));
|
||||||
buf.append(d->second.bin.data() + idx,std::max((unsigned long)ZT_SOFTWARE_UPDATE_CHUNK_SIZE,(unsigned long)(d->second.bin.length() - idx)));
|
_node.sendUserMessage(origin,ZT_SOFTWARE_UPDATE_USER_MESSAGE_TYPE,buf.data(),buf.size());
|
||||||
_node.sendUserMessage(origin,ZT_SOFTWARE_UPDATE_USER_MESSAGE_TYPE,buf.data(),buf.size());
|
printf(">> DATA @%u\n",(unsigned int)idx);
|
||||||
printf(">> DATA @%u\n",(unsigned int)idx);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Add table
Reference in a new issue