_protocols.h 717 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #pragma once
  2. #include "continuity.h"
  3. #include "fastpair.h"
  4. #include "easysetup.h"
  5. #include "swiftpair.h"
  6. typedef enum {
  7. PayloadModeRandom,
  8. PayloadModeValue,
  9. PayloadModeBruteforce,
  10. } PayloadMode;
  11. struct Payload {
  12. bool random_mac;
  13. PayloadMode mode;
  14. struct {
  15. uint8_t counter;
  16. uint32_t value;
  17. uint8_t size;
  18. } bruteforce;
  19. union {
  20. ContinuityCfg continuity;
  21. FastpairCfg fastpair;
  22. EasysetupCfg easysetup;
  23. SwiftpairCfg swiftpair;
  24. } cfg;
  25. };
  26. extern const Protocol* protocols[];
  27. extern const size_t protocols_count;
  28. struct Attack {
  29. const char* title;
  30. const char* text;
  31. const Protocol* protocol;
  32. Payload payload;
  33. };