2
0
Эх сурвалжийг харах

Fix for new identity generation bug.

Adam Ierymenko 8 жил өмнө
parent
commit
c692f2e740
3 өөрчлөгдсөн 4 нэмэгдсэн , 17 устгасан
  1. 2 16
      node/C25519.cpp
  2. 1 0
      node/Node.cpp
  3. 1 1
      node/Utils.hpp

+ 2 - 16
node/C25519.cpp

@@ -286,24 +286,10 @@ static inline int crypto_scalarmult(unsigned char *q,const unsigned char *n,cons
   return 0;
 }
 
-//static const unsigned char base[32] = {9};
+static const unsigned char base[32] = {9};
 static inline int crypto_scalarmult_base(unsigned char *q,const unsigned char *n)
 {
-  //return crypto_scalarmult(q,n,base);
-  unsigned int work[96];
-  unsigned char e[32];
-  unsigned int i;
-  for (i = 0;i < 32;++i) e[i] = n[i];
-  e[0] &= 248;
-  e[31] &= 127;
-  e[31] |= 64;
-  for (i = 0;i < 32;++i) work[i] = 9;
-  mainloop(work,e);
-  recip(work + 32,work + 32);
-  mult(work + 64,work,work + 32);
-  freeze(work + 64);
-  for (i = 0;i < 32;++i) q[i] = work[64 + i];
-  return 0;
+  return crypto_scalarmult(q,n,base);
 }
 
 //////////////////////////////////////////////////////////////////////////////

+ 1 - 0
node/Node.cpp

@@ -117,6 +117,7 @@ Node::Node(void *uptr,void *tptr,const struct ZT_Node_Callbacks *callbacks,uint6
 		delete RR->topology;
 		delete RR->mc;
 		delete RR->sw;
+		delete RR->t;
 		throw;
 	}
 

+ 1 - 1
node/Utils.hpp

@@ -148,7 +148,7 @@ public:
 
 	static inline char *hex(const void *d,unsigned int l,char *s)
 	{
-		char *save = s;
+		char *const save = s;
 		for(unsigned int i=0;i<l;++i) {
 			const unsigned int b = reinterpret_cast<const uint8_t *>(d)[i];
 			*(s++) = HEXCHARS[b >> 4];