akopachov / flipper-zero_authenticator

Software-based TOTP/HOTP authenticator for Flipper Zero device.
GNU General Public License v3.0
533 stars 24 forks source link

[BUG] Flipper crashes on app open #178

Closed alexadamski closed 1 year ago

alexadamski commented 1 year ago

Describe the bug App crashes the flipper on startup.

To Reproduce Steps to reproduce the behavior:

  1. Go to Applications
  2. Select Tools
  3. Click on Authenticator
  4. See Error: Flipper was crashed and rebooted

Expected behavior The app to start. All other apps work normaly. Reinstalling Firmware and completely deleting the app (in fs) did nothing. Installed the app through the offical app store.

Device information (please complete the following information):

Additional Info When opening the app again: Error: An error has occured during loading config file. Then again crash on exit: Flipper was crashed and rebooted : NullPointer dereference

akopachov commented 1 year ago

Hey, would you mind sending me your /ext/authenticator/totp.conf file?

Sicmatr1x commented 1 year ago

Describe the bug App crashes the flipper on startup.

To Reproduce Steps to reproduce the behavior:

Go to Applications Select Tools Click on Authenticator See Error: Flipper was crashed and rebooted Expected behavior The app to start. All other apps work normaly. Reinstalling Firmware and completely deleting the app (in fs) did nothing. Installed the app through the offical app store.

Device information (please complete the following information):

Firmware: Official stable Firmware version 0.87.0 Additional Info When opening the app again: Error: An error has occured during loading config file. Then again crash on exit: Flipper was crashed and rebooted : NullPointer dereference

here is the log

[7:48:06 PM][info]: disconnected
[7:48:06 PM][debug]: reconnecting
[7:48:06 PM][info]: connecting
[7:48:06 PM][info]: session started
[7:48:08 PM][info]: connected
[7:48:08 PM][info]: synchronize
[7:48:08 PM][debug]: > request(storage(stat(/ext/Manifest)))
[7:48:08 PM][debug]: > request(storage(read(/int/.region_data)))
[7:48:08 PM][debug]: > request(storage(list(/ext/apps_manifests)))
0000)))
[7:48:08 PM][debug]: < response(storage(stat(39937)))
[7:48:08 PM][debug]: < response(storage(list([mifare_nested.fim, spectrum_analyzer.fim, xbox_controller.fim, sony_intervalometer.fim, ir_scope.fim, xremote.fim, t_rex_runner.fim, game_2048.fim])))
[7:48:08 PM][debug]: < response(storage(list([minesweeper.fim, flappy_bird.fim, nfc_rfid_detector.fim, passgen.fim, flipbip.fim, totp.fim, text_viewer.fim, resistors.fim])))
[7:48:08 PM][debug]: < response(storage(list([flipp_pomodoro.fim, cntdown_tim.fim, counter.fim, barcode_app.fim, bt_trigger.fim])))
[7:48:08 PM][debug]: > request(storage(read(/ext/apps_manifests/mifare_nested.fim)))
[7:48:08 PM][debug]: < response(storage(file(40 bytes)))
[7:48:08 PM][debug]: < response(storage(info(28 KiB / 200 KiB)))
[7:48:08 PM][debug]: > request(storage(info(/ext)))
[7:48:08 PM][debug]: < response(ok)
[7:48:08 PM][info]: syncing date: (537s)
[7:48:08 PM][debug]: > request(storage(stat(/ext/nfc/.mfkey32.log)))
[7:48:09 PM][debug]: < response(storage(file(398 bytes)))
[7:48:09 PM][debug]: > request(storage(read(/ext/apps_manifests/spectrum_analyzer.fim)))
[7:48:09 PM][debug]: < response(storage(info(30.2 MiB / 119 GiB)))
[7:48:09 PM][debug]: > request(system(property(devinfo.firmware.origin.fork)))
[7:48:09 PM][debug]: > request(storage(list(/any)))
[7:48:09 PM][debug]: < response(storage(file(409 bytes)))
[7:48:09 PM][debug]: > request(storage(read(/ext/apps_manifests/xbox_controller.fim)))
[7:48:09 PM][debug]: < response(system(property(firmware.origin.fork: Official)))
[7:48:09 PM][debug]: > request(system(property(devinfo.firmware.origin.git)))
[7:48:09 PM][debug]: < response(ok)
[7:48:09 PM][debug]: < response(storage(list([System Volume Information, update, ibutton, lfrfid, Manifest, apps, apps_data, badusb])))
[7:48:09 PM][debug]: < response(storage(list([dolphin, u2f, infrared, nfc, favorites.txt, badbt, .tmp, apps_manifests])))
[7:48:09 PM][debug]: < response(storage(list([subghz, authenticator, subghz_remote, wav_player, .blackjack.settings])))
[7:48:09 PM][debug]: > request(storage(list(/any/subghz)))
[7:48:09 PM][debug]: < response(storage(file(406 bytes)))
[7:48:09 PM][debug]: > request(storage(read(/ext/apps_manifests/sony_intervalometer.fim)))
[7:48:09 PM][debug]: < response(system(property(firmware.origin.git: https://github.com/flipperdevices/flipperzero-firmware)))
[7:48:10 PM][debug]: < response(ok)
[7:48:10 PM][debug]: < response(storage(list([assets])))
[7:48:10 PM][debug]: > request(storage(list(/any/lfrfid)))
[7:48:10 PM][debug]: < response(storage(file(512 bytes)))
[7:48:10 PM][debug]: < response(storage(file(452 bytes)))
[7:48:10 PM][debug]: > request(storage(read(/ext/apps_manifests/ir_scope.fim)))
[7:48:10 PM][debug]: < response(storage(list([])))
[7:48:10 PM][debug]: > request(storage(list(/any/nfc)))
[7:48:10 PM][debug]: < response(storage(file(408 bytes)))
[7:48:10 PM][debug]: > request(storage(read(/ext/apps_manifests/xremote.fim)))
[7:48:10 PM][debug]: < response(storage(list([assets, Szt_l.nfc, Szt_2.nfc])))
[7:48:10 PM][debug]: > request(storage(list(/any/nfc)))
[7:48:10 PM][debug]: < response(storage(file(512 bytes)))
[7:48:11 PM][debug]: < response(storage(file(427 bytes)))
[7:48:11 PM][debug]: > request(storage(read(/ext/apps_manifests/t_rex_runner.fim)))
[7:48:11 PM][debug]: < response(storage(list([assets, Szt_l.nfc, Szt_2.nfc])))
[7:48:11 PM][debug]: > request(storage(list(/any/infrared)))
[7:48:11 PM][debug]: < response(storage(file(393 bytes)))
[7:48:11 PM][debug]: > request(storage(read(/ext/apps_manifests/game_2048.fim)))
[7:48:11 PM][debug]: < response(storage(list([assets, Remote.ir])))
[7:48:11 PM][debug]: > request(storage(list(/any/ibutton)))
[7:48:11 PM][debug]: < response(storage(file(378 bytes)))
[7:48:11 PM][debug]: > request(storage(read(/ext/apps_manifests/minesweeper.fim)))
[7:48:11 PM][debug]: < response(storage(list([])))
[7:48:11 PM][debug]: > request(storage(hash(/any/nfc/Szt_l.nfc)))
[7:48:11 PM][debug]: < response(storage(file(379 bytes)))
[7:48:11 PM][debug]: > request(storage(read(/ext/apps_manifests/flappy_bird.fim)))
[7:48:11 PM][debug]: < response(storage(hash(0a0bba628d640fdedaf2355542f9c449)))
[7:48:11 PM][debug]: > request(storage(hash(/any/nfc/Szt_2.nfc)))
[7:48:11 PM][debug]: < response(storage(file(407 bytes)))
[7:48:11 PM][debug]: > request(storage(read(/ext/apps_manifests/nfc_rfid_detector.fim)))
[7:48:11 PM][debug]: < response(storage(hash(0a0bba628d640fdedaf2355542f9c449)))
[7:48:11 PM][debug]: > request(storage(hash(/any/infrared/Remote.ir)))
[7:48:12 PM][debug]: < response(storage(file(403 bytes)))
[7:48:12 PM][debug]: > request(storage(read(/ext/apps_manifests/passgen.fim)))
[7:48:12 PM][debug]: < response(storage(hash(29219cc9f8c0533520e6fc4ff3948972)))
[7:48:12 PM][debug]: > request(storage(read(/any/favorites.txt)))
[7:48:12 PM][debug]: < response(storage(file(394 bytes)))
[7:48:12 PM][debug]: < response(storage(file(0 bytes)))
[7:48:12 PM][debug]: > request(storage(write(/any/favorites.txt, 0 bytes)))
[7:48:12 PM][debug]: > request(storage(read(/ext/apps_manifests/flipbip.fim)))
[7:48:12 PM][debug]: < response(ok)
[7:48:12 PM][info]: syncing archive: (3496s)
[7:48:12 PM][debug]: < response(storage(file(401 bytes)))
[7:48:12 PM][debug]: > request(storage(read(/ext/apps_manifests/totp.fim)))
[7:48:13 PM][debug]: < response(storage(file(512 bytes)))
[7:48:13 PM][debug]: < response(storage(file(358 bytes)))
[7:48:13 PM][debug]: > request(storage(read(/ext/apps_manifests/text_viewer.fim)))
[7:48:13 PM][debug]: < response(storage(file(403 bytes)))
[7:48:13 PM][debug]: > request(storage(read(/ext/apps_manifests/resistors.fim)))
[7:48:13 PM][debug]: < response(storage(file(415 bytes)))
[7:48:13 PM][debug]: > request(storage(read(/ext/apps_manifests/flipp_pomodoro.fim)))
[7:48:13 PM][debug]: < response(storage(file(413 bytes)))
[7:48:13 PM][debug]: > request(storage(read(/ext/apps_manifests/cntdown_tim.fim)))
[7:48:14 PM][debug]: < response(storage(file(408 bytes)))
[7:48:14 PM][debug]: > request(storage(read(/ext/apps_manifests/counter.fim)))
[7:48:14 PM][debug]: < response(storage(file(391 bytes)))
[7:48:14 PM][debug]: > request(storage(read(/ext/apps_manifests/barcode_app.fim)))
[7:48:14 PM][debug]: < response(storage(file(391 bytes)))
[7:48:14 PM][debug]: > request(storage(read(/ext/apps_manifests/bt_trigger.fim)))
[7:48:14 PM][debug]: < response(storage(file(389 bytes)))
[7:48:14 PM][debug]: > request(system(property(devinfo.hardware.target)))
[7:48:14 PM][debug]: < response(system(property(hardware.target: 7)))
[7:48:14 PM][debug]: < response(ok)
[7:48:14 PM][debug]: > request(system(property(devinfo.firmware.api)))
[7:48:14 PM][debug]: < response(system(property(firmware.api.major: 34)))
[7:48:14 PM][debug]: < response(system(property(firmware.api.minor: 3)))
[7:48:14 PM][debug]: < response(ok)
Sicmatr1x commented 1 year ago

There is no /ext/apps_data/totp/totp.conf file .

截屏2023-08-01 下午7 50 08
akopachov commented 1 year ago

Could you try this build? totp.zip

alexadamski commented 1 year ago

Could you try this build? totp.zip

Yes, this build works fine. Thank you. The old one generated an empty totp.conf file in the Authenticator folder and crashed after that.

akopachov commented 1 year ago

perfect! Thanks for testing. Will publish this update to OFW catalog soon.