diff options
Diffstat (limited to 'openssl/client/options.hxx')
-rw-r--r-- | openssl/client/options.hxx | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/openssl/client/options.hxx b/openssl/client/options.hxx new file mode 100644 index 0000000..5b61682 --- /dev/null +++ b/openssl/client/options.hxx @@ -0,0 +1,150 @@ +// -*- C++ -*- +// +// This file was generated by CLI, a command line interface +// compiler for C++. +// + +#ifndef OPENSSL_CLIENT_OPTIONS_HXX +#define OPENSSL_CLIENT_OPTIONS_HXX + +// Begin prologue. +// +// +// End prologue. + +#include <openssl/options.hxx> + +namespace openssl +{ + namespace client + { + class options + { + public: + options (); + + // Return true if anything has been parsed. + // + bool + parse (int& argc, + char** argv, + bool erase = false, + ::openssl::cli::unknown_mode option = ::openssl::cli::unknown_mode::fail, + ::openssl::cli::unknown_mode argument = ::openssl::cli::unknown_mode::stop); + + bool + parse (int start, + int& argc, + char** argv, + bool erase = false, + ::openssl::cli::unknown_mode option = ::openssl::cli::unknown_mode::fail, + ::openssl::cli::unknown_mode argument = ::openssl::cli::unknown_mode::stop); + + bool + parse (int& argc, + char** argv, + int& end, + bool erase = false, + ::openssl::cli::unknown_mode option = ::openssl::cli::unknown_mode::fail, + ::openssl::cli::unknown_mode argument = ::openssl::cli::unknown_mode::stop); + + bool + parse (int start, + int& argc, + char** argv, + int& end, + bool erase = false, + ::openssl::cli::unknown_mode option = ::openssl::cli::unknown_mode::fail, + ::openssl::cli::unknown_mode argument = ::openssl::cli::unknown_mode::stop); + + bool + parse (::openssl::cli::scanner&, + ::openssl::cli::unknown_mode option = ::openssl::cli::unknown_mode::fail, + ::openssl::cli::unknown_mode argument = ::openssl::cli::unknown_mode::stop); + + // Option accessors. + // + const bool& + help () const; + + const bool& + version () const; + + const bool& + sign () const; + + const string& + keyform () const; + + bool + keyform_specified () const; + + const string& + engine () const; + + bool + engine_specified () const; + + const string& + inkey () const; + + bool + inkey_specified () const; + + const simulate_outcome& + simulate () const; + + bool + simulate_specified () const; + + // Print usage information. + // + static ::openssl::cli::usage_para + print_usage (::std::ostream&, + ::openssl::cli::usage_para = ::openssl::cli::usage_para::none); + + // Implementation details. + // + protected: + bool + _parse (const char*, ::openssl::cli::scanner&); + + private: + bool + _parse (::openssl::cli::scanner&, + ::openssl::cli::unknown_mode option, + ::openssl::cli::unknown_mode argument); + + public: + bool help_; + bool version_; + bool sign_; + string keyform_; + bool keyform_specified_; + string engine_; + bool engine_specified_; + string inkey_; + bool inkey_specified_; + simulate_outcome simulate_; + bool simulate_specified_; + }; + } +} + +// Print page usage information. +// +namespace openssl +{ + ::openssl::cli::usage_para + print_openssl_client_usage (::std::ostream&, + ::openssl::cli::usage_para = ::openssl::cli::usage_para::none); +} + +#include <openssl/client/options.ixx> + +// Begin epilogue. +// +// +// End epilogue. + +#endif // OPENSSL_CLIENT_OPTIONS_HXX |