diff --git a/tools/dhtnet_crtmgr/main.cpp b/tools/dhtnet_crtmgr/main.cpp index 95687cc800928adac9ca8ccdaeca6f51d5103e16..3dea0d2e01ad14cbf410949dbf355f8dc101ce0f 100644 --- a/tools/dhtnet_crtmgr/main.cpp +++ b/tools/dhtnet_crtmgr/main.cpp @@ -86,8 +86,8 @@ parse_args(int argc, char** argv) } } - if (params.id.empty() && !params.pkid) { - std::cerr << "Error: The path to save the generated certificate is not provided.\n Please specify the path using the -i option.\n"; + if (params.id.empty() && !params.pkid && !params.help && !params.version) { + std::cerr << "Error: The path to save the generated certificate is not provided.\n Please specify the path using the -o option.\n"; exit(EXIT_FAILURE); } return params; diff --git a/tools/dnc/main.cpp b/tools/dnc/main.cpp index 441ef567bd69a11fe2ae44c04b605a1d97df377c..ea7659da6bcfb89e8a2f26bd485edd8fa9098892 100644 --- a/tools/dnc/main.cpp +++ b/tools/dnc/main.cpp @@ -236,6 +236,10 @@ main(int argc, char** argv) } auto identity = dhtnet::loadIdentity(params.privateKey, params.cert); + if (!identity.first || !identity.second) { + fmt::print(stderr, "Hint: To generate new identity files, run: dhtnet-crtmgr --interactive\n"); + return EXIT_FAILURE; + } fmt::print("Loaded identity: {}\n", identity.second->getId()); fmt::print("dnc 1.0\n"); diff --git a/tools/dsh/main.cpp b/tools/dsh/main.cpp index 3b2592d30ebdd8e389c70851ab71193b6701d644..12dae126b11b61464349acf9abd3652d945d3ddb 100644 --- a/tools/dsh/main.cpp +++ b/tools/dsh/main.cpp @@ -219,6 +219,10 @@ main(int argc, char** argv) fmt::print("dsh 1.0\n"); auto identity = dhtnet::loadIdentity(params.privateKey, params.cert); + if (!identity.first || !identity.second) { + fmt::print(stderr, "Hint: To generate new identity files, run: dhtnet-crtmgr --interactive\n"); + return EXIT_FAILURE; + } fmt::print("Loaded identity: {} \n", identity.second->getId()); std::unique_ptr<dhtnet::Dsh> dhtsh; diff --git a/tools/dvpn/main.cpp b/tools/dvpn/main.cpp index 153a607791aa7fcb9c04e238f544f72b47c90d5c..38899c4e4208126204fdfd5c20d072cc610938e4 100644 --- a/tools/dvpn/main.cpp +++ b/tools/dvpn/main.cpp @@ -217,6 +217,10 @@ main(int argc, char** argv) fmt::print("dvpn 1.0\n"); auto identity = dhtnet::loadIdentity(params.privateKey, params.cert); + if (!identity.first || !identity.second) { + fmt::print(stderr, "Hint: To generate new identity files, run: dhtnet-crtmgr --interactive\n"); + return EXIT_FAILURE; + } fmt::print("Loaded identity: {}\n", identity.second->getId()); std::unique_ptr<dhtnet::Dvpn> dvpn;