Commit Graph

2756 Commits

Author SHA1 Message Date
Alexander Bays
b9c0289847 Archive: Add dynamic paths to browser tab (#322)
* feat(Archive): Adds dynamic paths to browser tab

I thought it would be cool to be able to see when I was in say the
`apps_data/flipchess` folder, or some other nested folder, and have
"flipchess" be shown rather than the just "Browser" all the time. It's
not a huge or really crucial change, just a personal modification that
some people may also find useful.

* fix(Archive): Clean up, built-ins, safer

Cleaned up `archive_update_formatted_path` function using switch case,
and also using the built in furi functions where possible. Also removed
the arbitrary and unnecessary `path_buf[256]`, making formatting the
path in the Brief section more memory safe.

* Rename setting and use setting_enum()

* Remove prev_path

* Enum names

* Single text draw call

* Rename to statusbar title

* Revert "Rename to statusbar title"

This reverts commit 243f2a754f.

* Revert "Single text draw call"

This reverts commit 3bbe30449b.

* Simpler fix

* Shorter setting label

* Update changelog

---------

Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
2025-01-17 01:44:11 +00:00
Cody Tolene
530f3d4f22 Main Menu: Add coverflow menu style (#314)
* Add coverflow menu style.

* Update with new canvas extended function `canvas_draw_icon_animation_ex`
2025-01-16 23:50:33 +00:00
Willy-JL
e185f322eb Merge remote-tracking branch 'xero/dev' into mntm-dev 2025-01-13 03:39:59 +00:00
Alexander Bays
34379f1fbe Lockscreen: Separate 'Allow RPC While Locked' for USB/BLE (#343)
* Lockscreen: Separate 'Allow RPC While Locked' for USB/Bluetooth (BLE)

- #330, split of the `allow_locked_rpc_commands` bool into `allow_locked_rpc_usb` and `allow_locked_rpc_ble` to allow the connections separately.

* Shorter wording

* Update changelog

---------

Co-authored-by: Willy-JL <49810075+Willy-JL@users.noreply.github.com>
2025-01-13 02:40:36 +00:00
Willy-JL
db03515acd Merge remote-tracking branch 'ofw/dev' into mntm-dev --nobuild 2025-01-13 00:18:15 +00:00
Yukai Li
a0d1d3fa0f nfc: Fix MIFARE Plus detection (#4049)
* nfc: Fix MIFARE Plus detection
  MIFARE Plus original doesn't have GetVersion support, so detection for SL2 has been moved. Also, SL2 only exists in MIFARE Plus X, so despite it not being specified in the type identification procedure chart, it's safe to call it for what it is.
* Fix spelling
* TODO: mark as non flipper one

Co-authored-by: あく <alleteam@gmail.com>
2025-01-13 03:15:52 +09:00
Willy-JL
f2011a446b Merge remote-tracking branch 'ofw/dev' into mntm-dev 2025-01-11 05:06:46 +00:00
Willy-JL
69754a8da3 Revert "NFC: Add API to enforce ISO15693 mode (#225)"
This reverts commit 5afc01a4c3.
2025-01-11 03:50:22 +00:00
Willy-JL
513be23f83 Revert "Fix compiling unit tests (missing NFC mock for #225)"
This reverts commit 2c247bcb50.
2025-01-11 03:49:49 +00:00
Yukai Li
668500e985 nfc: Fix MFUL PWD_AUTH command creation (#4051) 2025-01-10 17:20:34 +09:00
noproto
56fe7b09ae Fix for early key reuse in dictionary attack state machine 2025-01-04 04:05:40 -05:00
Anna Antonenko
5fd423951b [FL-3933] Pipe (#3996)
* feat: FuriThread stdin
* ci: fix f18
* feat: stdio callback context
* feat: FuriPipe
* POTENTIALLY EXPLOSIVE pipe welding
* fix: non-explosive welding
* Revert welding
* docs: furi_pipe
* feat: pipe event loop integration
* update f18 sdk
* f18
* docs: make doxygen happy
* fix: event loop not triggering when pipe attached to stdio
* fix: partial stdout in pipe
* allow simultaneous in and out subscription in event loop
* refactor: move pipe out of furi and decouple from event loop
* chore: api versioning
* Bump api versions
* refactor: rename pipe_set_pipe_broken_callback
* Toolbox: add missing pragma once

Co-authored-by: あく <alleteam@gmail.com>
2024-12-24 10:58:27 +09:00
Jan Wiesemann
e11a62694e Added flipper_format_write_empty_line(...) (#4029)
* Added flipper_format_write_empty_line(...)
* Format sources

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-12-23 11:32:53 +09:00
Astra
a02781b936 [FL-3920] Fix lost BadBLE keystrokes (#3993)
* WIP: fix lost BadBLE keystrokes
* Switch to semaphores for synchronization
* Move checking to the gap level
* Remove leftovers from hid_service
* Remove more leftovers from hid_service
* De-allocate the semaphore after use
* Change the timeout to account for unforeseen situation
* Update F18 API
* Fix naming and unbump api version
* Move away from semaphores
* Remove the left over include
* Ble: cleanup error handling in ble_gatt_characteristic_update
* Fix PVS warning

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2024-12-23 09:18:14 +09:00
WillyJL
a7b3a13581 Loader: Fix BusFault in handling of OOM (#3992)
* Loader: Fix BusFault in handling of OOM
* Furi: fix crash in aligned_alloc, cleanup aligned_alloc use

Co-authored-by: あく <alleteam@gmail.com>
2024-12-19 06:33:59 +09:00
RebornedBrain
9c96bbfc54 [NFC] Fix ISO15693 stucking in wrong mode. (#3988)
Co-authored-by: あく <alleteam@gmail.com>
2024-12-19 06:01:20 +09:00
Anna Antonenko
8d078e4b8c [FL-3927] FuriThread stdin (#3979)
* feat: FuriThread stdin
* ci: fix f18
* feat: stdio callback context

Co-authored-by: Georgii Surkov <37121527+gsurkov@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-12-19 05:38:43 +09:00
Willy-JL
f19d426d1d Fix missing comma 2024-11-11 01:20:59 +00:00
WillyJL
5eb5d75046 FBT/SDK: New app flag UnloadAssetPacks to free RAM (#260)
* Store app flags in FAP header

* Add app flag to UnloadAssetPacks to free RAM

* Unload asset packs in NFC and MFKey

* Clearer size units

* Update changelog

* Future proof logic

* Sync apps
2024-11-07 06:36:59 +01:00
Willy-JL
e63808537e Merge remote-tracking branch 'fork-ofw/fix/oom-busfault' into mntm-dev --nobuild 2024-11-07 04:04:52 +00:00
Willy-JL
cda2cedf45 Loader: Fix BusFault in handling of OOM 2024-11-07 04:04:10 +00:00
Willy-JL
78f517b294 Merge remote-tracking branch 'ul/dev' into mntm-dev --nobuild 2024-11-05 07:29:58 +00:00
Willy-JL
c565ff83dd Merge remote-tracking branch 'ul/dev' into merge/js-sdk 2024-11-01 13:26:34 +00:00
MX
4479cd489b nice one key doesnt fit in display fully 2024-11-01 07:35:53 +03:00
MX
2d601651c6 some subghz cleanup 2024-11-01 06:49:59 +03:00
Willy-JL
6f5ef19172 Merge remote-tracking branch 'ofw/dev' into mntm-dev 2024-10-31 18:20:25 +00:00
MX
04c8093672 Merge remote-tracking branch 'OFW/dev' into dev 2024-10-31 21:17:01 +03:00
Willy-JL
462d0309c0 Merge commit '85e5642b2ab537ae9e1c0bccac8add975b8a9ed1' into mntm-dev 2024-10-31 17:51:09 +00:00
Willy-JL
04360a47cc Merge commit '8427ec0098129a07f985e94248e12205883f2e41' into mntm-dev 2024-10-31 16:22:28 +00:00
あく
561b4e947a 目覚め時計 (#3906)
* FuriHal: add RTC alarm support

* FuriHal: RTC alarm API. Alarm settings app. Alarm app.

* FuriHal: remove unnecessery init mode enters in RTC

* Update targets/f7/furi_hal/furi_hal_rtc.h

Co-authored-by: Silent <CookiePLMonster@users.noreply.github.com>

* Update targets/f7/furi_hal/furi_hal_rtc.c

Co-authored-by: Silent <CookiePLMonster@users.noreply.github.com>

* Update targets/f7/furi_hal/furi_hal_rtc.h

Co-authored-by: Silent <CookiePLMonster@users.noreply.github.com>

* FuriHal: add seconds in rtc alarm getter

* Alarm & Clock: redesign and cleanup setting and alarm apps, cleanup API

* Spelling and time separator in alarm

* Api Symbols: hide rtc alarm related methods

* Clock alarm: new thread cleanup routine, hour/minute separator in alarm

* Clock: move clock_settings_start into clock_settings fam

* Seettings: update clock and alarm UI according to figma

* Format icons

---------

Co-authored-by: Silent <CookiePLMonster@users.noreply.github.com>
2024-10-31 15:42:03 +04:00
Mykhailo Shevchuk
4b8a1a4b11 Fixed bug with reading pwd locked MFULs (#3959)
* Fixed bug with reading pwd locked MFULs
* Format sources

Co-authored-by: あく <alleteam@gmail.com>
2024-10-31 20:01:00 +09:00
WillyJL
c807ffc324 JS: Backport³ and more additions & fixes (#3961)
* JS: Fix file select for fbt launch js_app
* JS: badusb: Add numpad keys
  Co-authored-by: oldip <oldip@users.noreply.github.com>
* JS: badusb: Layout support
* JS: badusb: altPrint() and altPrintln()
  Co-authored-by: oldip <oldip@users.noreply.github.com>
* JS: badusb: quit()
* JS: serial: readAny()
* JS: serial: end()
* JS: serial: Auto disable expansion service
* JS: storage: Add example script
* JS: gui: text_input: Fix NULL ptr when no prop given
* JS: gui: text_input: Default text props
  Co-authored-by: xMasterX <xMasterX@users.noreply.github.com>
* JS: gui: byte_input
  Co-authored-by: xMasterX <xMasterX@users.noreply.github.com>
* JS: gui: file_picker
* JS: gui: viewDispatcher.currentView
* JS: gui: view.hasProperty()
* JS: gui: Add some missing typedefs comments
* JS: globals: Fix toString() with negative numbers
* JS: globals: parseInt()
  Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com>
* JS: globals: toUpperCase() and toLowerCase()
  Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com>
* JS: globals: Add some missing typedefs
* JS: Add example for string functions
  Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com>
* JS: globals: __dirpath and __filepath
  Co-authored-by: jamisonderek <jamisonderek@users.noreply.github.com>
* JS: globals: load() typedef missing scope param
* JS: Add interactive REPL script example
* JS: Add missing icon for file picker
* JS: Rename to __filename and __dirname
* JS: Move toUpperCase() and toLowerCase() to string class
* JS: parseInt() refactor
* JS: Typedef base param for parseInt()
* Revert "JS: gui: view.hasProperty()"
  This reverts commit 1967ec06d4f2e9cafc4e18384ad370f7a7c44468.
* JS: Move toString() to Number class
* JS: Fix duplicate plugin files
  in plugins, `requires` is used to determine which app to distribute the .fal under `apps_data/appid/plugins`
* JS: math: Missing typedefs, use camelCase
* JS: badusb: layoutPath is optional in typedef
* Fix ASS scoping
* Rename mjs term prop type value
* Change load() description
* Enlarge buffers in default prop assign
* More checks for default data/text size
* Make PVS happy
* Fix icon symbol
* Update types for JS SDK
* toString() was moved to number class

Co-authored-by: oldip <oldip@users.noreply.github.com>
Co-authored-by: xMasterX <xMasterX@users.noreply.github.com>
Co-authored-by: Spooks4576 <Spooks4576@users.noreply.github.com>
Co-authored-by: jamisonderek <jamisonderek@users.noreply.github.com>
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2024-10-31 14:22:05 +09:00
Anna Antonenko
85e5642b2a [FL-3918] Full-fledged JS SDK + npm packages (#3963)
* feat: js sdk
* refactor: move js back where it belongs
* docs: generate docs using typedoc
* feat: sdk versioning scheme
* ci: silence pvs warning
* docs: bring back old incomplete js docs
* style: readAnalog naming
* fix: rename script compatibility screens

Co-authored-by: あく <alleteam@gmail.com>
2024-10-31 11:42:57 +09:00
Nathan N
8427ec0098 MIFARE Classic Key Recovery Improvements (#3822)
* Initial structure for nonce collection
* Nonce logging
* Dictionary attack structure
* Fix compilation
* Identified method to reduce candidate states
* Use EXT_PATH instead of ANY_PATH
* Use median calibrated distance, collect parity bits
* Modify parity collection
* Fixed parity bit collection
* Add note to fix nonce logging
* Fix nonce logging
* Clean redundant code
* Fix valid_nonce
* First attempt disambiguous nonce implementation
* FM11RF08S backdoor detection
* Initial accelerated dictionary attack for weak PRNGs
* Refactor to nested dictionary attack
* Renaming some variables
* Hard PRNG support for accelerated dictionary attack
* Update found keys, initial attempt
* Update found keys, second attempt
* Code cleanup
* Misc bugfixes
* Only use dicts in search_dicts_for_nonce_key if we have them
* Collect nonces again
* Should be detecting both backdoors now
* Relocate backdoor detection
* Hardnested support
* Fix regression for regular nested attack
* Backdoor read
* Backdoor working up to calibration
* Backdoor nested calibration
* Don't recalibrate hard PRNG tags
* Static encrypted nonce collection
* Update TODO
* NFC app UI updates, MVP
* Bump f18 API version (all functions are NFC related)
* Add new backdoor key, fix UI status update carrying over from previous read
* Clear TODO line
* Fix v1/v2 backdoor nonce collection
* Speed up backdoor detection, alert on new backdoor
* Add additional condition to backdoor check
* I'll try freeing memory, that's a good trick!
* Do not enter nested attack if card is already finished
* Do not reset the poller between collected nonces
* Clean up various issues
* Fix Hardnested sector/key type logging
* Add nested_target_key 64 to TODO
* Implement progress bar for upgraded attacks in NFC app
* Typo
* Zero nested_target_key and msb_count on exit
* Note TODO (malloc)
* Dismiss duplicate nonces
* Fix calibration (ensure values are within 3 standard deviations)
* Log static
* No nested dictionary attack re-entry
* Note minor inefficiency
* Uniformly use crypto1_ prefix for symbols in Crypto1 API
* Fix include paths
* Fix include paths cont
* Support CUID dictionary
* Fix log levels
* Avoid storage errors, clean up temporary files
* Handle invalid key candidates
* Fix memory leak in static encrypted attack
* Fix memory leak, use COUNT_OF macro
* Use single call to free FuriString
* Refactor enums to avoid redefinition
* Fix multiple crashes and state machine logic
* Fix inconsistent assignment of known key and known key type/sector
* Backdoor known key logic still needs the current key
* Larger data type for 4K support
* Fix typo
* Fix issue with resume logic
* Mark TODOs for next PR
* Remove redundant assignment
* Fix size_t format specifier
* Simplify auth_passed condition

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
Co-authored-by: gornekich <n.gorbadey@gmail.com>
2024-10-31 09:53:58 +09:00
MX
86813d1b60 Merge remote-tracking branch 'noproto/nestednonces' into dev 2024-10-31 02:27:33 +03:00
noproto
907019c136 Simplify auth_passed condition 2024-10-29 15:35:40 -04:00
noproto
c24007755a Fix size_t format specifier 2024-10-29 15:19:30 -04:00
noproto
eb1aabbec4 Remove redundant assignment 2024-10-29 14:56:40 -04:00
noproto
2282587c15 Mark TODOs for next PR 2024-10-29 14:07:16 -04:00
Willy-JL
7cc71b390f Merge remote-tracking branch 'xero/dev' into mntm-dev 2024-10-26 01:45:01 +01:00
noproto
6dbb46a81d Fix issue with resume logic 2024-10-25 18:38:11 -04:00
MX
e7239f6e8b Merge remote-tracking branch 'noproto/nestednonces' into dev 2024-10-26 01:37:44 +03:00
noproto
bf7b91f45f Fix typo 2024-10-23 05:21:43 -04:00
Willy-JL
218d6adbc0 Merge remote-tracking branch 'ul/dev' into mntm-dev 2024-10-22 23:21:30 +01:00
MX
cf0a6ae2d0 Merge remote-tracking branch noproto-nestednonces into dev 2024-10-22 17:10:08 +03:00
Nathan N
47637621a7 Merge branch 'dev' into nestednonces 2024-10-22 09:52:25 -04:00
noproto
92aa70ba9d Larger data type for 4K support 2024-10-22 09:54:46 -04:00
Willy-JL
ffd1ceaab4 Merge remote-tracking branch 'ul/dev' into mntm-dev 2024-10-22 03:37:49 +01:00
Willy-JL
0afbbf2e61 Merge remote-tracking branch 'ofw/dev' into mntm-dev 2024-10-22 03:33:47 +01:00
MX
fc16978be5 Merge remote-tracking branch 'OFW/dev' into dev [ci skip] 2024-10-22 02:28:24 +03:00