9e62f08e4d
* U2F implementation prototype * U2F data encryption and store, user confirmation request * remove debug prints * fix notification bug in chrome * split u2f_alloc into u2f_init and u2f_alloc * typo fix, furi-hal-trng -> furi-hal-random * rand/srand redefinition * SubGhz: a little bit of Dante. * u2f_data naming fix Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
36 lines
637 B
C
36 lines
637 B
C
#pragma once
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include <furi.h>
|
|
|
|
typedef enum {
|
|
U2fNotifyRegister,
|
|
U2fNotifyAuth,
|
|
U2fNotifyWink,
|
|
} U2fNotifyEvent;
|
|
|
|
typedef struct U2fData U2fData;
|
|
|
|
typedef void (*U2fEvtCallback)(U2fNotifyEvent evt, void* context);
|
|
|
|
U2fData* u2f_alloc();
|
|
|
|
bool u2f_init(U2fData* instance);
|
|
|
|
void u2f_free(U2fData* instance);
|
|
|
|
void u2f_set_event_callback(U2fData* instance, U2fEvtCallback callback, void* context);
|
|
|
|
void u2f_confirm_user_present(U2fData* instance);
|
|
|
|
uint16_t u2f_msg_parse(U2fData* instance, uint8_t* buf, uint16_t len);
|
|
|
|
void u2f_wink(U2fData* instance);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|