Updated zts_start* API naming convention
This commit is contained in:
@@ -30,7 +30,7 @@ addr.sin_family = AF_INET;
|
||||
addr.sin_addr.s_addr = inet_addr(ip);
|
||||
addr.sin_port = hton(port);
|
||||
|
||||
zts_simple_start(path, nwid);
|
||||
zts_startjoin(path, nwid);
|
||||
|
||||
int fd, err = 0;
|
||||
if ((fd = zts_socket(AF_INET, SOCK_STREAM, 0)) < 0) {
|
||||
|
||||
@@ -9,7 +9,7 @@ struct ZT {
|
||||
}
|
||||
|
||||
static void simpleStart(const char *path, const char *nwid) {
|
||||
zts_simple_start(path, nwid);
|
||||
zts_startjoin(path, nwid);
|
||||
}
|
||||
|
||||
static void stop() {
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
int main()
|
||||
{
|
||||
printf("waiting for libzt to come online...\n");
|
||||
zts_simple_start("dlldir", "17d709436c2c5367");
|
||||
zts_startjoin("dlldir", "17d709436c2c5367");
|
||||
printf("started. now performing a socket call\n");
|
||||
int fd = zts_socket(AF_INET, SOCK_STREAM, 0);
|
||||
printf("fd=%d\n", fd);
|
||||
|
||||
@@ -376,7 +376,7 @@ int main(int argc, char **argv)
|
||||
// Start ZeroTier Node
|
||||
// Join Network which contains resources we need to proxy
|
||||
DEBUG_INFO("waiting for libzt to come online");
|
||||
zts_simple_start(path.c_str(), nwid.c_str());
|
||||
zts_startjoin(path.c_str(), nwid.c_str());
|
||||
|
||||
ZeroTier::ZTProxy *proxy = new ZeroTier::ZTProxy(proxy_listen_port, nwid, path, internal_addr, internal_port, dns_nameserver);
|
||||
|
||||
|
||||
@@ -213,7 +213,7 @@ int zts_start(const char *path);
|
||||
* @param nwid A 16-digit hexidecimal virtual network ID
|
||||
* @return Returns 0 on success, -1 on failure
|
||||
*/
|
||||
int zts_simple_start(const char *path, const char *nwid);
|
||||
int zts_startjoin(const char *path, const char *nwid);
|
||||
|
||||
/**
|
||||
* @brief Stops libzt (ZeroTier core services, stack drivers, stack threads, etc)
|
||||
|
||||
@@ -104,7 +104,7 @@ ZT_SOCKET_API int ZTCALL zts_start(const char *path);
|
||||
* @param nwid A 16-digit hexidecimal network identifier (e.g. Earth: `8056c2e21c000001`)
|
||||
* @return 0 if successful; or 1 if failed
|
||||
*/
|
||||
ZT_SOCKET_API int ZTCALL zts_simple_start(const char *path, const char *nwid);
|
||||
ZT_SOCKET_API int ZTCALL zts_startjoin(const char *path, const char *nwid);
|
||||
|
||||
/**
|
||||
* @brief Stops the ZeroTier core service and disconnects from all virtual networks
|
||||
@@ -117,7 +117,7 @@ ZT_SOCKET_API void ZTCALL zts_stop();
|
||||
/**
|
||||
* @brief Joins a virtual network
|
||||
*
|
||||
* @usage Called after zts_start() or zts_simple_start()
|
||||
* @usage Called after zts_start() or zts_startjoin()
|
||||
* @param nwid the 16-digit hexidecimal network identifier
|
||||
* @return
|
||||
*/
|
||||
|
||||
@@ -163,7 +163,9 @@ ZeroTier::VirtualTap *getAnyTap()
|
||||
return vtap;
|
||||
}
|
||||
|
||||
int zts_get_device_id_from_file(const char *filepath, char *devID) {
|
||||
int zts_get_device_id_from_file(const char *filepath, char *devID)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
std::string fname("identity.public");
|
||||
std::string fpath(filepath);
|
||||
if (ZeroTier::OSUtils::fileExists((fpath + ZT_PATH_SEPARATOR_S + fname).c_str(),false)) {
|
||||
@@ -178,7 +180,7 @@ int zts_get_device_id_from_file(const char *filepath, char *devID) {
|
||||
// Starts a ZeroTier service in the background
|
||||
void *zts_start_service(void *thread_id)
|
||||
{
|
||||
DEBUG_INFO("homeDir=%s", ZeroTier::homeDir.c_str());
|
||||
DEBUG_INFO("path=%s", ZeroTier::homeDir.c_str());
|
||||
// Where network .conf files will be stored
|
||||
ZeroTier::netDir = ZeroTier::homeDir + "/networks.d";
|
||||
ZeroTier::zt1Service = (ZeroTier::OneService *)0;
|
||||
@@ -250,6 +252,7 @@ void *zts_start_service(void *thread_id)
|
||||
|
||||
void disableTaps()
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
ZeroTier::_vtaps_lock.lock();
|
||||
for (size_t i=0; i<ZeroTier::vtaps.size(); i++) {
|
||||
DEBUG_EXTRA("vt=%p", ZeroTier::vtaps[i]);
|
||||
@@ -260,6 +263,7 @@ void disableTaps()
|
||||
|
||||
void zts_get_ipv4_address(const char *nwid, char *addrstr, const size_t addrlen)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
uint64_t nwid_int = strtoull(nwid, NULL, 16);
|
||||
ZeroTier::VirtualTap *tap = getTapByNWID(nwid_int);
|
||||
@@ -282,6 +286,7 @@ void zts_get_ipv4_address(const char *nwid, char *addrstr, const size_t addrlen)
|
||||
|
||||
void zts_get_ipv6_address(const char *nwid, char *addrstr, size_t addrlen)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
uint64_t nwid_int = strtoull(nwid, NULL, 16);
|
||||
ZeroTier::VirtualTap *tap = getTapByNWID(nwid_int);
|
||||
@@ -304,6 +309,7 @@ void zts_get_ipv6_address(const char *nwid, char *addrstr, size_t addrlen)
|
||||
|
||||
int zts_has_ipv4_address(const char *nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
char ipv4_addr[INET_ADDRSTRLEN];
|
||||
memset(ipv4_addr, 0, INET_ADDRSTRLEN);
|
||||
zts_get_ipv4_address(nwid, ipv4_addr, INET_ADDRSTRLEN);
|
||||
@@ -312,6 +318,7 @@ int zts_has_ipv4_address(const char *nwid)
|
||||
|
||||
int zts_has_ipv6_address(const char *nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
char ipv6_addr[INET6_ADDRSTRLEN];
|
||||
memset(ipv6_addr, 0, INET6_ADDRSTRLEN);
|
||||
zts_get_ipv6_address(nwid, ipv6_addr, INET6_ADDRSTRLEN);
|
||||
@@ -320,12 +327,14 @@ int zts_has_ipv6_address(const char *nwid)
|
||||
|
||||
int zts_has_address(const char *nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
return zts_has_ipv4_address(nwid) || zts_has_ipv6_address(nwid);
|
||||
}
|
||||
|
||||
|
||||
void zts_get_6plane_addr(char *addr, const char *nwid, const char *devID)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
ZeroTier::InetAddress _6planeAddr = ZeroTier::InetAddress::makeIpv66plane(
|
||||
ZeroTier::Utils::hexStrToU64(nwid),ZeroTier::Utils::hexStrToU64(devID));
|
||||
char ipbuf[INET6_ADDRSTRLEN];
|
||||
@@ -334,13 +343,16 @@ void zts_get_6plane_addr(char *addr, const char *nwid, const char *devID)
|
||||
|
||||
void zts_get_rfc4193_addr(char *addr, const char *nwid, const char *devID)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
ZeroTier::InetAddress _6planeAddr = ZeroTier::InetAddress::makeIpv6rfc4193(
|
||||
ZeroTier::Utils::hexStrToU64(nwid),ZeroTier::Utils::hexStrToU64(devID));
|
||||
char ipbuf[INET6_ADDRSTRLEN];
|
||||
memcpy(addr, _6planeAddr.toIpString(ipbuf), 40);
|
||||
}
|
||||
|
||||
void zts_join(const char * nwid) {
|
||||
void zts_join(const char * nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
std::string confFile = ZeroTier::zt1Service->givenHomePath() + "/networks.d/" + nwid + ".conf";
|
||||
if (ZeroTier::OSUtils::mkdir(ZeroTier::netDir) == false) {
|
||||
@@ -361,7 +373,9 @@ void zts_join(const char * nwid) {
|
||||
}
|
||||
}
|
||||
|
||||
void zts_join_soft(const char * filepath, const char * nwid) {
|
||||
void zts_join_soft(const char * filepath, const char * nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
std::string net_dir = std::string(filepath) + "/networks.d/";
|
||||
std::string confFile = net_dir + std::string(nwid) + ".conf";
|
||||
if (ZeroTier::OSUtils::mkdir(net_dir) == false) {
|
||||
@@ -376,23 +390,30 @@ void zts_join_soft(const char * filepath, const char * nwid) {
|
||||
}
|
||||
}
|
||||
|
||||
void zts_leave(const char * nwid) {
|
||||
void zts_leave(const char * nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
ZeroTier::zt1Service->leave(nwid);
|
||||
}
|
||||
}
|
||||
|
||||
void zts_leave_soft(const char * filepath, const char * nwid) {
|
||||
void zts_leave_soft(const char * filepath, const char * nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
std::string net_dir = std::string(filepath) + "/networks.d/";
|
||||
ZeroTier::OSUtils::rm((net_dir + nwid + ".conf").c_str());
|
||||
}
|
||||
|
||||
int zts_running() {
|
||||
int zts_running()
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
return ZeroTier::zt1Service == NULL ? false : ZeroTier::zt1Service->isRunning();
|
||||
}
|
||||
|
||||
int zts_start(const char *path)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
return 0; // already initialized, ok
|
||||
}
|
||||
@@ -406,8 +427,9 @@ int zts_start(const char *path)
|
||||
return pthread_create(&service_thread, NULL, zts_start_service, NULL);
|
||||
}
|
||||
|
||||
int zts_simple_start(const char *path, const char *nwid)
|
||||
int zts_startjoin(const char *path, const char *nwid)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
ZT_NodeStatus status;
|
||||
int err = zts_start(path);
|
||||
while (zts_running() == false || ZeroTier::zt1Service->getNode() == NULL) {
|
||||
@@ -437,7 +459,9 @@ int zts_simple_start(const char *path, const char *nwid)
|
||||
return err;
|
||||
}
|
||||
|
||||
void zts_stop() {
|
||||
void zts_stop()
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
ZeroTier::zt1Service->terminate();
|
||||
disableTaps();
|
||||
@@ -447,7 +471,9 @@ void zts_stop() {
|
||||
#endif
|
||||
}
|
||||
|
||||
void zts_get_homepath(char *homePath, size_t len) {
|
||||
void zts_get_homepath(char *homePath, size_t len)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::homeDir.length()) {
|
||||
memset(homePath, 0, len);
|
||||
size_t buf_len = len < ZeroTier::homeDir.length() ? len : ZeroTier::homeDir.length();
|
||||
@@ -455,7 +481,9 @@ void zts_get_homepath(char *homePath, size_t len) {
|
||||
}
|
||||
}
|
||||
|
||||
int zts_get_device_id(char *devID) {
|
||||
int zts_get_device_id(char *devID)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
char id[ZTO_ID_LEN];
|
||||
sprintf(id, "%lx",ZeroTier::zt1Service->getNode()->address());
|
||||
@@ -476,7 +504,9 @@ int zts_get_device_id(char *devID) {
|
||||
return -1;
|
||||
}
|
||||
|
||||
unsigned long zts_get_peer_count() {
|
||||
unsigned long zts_get_peer_count()
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
return ZeroTier::zt1Service->getNode()->peers()->peerCount;
|
||||
}
|
||||
@@ -485,7 +515,9 @@ unsigned long zts_get_peer_count() {
|
||||
}
|
||||
}
|
||||
|
||||
int zts_get_peer_address(char *peer, const char *devID) {
|
||||
int zts_get_peer_address(char *peer, const char *devID)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
if (ZeroTier::zt1Service) {
|
||||
ZT_PeerList *pl = ZeroTier::zt1Service->getNode()->peers();
|
||||
// uint64_t addr;
|
||||
@@ -501,12 +533,11 @@ int zts_get_peer_address(char *peer, const char *devID) {
|
||||
|
||||
void zts_allow_http_control(bool allowed)
|
||||
{
|
||||
DEBUG_EXTRA();
|
||||
// TODO
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#if defined(SDK_JNI)
|
||||
|
||||
namespace ZeroTier {
|
||||
|
||||
1
test/alice/README.md
Normal file
1
test/alice/README.md
Normal file
@@ -0,0 +1 @@
|
||||
**alice's** identity files and keys go here
|
||||
1
test/bob/README.md
Normal file
1
test/bob/README.md
Normal file
@@ -0,0 +1 @@
|
||||
**bob's** identity files and keys go here
|
||||
1
test/carol/README.md
Normal file
1
test/carol/README.md
Normal file
@@ -0,0 +1 @@
|
||||
**carol's** identity files and keys go here
|
||||
16
test/carol/e5cd7a9e1c0fd272.conf
Normal file
16
test/carol/e5cd7a9e1c0fd272.conf
Normal file
@@ -0,0 +1,16 @@
|
||||
v=7
|
||||
nwid=e5cd7a9e1c0fd272
|
||||
ts=15cd93097cf
|
||||
ctmd=6ddd00
|
||||
r=4c
|
||||
id=611fc8b606
|
||||
f=6
|
||||
ml=20
|
||||
t=0
|
||||
n=OPNET
|
||||
mtu=af0
|
||||
C=\0\0\0\0\0\0\0\0\0\0\0\\<5C>0<EFBFBD><30>\0\0\0\0\0m<30>\0\0\0\0\0\0\0\0<01><>z<EFBFBD><0F>r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0aȶ<06><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>z<EFBFBD>!<21><>²<><C2B2><EFBFBD><1B>u<EFBFBD>r<EFBFBD><72><EFBFBD>xD<><44><11>q<EFBFBD><71>I<EFBFBD><03><><EFBFBD><EFBFBD>Y^#<23><>5<EFBFBD><r$<24><>IlI<10>};t5<74>J<EFBFBD>ϕ<07>/M<><4D><EFBFBD>!<21>Y<EFBFBD>t<EFBFBD><74><EFBFBD><EFBFBD><EFBFBD>J܂<4A><DC82>A<EFBFBD><41>*1.<2E><><EFBFBD>x
|
||||
COO=<3D><>z<EFBFBD><0F>r\0\0\\<5C>0<EFBFBD><30>\0\0\0\0\0\0\0\0\0\0\0\0<03><><EFBFBD>z<EFBFBD><0F>r<EFBFBD><72>aȶ\n 4\0\0\0\0\0\0\0\0\0\0\0\0\n 4\0\0\0\0\0\0\0\0\0\0\0\0aȶ<06><>z<EFBFBD>\0`<60>8<EFBFBD><1E>CzGF<47><46>.<2E><>(&<26> <09><>ۍQ<16>>,H<><48><EFBFBD>z<01><>Ѕ<EFBFBD><D085>I<11><>t<EFBFBD>,NFK <20>6<EFBFBD>VO<>W<EFBFBD><57><EFBFBD><EFBFBD>ד<EFBFBD>a<EFBFBD><13><><EFBFBD>6[z[B<><42>C<EFBFBD><43>F<EFBFBD>Xw<58><77>\0\0
|
||||
RT=\n \0\0\0\0\0\0\0\0
|
||||
I=<06><><EFBFBD>z<EFBFBD><0F>r<EFBFBD><72>aȶ\0X\n 4\0\n 4\0
|
||||
R=<3D>\0<><06><02><>\0\0\0
|
||||
@@ -36,7 +36,7 @@ int main(int argc, char **argv)
|
||||
// --- BEGIN
|
||||
|
||||
DEBUG_TEST("Waiting for libzt to come online...\n");
|
||||
zts_simple_start(path.c_str(), nwid.c_str());
|
||||
zts_startjoin(path.c_str(), nwid.c_str());
|
||||
char device_id[11];
|
||||
zts_get_device_id(device_id);
|
||||
DEBUG_TEST("I am %s", device_id);
|
||||
|
||||
@@ -44,7 +44,7 @@ int main(int argc , char *argv[])
|
||||
|
||||
// initialize library
|
||||
printf("Starting libzt...\n");
|
||||
zts_simple_start(argv[1], argv[2]);
|
||||
zts_startjoin(argv[1], argv[2]);
|
||||
char device_id[11];
|
||||
zts_get_device_id(device_id);
|
||||
fprintf(stderr, "Complete. I am %s\n", device_id);
|
||||
|
||||
@@ -1759,7 +1759,84 @@ void tcp_perf_rx_echo_4(TCP_UNIT_TEST_SIG_4)
|
||||
}
|
||||
|
||||
|
||||
int ZT_control_semantics_test(bool *passed)
|
||||
{
|
||||
// TODO: Each discrete operation should be tested in random order among every other discrete operation for a sustained period
|
||||
|
||||
/*
|
||||
std::vector<ZT_VirtualNetworkRoute> *zts_get_network_routes(char *nwid);
|
||||
int zts_get_device_id_from_file(const char *filepath, char *devID);
|
||||
void *zts_start_service(void *thread_id);
|
||||
void disableTaps();
|
||||
void zts_get_ipv4_address(const char *nwid, char *addrstr, const size_t addrlen);
|
||||
void zts_get_ipv6_address(const char *nwid, char *addrstr, const size_t addrlen);
|
||||
int zts_has_ipv4_address(const char *nwid);
|
||||
int zts_has_ipv6_address(const char *nwid);
|
||||
int zts_has_address(const char *nwid);
|
||||
void zts_get_6plane_addr(char *addr, const char *nwid, const char *devID);
|
||||
void zts_get_rfc4193_addr(char *addr, const char *nwid, const char *devID);
|
||||
void zts_join(const char * nwid);
|
||||
void zts_leave(const char * nwid);
|
||||
int zts_running();
|
||||
int zts_start(const char *path);
|
||||
int zts_start(const char *path, const char *nwid);
|
||||
void zts_stop();
|
||||
void zts_get_homepath(char *homePath, size_t len);
|
||||
int zts_get_device_id(char *devID);
|
||||
unsigned long zts_get_peer_count();
|
||||
int zts_get_peer_address(char *peer, const char *devID);
|
||||
*/
|
||||
|
||||
int n_times = 5;
|
||||
char *nwid = "17d709436c2c5367";
|
||||
char *path = "fake_path";
|
||||
/*
|
||||
// Perform operations on ZeroTier before calling zts_start(). Doing this makes absolutely no sense but could happen
|
||||
zts_stop();
|
||||
zts_join(nwid);
|
||||
zts_leave(nwid);
|
||||
|
||||
DEBUG_TEST("---\n");
|
||||
sleep(1);
|
||||
|
||||
// Perform operations on ZeroTier immediately upon startup, try to catch it with its pants down
|
||||
// Ideally, the service wrapper should perform necessary checks to prevent any sort of issue
|
||||
zts_start(path);
|
||||
zts_join(nwid);
|
||||
zts_leave(nwid);
|
||||
zts_stop();
|
||||
|
||||
DEBUG_TEST("---\n");
|
||||
sleep(1);
|
||||
*/
|
||||
zts_start(path);
|
||||
zts_join(nwid);
|
||||
zts_leave(nwid);
|
||||
zts_stop();
|
||||
|
||||
DEBUG_TEST("---\n");
|
||||
sleep(1);
|
||||
/*
|
||||
// start the ZeroTier service many times
|
||||
for (int i=0; i<n_times; i++) { zts_start(path); }
|
||||
|
||||
// join the same network many times
|
||||
for (int i=0; i<n_times; i++) { zts_join(nwid); }
|
||||
|
||||
// leave the same network many times
|
||||
for (int i=0; i<n_times; i++) { zts_leave(nwid); }
|
||||
|
||||
// stop the ZeroTier service many times
|
||||
for (int i=0; i<n_times; i++) { zts_stop(); }
|
||||
*/
|
||||
DEBUG_TEST("---\n");
|
||||
sleep(1);
|
||||
|
||||
|
||||
sleep(30); // wait for any aftermath
|
||||
*passed = true;
|
||||
DEBUG_TEST("PASSED");
|
||||
}
|
||||
|
||||
/****************************************************************************/
|
||||
/* OBSCURE API CALL TESTS */
|
||||
@@ -2620,12 +2697,13 @@ int main(int argc , char *argv[])
|
||||
fprintf(stderr, "\tremote_echo_ipv4 = %s\n", remote_echo_ipv4.c_str());
|
||||
|
||||
#if defined(__SELFTEST__)
|
||||
// set start time here since we need to wait for both libzt instances to be online
|
||||
long int selftest_start_time = get_now_ts();
|
||||
subtest_expected_duration = 5;
|
||||
|
||||
if (me != "dummy") { // used for testing ZT service wrapper API (before, during, and after coming online)
|
||||
// set start time here since we need to wait for both libzt instances to be online
|
||||
DEBUG_TEST("Waiting for libzt to come online...\n");
|
||||
zts_simple_start(path.c_str(), nwid.c_str());
|
||||
zts_startjoin(path.c_str(), nwid.c_str());
|
||||
char device_id[ZTO_ID_LEN];
|
||||
zts_get_device_id(device_id);
|
||||
DEBUG_TEST("I am %s, %s", device_id, me.c_str());
|
||||
@@ -2635,9 +2713,8 @@ int main(int argc , char *argv[])
|
||||
if (mode == TEST_MODE_CLIENT) {
|
||||
DEBUG_TEST("Ready. Contacting selftest program on first host.\n\n");
|
||||
}
|
||||
#endif // __SELFTEST__
|
||||
|
||||
// What follows is a long-form of zts_simple_start():
|
||||
// What follows is a long-form of zts_start():
|
||||
/*
|
||||
zts_start(path.c_str());
|
||||
printf("waiting for service to start...\n");
|
||||
@@ -2649,6 +2726,8 @@ int main(int argc , char *argv[])
|
||||
while (zts_has_address(nwid.c_str()) == false)
|
||||
sleep(1);
|
||||
*/
|
||||
}
|
||||
#endif // __SELFTEST__
|
||||
|
||||
for (int i=0; i<num_repeats; i++)
|
||||
{
|
||||
@@ -2693,6 +2772,12 @@ for (int i=0; i<num_repeats; i++)
|
||||
obscure_api_test(&passed);
|
||||
}
|
||||
|
||||
// Test things like zts_start(), zts_stop(), zts_join(), etc
|
||||
if (true) {
|
||||
ZT_control_semantics_test(&passed);
|
||||
}
|
||||
exit(0);
|
||||
|
||||
// Spam a SOCK_DGRAM socket from many threads
|
||||
if (false) {
|
||||
ipv = 4;
|
||||
|
||||
@@ -33,7 +33,7 @@ int main(int argc, char **argv)
|
||||
|
||||
|
||||
DEBUG_TEST("Waiting for libzt to come online...\n");
|
||||
zts_simple_start(path.c_str(), nwid.c_str());
|
||||
zts_startjoin(path.c_str(), nwid.c_str());
|
||||
char device_id[11];
|
||||
zts_get_device_id(device_id);
|
||||
DEBUG_TEST("I am %s", device_id);
|
||||
|
||||
1
test/ted/README.md
Normal file
1
test/ted/README.md
Normal file
@@ -0,0 +1 @@
|
||||
**ted's** identity files and keys go here
|
||||
77
test/test.conf
Normal file
77
test/test.conf
Normal file
@@ -0,0 +1,77 @@
|
||||
name dummy
|
||||
mode none
|
||||
nwid 17d709436c2c5367
|
||||
test comprehensive
|
||||
port 8000
|
||||
path test/dummy
|
||||
ipv4 -1.-1.-1.-1
|
||||
ipv6 [::]
|
||||
echo_ipv4 -1.-1.-1.-1
|
||||
echo_ipv6 [::]
|
||||
echo_port 7100
|
||||
dns_ipv4 -1.-1.-1.-1
|
||||
|
||||
name alice
|
||||
mode server
|
||||
nwid 17d709436c2c5367
|
||||
test comprehensive
|
||||
port 8000
|
||||
path test/alice
|
||||
ipv4 172.30.30.10
|
||||
ipv6 fd17:d709:436c:2c53:6799:93c4:0fe0:4bb8
|
||||
echo_ipv4 172.30.30.1
|
||||
echo_ipv6 fd17:d709:436c:2c53:6799:9322:30ce:418a
|
||||
echo_port 7100
|
||||
dns_ipv4 1.2.3.4
|
||||
|
||||
name bob
|
||||
mode client
|
||||
nwid 17d709436c2c5367
|
||||
test comprehensive
|
||||
port 8000
|
||||
path test/bob
|
||||
ipv4 172.30.30.20
|
||||
ipv6 fd17:d709:436c:2c53:6799:93e1:b555:8c83
|
||||
echo_ipv4 172.30.30.2
|
||||
echo_ipv6 fd17:d709:436c:2c53:6799:93a1:42ef:0285
|
||||
echo_port 7101
|
||||
dns_ipv4 1.2.3.4
|
||||
|
||||
name carol
|
||||
mode client
|
||||
nwid 17d709436c2c5367
|
||||
test comprehensive
|
||||
port 8000
|
||||
path test/carol
|
||||
ipv4 172.30.30.31
|
||||
ipv6 fd17:d709:436c:2c53:6799:9361:1fc8:b606
|
||||
echo_ipv4 172.30.30.3
|
||||
echo_ipv6 fd17:d709:436c:2c53:6799:936f:341a:b379
|
||||
echo_port 7100
|
||||
dns_ipv4 1.2.3.4
|
||||
|
||||
name ted
|
||||
mode server
|
||||
nwid 17d709436c2c5367
|
||||
test comprehensive
|
||||
port 8000
|
||||
path test/ted
|
||||
ipv4 172.30.30.11
|
||||
ipv6 fd17:d709:436c:2c53:6799:93a5:634e:6b06
|
||||
echo_ipv4 172.30.30.1
|
||||
echo_ipv6 fd17:d709:436c:2c53:6799:9322:30ce:418a
|
||||
echo_port 7101
|
||||
dns_ipv4 1.2.3.4
|
||||
|
||||
name native
|
||||
mode client
|
||||
nwid 17d709436c2c5367
|
||||
test comprehensive
|
||||
port 8000
|
||||
path none
|
||||
ipv4 172.30.30.1
|
||||
ipv6 fd17:d709:436c:2c53:6799:9360:0b4d:c3cf
|
||||
echo_ipv4 none
|
||||
echo_ipv6 none
|
||||
echo_port none
|
||||
dns_ipv4 1.2.3.4
|
||||
Reference in New Issue
Block a user