@@ -150,6 +150,7 @@ typedef struct {
150
150
bool resume ;
151
151
bool advertising ;
152
152
uint8_t delay ;
153
+ uint8_t mac [GAP_MAC_ADDR_SIZE ];
153
154
FuriThread * thread ;
154
155
int8_t index ;
155
156
bool ignore_bruteforce ;
@@ -189,10 +190,9 @@ static int32_t adv_thread(void* _ctx) {
189
190
uint8_t size ;
190
191
uint16_t delay ;
191
192
uint8_t * packet ;
192
- uint8_t mac [GAP_MAC_ADDR_SIZE ];
193
193
Payload * payload = & attacks [state -> index ].payload ;
194
194
const Protocol * protocol = attacks [state -> index ].protocol ;
195
- if (!payload -> random_mac ) furi_hal_random_fill_buf (mac , sizeof (mac ));
195
+ if (!payload -> random_mac ) furi_hal_random_fill_buf (state -> mac , sizeof (state -> mac ));
196
196
if (state -> ctx .led_indicator ) start_blink (state );
197
197
198
198
while (state -> advertising ) {
@@ -209,9 +209,9 @@ static int32_t adv_thread(void* _ctx) {
209
209
furi_hal_bt_custom_adv_set (packet , size );
210
210
free (packet );
211
211
212
- if (payload -> random_mac ) furi_hal_random_fill_buf (mac , sizeof (mac ));
212
+ if (payload -> random_mac ) furi_hal_random_fill_buf (state -> mac , sizeof (state -> mac ));
213
213
delay = delays [state -> delay ];
214
- furi_hal_bt_custom_adv_start (delay , delay , 0x00 , mac , 0x1F );
214
+ furi_hal_bt_custom_adv_start (delay , delay , 0x00 , state -> mac , 0x1F );
215
215
furi_thread_flags_wait (true, FuriFlagWaitAny , delay );
216
216
furi_hal_bt_custom_adv_stop ();
217
217
}
@@ -375,7 +375,7 @@ static void draw_callback(Canvas* canvas, void* _ctx) {
375
375
"App+Spam: \e#WillyJL\e# XFW\n"
376
376
"Apple+Crash: \e#ECTO-1A\e#\n"
377
377
"Android+Win: \e#Spooks4576\e#\n"
378
- " Version \e#4.2 \e#" ,
378
+ " Version \e#4.3 \e#" ,
379
379
false);
380
380
break ;
381
381
default : {
@@ -545,10 +545,10 @@ static bool input_callback(InputEvent* input, void* _ctx) {
545
545
furi_hal_bt_custom_adv_set (packet , size );
546
546
free (packet );
547
547
548
- uint8_t mac [ GAP_MAC_ADDR_SIZE ];
549
- furi_hal_random_fill_buf (mac , sizeof (mac ));
548
+ if ( payload -> random_mac || input -> type == InputTypeLong )
549
+ furi_hal_random_fill_buf (state -> mac , sizeof (state -> mac ));
550
550
uint16_t delay = delays [state -> delay ];
551
- furi_hal_bt_custom_adv_start (delay , delay , 0x00 , mac , 0x1F );
551
+ furi_hal_bt_custom_adv_start (delay , delay , 0x00 , state -> mac , 0x1F );
552
552
if (state -> ctx .led_indicator )
553
553
notification_message (state -> ctx .notification , & solid_message );
554
554
furi_delay_ms (10 );
0 commit comments