summaryrefslogtreecommitdiff
path: root/src/extern.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/extern.h')
-rw-r--r--src/extern.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/extern.h b/src/extern.h
index fc0a49d..4c036cb 100644
--- a/src/extern.h
+++ b/src/extern.h
@@ -88,6 +88,8 @@ void *fido_hid_open(const char *);
88void fido_hid_close(void *); 88void fido_hid_close(void *);
89int fido_hid_read(void *, unsigned char *, size_t, int); 89int fido_hid_read(void *, unsigned char *, size_t, int);
90int fido_hid_write(void *, const unsigned char *, size_t); 90int fido_hid_write(void *, const unsigned char *, size_t);
91size_t fido_hid_report_in_len(void *);
92size_t fido_hid_report_out_len(void *);
91 93
92/* generic i/o */ 94/* generic i/o */
93int fido_rx_cbor_status(fido_dev_t *, int); 95int fido_rx_cbor_status(fido_dev_t *, int);
@@ -115,6 +117,8 @@ void fido_log_xxd(const void *, size_t);
115/* u2f */ 117/* u2f */
116int u2f_register(fido_dev_t *, fido_cred_t *, int); 118int u2f_register(fido_dev_t *, fido_cred_t *, int);
117int u2f_authenticate(fido_dev_t *, fido_assert_t *, int); 119int u2f_authenticate(fido_dev_t *, fido_assert_t *, int);
120int u2f_get_touch_begin(fido_dev_t *);
121int u2f_get_touch_status(fido_dev_t *, int *, int);
118 122
119/* unexposed fido ops */ 123/* unexposed fido ops */
120int fido_dev_authkey(fido_dev_t *, es256_pk_t *); 124int fido_dev_authkey(fido_dev_t *, es256_pk_t *);
@@ -149,6 +153,22 @@ typedef int (*dev_manifest_func_t)(fido_dev_info_t *, size_t, size_t *);
149int fido_dev_register_manifest_func(const dev_manifest_func_t); 153int fido_dev_register_manifest_func(const dev_manifest_func_t);
150void fido_dev_unregister_manifest_func(const dev_manifest_func_t); 154void fido_dev_unregister_manifest_func(const dev_manifest_func_t);
151 155
156/* fuzzing instrumentation */
157#ifdef FIDO_FUZZ
158uint32_t uniform_random(uint32_t);
159#endif
160
161/* internal device capability flags */
162#define FIDO_DEV_PIN_SET 0x01
163#define FIDO_DEV_PIN_UNSET 0x02
164#define FIDO_DEV_CRED_PROT 0x04
165
166/* miscellanea */
167#define FIDO_DUMMY_CLIENTDATA ""
168#define FIDO_DUMMY_RP_ID "localhost"
169#define FIDO_DUMMY_USER_NAME "dummy"
170#define FIDO_DUMMY_USER_ID 1
171
152#ifdef __cplusplus 172#ifdef __cplusplus
153} /* extern "C" */ 173} /* extern "C" */
154#endif /* __cplusplus */ 174#endif /* __cplusplus */