Compare commits

...

1 Commits

Author SHA1 Message Date
Andrea Santaniello
238f39d0d8 Fixes 2026-03-16 23:39:22 +01:00
2 changed files with 10 additions and 35 deletions

View File

@@ -200,16 +200,17 @@ bool subghz_scene_keeloq_decrypt_on_event(void* context, SceneManagerEvent event
subghz_txrx_get_fff_data(subghz->txrx),
furi_string_get_cstr(subghz->file_path));
if(subghz->keeloq_keys_manager) {
char key_name[24];
snprintf(key_name, sizeof(key_name), "BF_%07lX", ctx->serial);
subghz_keeloq_keys_add(
subghz->keeloq_keys_manager,
ctx->recovered_mfkey,
ctx->recovered_type,
key_name);
subghz_keeloq_keys_save(subghz->keeloq_keys_manager);
if(!subghz->keeloq_keys_manager) {
subghz->keeloq_keys_manager = subghz_keeloq_keys_alloc();
}
char key_name[24];
snprintf(key_name, sizeof(key_name), "BF_%07lX", ctx->serial);
subghz_keeloq_keys_add(
subghz->keeloq_keys_manager,
ctx->recovered_mfkey,
ctx->recovered_type,
key_name);
subghz_keeloq_keys_save(subghz->keeloq_keys_manager);
subghz_view_keeloq_decrypt_set_result(
subghz->subghz_keeloq_decrypt, true, furi_string_get_cstr(ctx->result));

View File

@@ -6,7 +6,6 @@ enum SubmenuIndex {
SubmenuIndexDelete,
SubmenuIndexSignalSettings,
SubmenuIndexPsaDecrypt,
SubmenuIndexKeeloqDecrypt,
SubmenuIndexCounterBf
};
@@ -20,7 +19,6 @@ void subghz_scene_saved_menu_on_enter(void* context) {
FlipperFormat* fff = subghz_txrx_get_fff_data(subghz->txrx);
bool is_psa_encrypted = false;
bool is_keeloq_unknown = false;
bool has_counter = false;
if(fff) {
FuriString* proto = furi_string_alloc();
@@ -34,17 +32,6 @@ void subghz_scene_saved_menu_on_enter(void* context) {
is_psa_encrypted = true;
}
furi_string_free(type_str);
} else if(furi_string_equal_str(proto, "KeeLoq")) {
FuriString* mf_str = furi_string_alloc();
flipper_format_rewind(fff);
if(flipper_format_read_string(fff, "Manufacture", mf_str)) {
if(furi_string_equal_str(mf_str, "Unknown")) {
is_keeloq_unknown = true;
}
} else {
is_keeloq_unknown = true;
}
furi_string_free(mf_str);
}
}
furi_string_free(proto);
@@ -95,14 +82,6 @@ void subghz_scene_saved_menu_on_enter(void* context) {
subghz_scene_saved_menu_submenu_callback,
subghz);
}
if(is_keeloq_unknown) {
submenu_add_item(
subghz->submenu,
"KeeLoq BF (Phone)",
SubmenuIndexKeeloqDecrypt,
subghz_scene_saved_menu_submenu_callback,
subghz);
}
if(has_counter) {
submenu_add_item(
subghz->submenu,
@@ -148,11 +127,6 @@ bool subghz_scene_saved_menu_on_event(void* context, SceneManagerEvent event) {
subghz->scene_manager, SubGhzSceneSavedMenu, SubmenuIndexPsaDecrypt);
scene_manager_next_scene(subghz->scene_manager, SubGhzScenePsaDecrypt);
return true;
} else if(event.event == SubmenuIndexKeeloqDecrypt) {
scene_manager_set_scene_state(
subghz->scene_manager, SubGhzSceneSavedMenu, SubmenuIndexKeeloqDecrypt);
scene_manager_next_scene(subghz->scene_manager, SubGhzSceneKeeloqDecrypt);
return true;
} else if(event.event == SubmenuIndexCounterBf) {
scene_manager_set_scene_state(
subghz->scene_manager, SubGhzSceneSavedMenu, SubmenuIndexCounterBf);