wifi_marauder_scene_sniffpmkid_options.c 3.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. #include "../wifi_marauder_app_i.h"
  2. enum SubmenuIndex {
  3. SubmenuIndexPassive,
  4. SubmenuIndexActive,
  5. SubmenuIndexTargetedPassive,
  6. SubmenuIndexTargetedActive,
  7. SubmenuIndexChannelPassive,
  8. SubmenuIndexChannelActive,
  9. };
  10. static void wifi_marauder_scene_sniffpmkid_options_callback(void* context, uint32_t index) {
  11. WifiMarauderApp* app = context;
  12. app->is_custom_tx_string = false; // this will be set if needed by text input
  13. switch (index) {
  14. case SubmenuIndexPassive:
  15. app->selected_tx_string = "sniffpmkid";
  16. scene_manager_set_scene_state(app->scene_manager, WifiMarauderSceneSniffPmkidOptions, index);
  17. scene_manager_next_scene(app->scene_manager, WifiMarauderSceneConsoleOutput);
  18. break;
  19. case SubmenuIndexActive:
  20. app->selected_tx_string = "sniffpmkid -d";
  21. scene_manager_set_scene_state(app->scene_manager, WifiMarauderSceneSniffPmkidOptions, index);
  22. scene_manager_next_scene(app->scene_manager, WifiMarauderSceneConsoleOutput);
  23. break;
  24. case SubmenuIndexTargetedPassive:
  25. app->selected_tx_string = "sniffpmkid -l";
  26. scene_manager_set_scene_state(app->scene_manager, WifiMarauderSceneSniffPmkidOptions, index);
  27. scene_manager_next_scene(app->scene_manager, WifiMarauderSceneConsoleOutput);
  28. break;
  29. case SubmenuIndexTargetedActive:
  30. app->selected_tx_string = "sniffpmkid -d -l";
  31. scene_manager_set_scene_state(app->scene_manager, WifiMarauderSceneSniffPmkidOptions, index);
  32. scene_manager_next_scene(app->scene_manager, WifiMarauderSceneConsoleOutput);
  33. break;
  34. case SubmenuIndexChannelPassive:
  35. app->selected_tx_string = "sniffpmkid -c";
  36. scene_manager_set_scene_state(app->scene_manager, WifiMarauderSceneSniffPmkidOptions, index);
  37. scene_manager_next_scene(app->scene_manager, WifiMarauderSceneTextInput);
  38. break;
  39. case SubmenuIndexChannelActive:
  40. app->selected_tx_string = "sniffpmkid -d -c";
  41. scene_manager_set_scene_state(app->scene_manager, WifiMarauderSceneSniffPmkidOptions, index);
  42. scene_manager_next_scene(app->scene_manager, WifiMarauderSceneTextInput);
  43. break;
  44. }
  45. }
  46. void wifi_marauder_scene_sniffpmkid_options_on_enter(void* context) {
  47. WifiMarauderApp* app = context;
  48. Submenu* submenu = app->submenu;
  49. submenu_set_header(submenu, "Sniff PMKID");
  50. submenu_add_item(submenu, "Passive", SubmenuIndexPassive, wifi_marauder_scene_sniffpmkid_options_callback, app);
  51. submenu_add_item(submenu, "Active (Force Deauth)", SubmenuIndexActive, wifi_marauder_scene_sniffpmkid_options_callback, app);
  52. submenu_add_item(submenu, "Targeted Passive (List)", SubmenuIndexTargetedPassive, wifi_marauder_scene_sniffpmkid_options_callback, app);
  53. submenu_add_item(submenu, "Targeted Active (List)", SubmenuIndexTargetedActive, wifi_marauder_scene_sniffpmkid_options_callback, app);
  54. submenu_add_item(submenu, "On Channel # - Passive", SubmenuIndexChannelPassive, wifi_marauder_scene_sniffpmkid_options_callback, app);
  55. submenu_add_item(submenu, "On Channel # - Active", SubmenuIndexChannelActive, wifi_marauder_scene_sniffpmkid_options_callback, app);
  56. submenu_set_selected_item(submenu, scene_manager_get_scene_state(app->scene_manager, WifiMarauderSceneSniffPmkidOptions));
  57. view_dispatcher_switch_to_view(app->view_dispatcher, WifiMarauderAppViewSubmenu);
  58. }
  59. bool wifi_marauder_scene_sniffpmkid_options_on_event(void* context, SceneManagerEvent event) {
  60. //WifiMarauderApp* app = context;
  61. UNUSED(context);
  62. UNUSED(event);
  63. bool consumed = false;
  64. return consumed;
  65. }
  66. void wifi_marauder_scene_sniffpmkid_options_on_exit(void* context) {
  67. WifiMarauderApp* app = context;
  68. submenu_reset(app->submenu);
  69. }