common_command_arguments.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #pragma once
  2. #include <stdlib.h>
  3. #include "../types/token_info.h"
  4. #include "cli_helpers.h"
  5. #define TOTP_CLI_COMMAND_ARG_NAME "name"
  6. #define TOTP_CLI_COMMAND_ARG_NAME_PREFIX "-n"
  7. #define TOTP_CLI_COMMAND_ARG_ALGO "algo"
  8. #define TOTP_CLI_COMMAND_ARG_ALGO_PREFIX "-a"
  9. #define TOTP_CLI_COMMAND_ARG_DIGITS "digits"
  10. #define TOTP_CLI_COMMAND_ARG_DIGITS_PREFIX "-d"
  11. #define TOTP_CLI_COMMAND_ARG_UNSECURE_PREFIX "-u"
  12. #define TOTP_CLI_COMMAND_ARG_DURATION "duration"
  13. #define TOTP_CLI_COMMAND_ARG_DURATION_PREFIX "-l"
  14. #define TOTP_CLI_COMMAND_ARG_AUTOMATION_FEATURE_PREFIX "-b"
  15. #define TOTP_CLI_COMMAND_ARG_AUTOMATION_FEATURE "feature"
  16. #define TOTP_CLI_COMMAND_ARG_INDEX "index"
  17. #define TOTP_CLI_COMMAND_ARG_SECRET_ENCODING_PREFIX "-e"
  18. #define TOTP_CLI_COMMAND_ARG_SECRET_ENCODING "encoding"
  19. void totp_cli_printf_unknown_argument(const FuriString* arg);
  20. void totp_cli_printf_missed_argument_value(char* arg);
  21. bool totp_cli_try_read_algo(TokenInfo* token_info, FuriString* arg, FuriString* args, bool* parsed);
  22. bool totp_cli_try_read_digits(
  23. TokenInfo* token_info,
  24. const FuriString* arg,
  25. FuriString* args,
  26. bool* parsed);
  27. bool totp_cli_try_read_duration(
  28. TokenInfo* token_info,
  29. const FuriString* arg,
  30. FuriString* args,
  31. bool* parsed);
  32. bool totp_cli_try_read_automation_features(
  33. TokenInfo* token_info,
  34. FuriString* arg,
  35. FuriString* args,
  36. bool* parsed);
  37. bool totp_cli_try_read_unsecure_flag(const FuriString* arg, bool* parsed, bool* unsecure_flag);
  38. bool totp_cli_try_read_plain_token_secret_encoding(
  39. FuriString* arg,
  40. FuriString* args,
  41. bool* parsed,
  42. PlainTokenSecretEncoding* secret_encoding);