|
@@ -203,7 +203,7 @@ public:
|
|
for(std::vector<World::Root>::const_iterator r(_world.roots().begin());r!=_world.roots().end();++r) {
|
|
for(std::vector<World::Root>::const_iterator r(_world.roots().begin());r!=_world.roots().end();++r) {
|
|
if (r->identity.address() == p->address()) {
|
|
if (r->identity.address() == p->address()) {
|
|
upstream = true;
|
|
upstream = true;
|
|
- for(unsigned long k=0,ptr=RR->node->prng();k<r->stableEndpoints.size();++k) {
|
|
|
|
|
|
+ for(unsigned long k=0,ptr=(unsigned long)RR->node->prng();k<(unsigned long)r->stableEndpoints.size();++k) {
|
|
const InetAddress &addr = r->stableEndpoints[ptr++ % r->stableEndpoints.size()];
|
|
const InetAddress &addr = r->stableEndpoints[ptr++ % r->stableEndpoints.size()];
|
|
if (!stableEndpoint4) {
|
|
if (!stableEndpoint4) {
|
|
if (addr.ss_family == AF_INET)
|
|
if (addr.ss_family == AF_INET)
|
|
@@ -536,7 +536,7 @@ ZT_ResultCode Node::circuitTestBegin(ZT_CircuitTest *test,void (*reportCallback)
|
|
outp.append((uint16_t)0);
|
|
outp.append((uint16_t)0);
|
|
C25519::Signature sig(RR->identity.sign(reinterpret_cast<const char *>(outp.data()) + ZT_PACKET_IDX_PAYLOAD,outp.size() - ZT_PACKET_IDX_PAYLOAD));
|
|
C25519::Signature sig(RR->identity.sign(reinterpret_cast<const char *>(outp.data()) + ZT_PACKET_IDX_PAYLOAD,outp.size() - ZT_PACKET_IDX_PAYLOAD));
|
|
outp.append((uint16_t)sig.size());
|
|
outp.append((uint16_t)sig.size());
|
|
- outp.append(sig.data,sig.size());
|
|
|
|
|
|
+ outp.append(sig.data,(unsigned int)sig.size());
|
|
outp.append((uint16_t)0); // originator doesn't need an extra credential, since it's the originator
|
|
outp.append((uint16_t)0); // originator doesn't need an extra credential, since it's the originator
|
|
for(unsigned int h=1;h<test->hopCount;++h) {
|
|
for(unsigned int h=1;h<test->hopCount;++h) {
|
|
outp.append((uint8_t)0);
|
|
outp.append((uint8_t)0);
|