_protocols.h 775 B

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