mirror of
https://github.com/Next-Flip/Momentum-Firmware.git
synced 2026-04-26 03:39:58 -07:00
42 lines
1.4 KiB
C
42 lines
1.4 KiB
C
#pragma once
|
|
|
|
#include "../subbrute_protocols.h"
|
|
|
|
typedef enum {
|
|
SubBruteWorkerStateIDLE,
|
|
SubBruteWorkerStateReady,
|
|
SubBruteWorkerStateTx,
|
|
SubBruteWorkerStateFinished
|
|
} SubBruteWorkerState;
|
|
|
|
typedef void (*SubBruteWorkerCallback)(void* context, SubBruteWorkerState state);
|
|
|
|
typedef struct SubBruteWorker SubBruteWorker;
|
|
|
|
SubBruteWorker* subbrute_worker_alloc();
|
|
void subbrute_worker_free(SubBruteWorker* instance);
|
|
uint64_t subbrute_worker_get_step(SubBruteWorker* instance);
|
|
bool subbrute_worker_set_step(SubBruteWorker* instance, uint64_t step);
|
|
bool subbrute_worker_is_running(SubBruteWorker* instance);
|
|
bool subbrute_worker_init_default_attack(
|
|
SubBruteWorker* instance,
|
|
SubBruteAttacks attack_type,
|
|
uint64_t step,
|
|
const SubBruteProtocol* protocol,
|
|
uint8_t extra_repeats);
|
|
bool subbrute_worker_init_file_attack(
|
|
SubBruteWorker* instance,
|
|
uint64_t step,
|
|
uint8_t load_index,
|
|
uint64_t file_key,
|
|
SubBruteProtocol* protocol,
|
|
uint8_t extra_repeats,
|
|
bool two_bytes);
|
|
bool subbrute_worker_start(SubBruteWorker* instance);
|
|
void subbrute_worker_stop(SubBruteWorker* instance);
|
|
bool subbrute_worker_transmit_current_key(SubBruteWorker* instance, uint64_t step);
|
|
bool subbrute_worker_can_manual_transmit(SubBruteWorker* instance);
|
|
void subbrute_worker_set_callback(
|
|
SubBruteWorker* instance,
|
|
SubBruteWorkerCallback callback,
|
|
void* context); |