Skip to content

Commit

Permalink
RFID Fuzzer fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
xMasterX committed Nov 12, 2022
1 parent f7fb055 commit aface38
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 4 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
* SubGHz Remote: Cleanup code in unirf, fix issue #153
* Plugins: Remove `srand` calls
* Plugins: Fix DHT Monitor icon
* Plugins: RFID Fuzzer - Fix random crashes and improve stability
* Plugins: RFID Fuzzer - allow holding left right to change delay faster (hold TD button to add +10 or -10 to time delay)
* Plugins: Morse code cleanup text by pressing back
* Plugins: TOTP Update - "BadUSB" type key into pc mode [(by akopachov)](https://github.com/akopachov/flipper-zero_authenticator)
Expand Down
1 change: 1 addition & 0 deletions applications/plugins/flipfrid/flipfrid.h
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ typedef struct {
LFRFIDWorker* worker;
ProtocolDict* dict;
ProtocolId protocol;
bool workr_rund;

uint8_t time_between_cards;

Expand Down
15 changes: 11 additions & 4 deletions applications/plugins/flipfrid/scene/flipfrid_scene_run_attack.c
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,11 @@ void flipfrid_scene_run_attack_on_enter(FlipFridState* context) {
}

void flipfrid_scene_run_attack_on_exit(FlipFridState* context) {
lfrfid_worker_stop(context->worker);
lfrfid_worker_stop_thread(context->worker);
if(context->workr_rund) {
lfrfid_worker_stop(context->worker);
lfrfid_worker_stop_thread(context->worker);
context->workr_rund = false;
}
lfrfid_worker_free(context->worker);
protocol_dict_free(context->dict);
notification_message(context->notify, &sequence_blink_stop);
Expand All @@ -109,9 +112,13 @@ void flipfrid_scene_run_attack_on_tick(FlipFridState* context) {
context->worker = lfrfid_worker_alloc(context->dict);
lfrfid_worker_start_thread(context->worker);
lfrfid_worker_emulate_start(context->worker, context->protocol);
context->workr_rund = true;
} else if(0 == counter) {
lfrfid_worker_stop(context->worker);
lfrfid_worker_stop_thread(context->worker);
if(context->workr_rund) {
lfrfid_worker_stop(context->worker);
lfrfid_worker_stop_thread(context->worker);
context->workr_rund = false;
}
switch(context->attack) {
case FlipFridAttackDefaultValues:
if(context->proto == EM4100) {
Expand Down

0 comments on commit aface38

Please sign in to comment.