aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/utils/decrypt_file.cpp
diff options
context:
space:
mode:
authorEgor Tensin <Egor.Tensin@gmail.com>2017-06-20 18:22:00 +0300
committerEgor Tensin <Egor.Tensin@gmail.com>2017-06-22 01:38:49 +0300
commit06b2428c2afaa36997a9d341bd497d42aa0fef89 (patch)
treeff83476738222578a19b59419fdbaa79a05156d7 /utils/decrypt_file.cpp
parentREADME update (diff)
downloadaes-tools-06b2428c2afaa36997a9d341bd497d42aa0fef89.tar.gz
aes-tools-06b2428c2afaa36997a9d341bd497d42aa0fef89.zip
utils: refactor command-line arguments parsing
+ update usage messages.
Diffstat (limited to '')
-rw-r--r--utils/decrypt_file.cpp32
1 files changed, 16 insertions, 16 deletions
diff --git a/utils/decrypt_file.cpp b/utils/decrypt_file.cpp
index 644447c..beaabff 100644
--- a/utils/decrypt_file.cpp
+++ b/utils/decrypt_file.cpp
@@ -28,7 +28,7 @@ namespace
file::write_file(plaintext_path, plaintext_buf);
}
- void decrypt_file(const Settings& settings)
+ void decrypt_file(const FileSettings& settings)
{
const auto& algorithm = settings.algorithm;
const auto& mode = settings.mode;
@@ -56,30 +56,30 @@ int main(int argc, char** argv)
{
try
{
- CommandLineParser cmd_parser{argv[0]};
+ FileSettings settings{argv[0]};
+
try
{
- const auto settings = cmd_parser.parse(argc, argv);
-
- if (cmd_parser.exit_with_usage())
- {
- std::cout << cmd_parser;
- return 0;
- }
-
- decrypt_file(settings);
+ settings.parse(argc, argv);
}
catch (const boost::program_options::error& e)
{
- std::cerr << "Usage error: " << e.what() << "\n";
- std::cerr << cmd_parser;
+ settings.usage_error(e);
return 1;
}
- catch (const aes::Error& e)
+
+ if (settings.exit_with_usage)
{
- std::cerr << e;
- return 1;
+ settings.usage();
+ return 0;
}
+
+ decrypt_file(settings);
+ }
+ catch (const aes::Error& e)
+ {
+ std::cerr << e;
+ return 1;
}
catch (const std::exception& e)
{