|
|
|
|
@ -298,7 +298,54 @@ static int cli(int argc,char **argv)
|
|
|
|
|
return 1; |
|
|
|
|
} |
|
|
|
|
} else if (command == "join") { |
|
|
|
|
if (arg1.length() != 16) { |
|
|
|
|
cliPrintHelp(argv[0],stderr); |
|
|
|
|
return 2; |
|
|
|
|
} |
|
|
|
|
unsigned int scode = Http::POST( |
|
|
|
|
1024 * 1024 * 16, |
|
|
|
|
60000, |
|
|
|
|
(const struct sockaddr *)&addr, |
|
|
|
|
(std::string("/network/") + arg1).c_str(), |
|
|
|
|
requestHeaders, |
|
|
|
|
"", |
|
|
|
|
0, |
|
|
|
|
responseHeaders, |
|
|
|
|
responseBody); |
|
|
|
|
if (scode == 200) { |
|
|
|
|
if (json) { |
|
|
|
|
printf("%s",cliFixJsonCRs(responseBody).c_str()); |
|
|
|
|
} else { |
|
|
|
|
} |
|
|
|
|
return 0; |
|
|
|
|
} else { |
|
|
|
|
printf("%u %s %s"ZT_EOL_S,scode,command.c_str(),responseBody.c_str()); |
|
|
|
|
return 1; |
|
|
|
|
} |
|
|
|
|
} else if (command == "leave") { |
|
|
|
|
if (arg1.length() != 16) { |
|
|
|
|
cliPrintHelp(argv[0],stderr); |
|
|
|
|
return 2; |
|
|
|
|
} |
|
|
|
|
unsigned int scode = Http::DELETE( |
|
|
|
|
1024 * 1024 * 16, |
|
|
|
|
60000, |
|
|
|
|
(const struct sockaddr *)&addr, |
|
|
|
|
(std::string("/network/") + arg1).c_str(), |
|
|
|
|
requestHeaders, |
|
|
|
|
responseHeaders, |
|
|
|
|
responseBody); |
|
|
|
|
if (scode == 200) { |
|
|
|
|
if (json) { |
|
|
|
|
printf("%s",cliFixJsonCRs(responseBody).c_str()); |
|
|
|
|
} else { |
|
|
|
|
printf("200 leave OK"ZT_EOL_S); |
|
|
|
|
} |
|
|
|
|
return 0; |
|
|
|
|
} else { |
|
|
|
|
printf("%u %s %s"ZT_EOL_S,scode,command.c_str(),responseBody.c_str()); |
|
|
|
|
return 1; |
|
|
|
|
} |
|
|
|
|
} else { |
|
|
|
|
cliPrintHelp(argv[0],stderr); |
|
|
|
|
return 0; |
|
|
|
|
|