Browse Source

Add MAC to listnetworks, and some other make stuff.

Adam Ierymenko 11 years ago
parent
commit
721625d512
5 changed files with 17 additions and 12 deletions
  1. 5 2
      ZeroTierUI/ZeroTierUI.pro
  2. 3 3
      make-linux.mk
  3. 3 3
      make-mac.mk
  4. 3 2
      node/Node.cpp
  5. 3 2
      node/NodeConfig.cpp

+ 5 - 2
ZeroTierUI/ZeroTierUI.pro

@@ -48,7 +48,8 @@ SOURCES += main.cpp \
     ../node/UdpSocket.cpp \
     ../node/Utils.cpp \
     ../ext/lz4/lz4.c \
-    ../ext/lz4/lz4hc.c
+    ../ext/lz4/lz4hc.c \
+    ../node/Dictionary.cpp
 
 HEADERS  += mainwindow.h \
 		aboutwindow.h \
@@ -105,7 +106,9 @@ HEADERS  += mainwindow.h \
     ../node/UdpSocket.hpp \
     ../node/Utils.hpp \
     ../ext/lz4/lz4.h \
-    ../ext/lz4/lz4hc.h
+    ../ext/lz4/lz4hc.h \
+    ../node/EthernetTap.hpp \
+    ../node/EthernetTapFactory.hpp
 
 win32:SOURCES += ../node/WindowsEthernetTap.cpp
 mac:SOURCES += ../node/UnixEthernetTap.cpp

+ 3 - 3
make-linux.mk

@@ -38,12 +38,12 @@ endif
 CXXFLAGS=$(CFLAGS) -fno-rtti
 
 include objects.mk
-OBJS+=main.o osnet/LinuxRoutingTable.o osnet/LinuxEthernetTap.o osnet/LinuxEthernetTapFactory.o
+OBJS+=osnet/LinuxRoutingTable.o osnet/LinuxEthernetTap.o osnet/LinuxEthernetTapFactory.o
 
 all:	one
 
-one:	$(OBJS)
-	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o zerotier-one $(OBJS) $(LIBS)
+one:	$(OBJS) main.o
+	$(CXX) $(CXXFLAGS) $(LDFLAGS) -o zerotier-one main.o $(OBJS) $(LIBS)
 	$(STRIP) zerotier-one
 	ln -sf zerotier-one zerotier-cli
 	ln -sf zerotier-one zerotier-idtool

+ 3 - 3
make-mac.mk

@@ -35,12 +35,12 @@ endif
 CXXFLAGS=$(CFLAGS) -fno-rtti
 
 include objects.mk
-OBJS+=main.o osnet/BSDRoutingTable.o osnet/OSXEthernetTap.o osnet/OSXEthernetTapFactory.o
+OBJS+=osnet/BSDRoutingTable.o osnet/OSXEthernetTap.o osnet/OSXEthernetTapFactory.o
 
 all: one
 
-one:	$(OBJS)
-	$(CXX) $(CXXFLAGS) -o zerotier-one $(OBJS) $(LIBS)
+one:	$(OBJS) main.o
+	$(CXX) $(CXXFLAGS) -o zerotier-one main.o $(OBJS) $(LIBS)
 	$(STRIP) zerotier-one
 	ln -sf zerotier-one zerotier-cli
 	ln -sf zerotier-one zerotier-idtool

+ 3 - 2
node/Node.cpp

@@ -416,7 +416,7 @@ static void _cbHandleGetRootTopology(void *arg,int code,const std::string &url,c
 		return;
 
 	if ((code != 200)||(body.length() == 0)) {
-		TRACE("failed to retrieve %s",ZT_DEFAULTS.rootTopologyUpdateURL.c_str());
+		TRACE("failed to retrieve %s",url.c_str());
 		return;
 	}
 
@@ -433,7 +433,7 @@ static void _cbHandleGetRootTopology(void *arg,int code,const std::string &url,c
 			if (Utils::readFile(rootTopologyPath.c_str(),rootTopology)) {
 				Dictionary alreadyHave(rootTopology);
 				if (alreadyHave == rt) {
-					TRACE("retrieved root topology from %s but no change (same)",url.c_str());
+					TRACE("retrieved root topology from %s but no change (same as on disk)",url.c_str());
 					return;
 				} else if (alreadyHave.signatureTimestamp() > rt.signatureTimestamp()) {
 					TRACE("retrieved root topology from %s but no change (ours is newer)",url.c_str());
@@ -763,6 +763,7 @@ Node::ReasonForTermination Node::run()
 
 			if ((now - lastRootTopologyFetch) >= ZT_UPDATE_ROOT_TOPOLOGY_CHECK_INTERVAL) {
 				lastRootTopologyFetch = now;
+				TRACE("fetching root topology from %s",ZT_DEFAULTS.rootTopologyUpdateURL.c_str());
 				_r->http->GET(ZT_DEFAULTS.rootTopologyUpdateURL,HttpClient::NO_HEADERS,60,&_cbHandleGetRootTopology,_r);
 			}
 

+ 3 - 2
node/NodeConfig.cpp

@@ -226,7 +226,7 @@ void NodeConfig::_doCommand(IpcConnection *ipcc,const char *commandLine)
 			_r->topology->eachPeer(_DumpPeerStatistics(ipcc));
 		} else if (cmd[0] == "listnetworks") {
 			Mutex::Lock _l(_networks_m);
-			ipcc->printf("200 listnetworks <nwid> <name> <status> <config age> <type> <dev> <ips>"ZT_EOL_S);
+			ipcc->printf("200 listnetworks <nwid> <name> <mac> <status> <config age> <type> <dev> <ips>"ZT_EOL_S);
 			for(std::map< uint64_t,SharedPtr<Network> >::const_iterator nw(_networks.begin());nw!=_networks.end();++nw) {
 				std::string tmp;
 				std::set<InetAddress> ips(nw->second->ips());
@@ -244,9 +244,10 @@ void NodeConfig::_doCommand(IpcConnection *ipcc,const char *commandLine)
 				age /= 1000;
 
 				std::string dn(nw->second->tapDeviceName());
-				ipcc->printf("200 listnetworks %.16llx %s %s %lld %s %s %s"ZT_EOL_S,
+				ipcc->printf("200 listnetworks %.16llx %s %s %s %lld %s %s %s"ZT_EOL_S,
 					(unsigned long long)nw->first,
 					((nconf) ? nconf->name().c_str() : "?"),
+					nw->second->mac().toString().c_str(),
 					Network::statusString(nw->second->status()),
 					age,
 					((nconf) ? (nconf->isPublic() ? "public" : "private") : "?"),