summaryrefslogtreecommitdiff
path: root/src/fido.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/fido.h')
-rw-r--r--src/fido.h23
1 files changed, 19 insertions, 4 deletions
diff --git a/src/fido.h b/src/fido.h
index e41de89..baa2928 100644
--- a/src/fido.h
+++ b/src/fido.h
@@ -32,6 +32,12 @@
32extern "C" { 32extern "C" {
33#endif /* __cplusplus */ 33#endif /* __cplusplus */
34 34
35#ifdef _MSC_VER
36#define FIDO_DEPRECATED(reason) __declspec(deprecated(reason))
37#else
38#define FIDO_DEPRECATED(reason) __attribute__((__deprecated__(reason)))
39#endif
40
35fido_assert_t *fido_assert_new(void); 41fido_assert_t *fido_assert_new(void);
36fido_cred_t *fido_cred_new(void); 42fido_cred_t *fido_cred_new(void);
37fido_dev_t *fido_dev_new(void); 43fido_dev_t *fido_dev_new(void);
@@ -82,6 +88,7 @@ const unsigned char *fido_cbor_info_aaguid_ptr(const fido_cbor_info_t *);
82const unsigned char *fido_cred_authdata_ptr(const fido_cred_t *); 88const unsigned char *fido_cred_authdata_ptr(const fido_cred_t *);
83const unsigned char *fido_cred_clientdata_hash_ptr(const fido_cred_t *); 89const unsigned char *fido_cred_clientdata_hash_ptr(const fido_cred_t *);
84const unsigned char *fido_cred_id_ptr(const fido_cred_t *); 90const unsigned char *fido_cred_id_ptr(const fido_cred_t *);
91const unsigned char *fido_cred_aaguid_ptr(const fido_cred_t *);
85const unsigned char *fido_cred_user_id_ptr(const fido_cred_t *); 92const unsigned char *fido_cred_user_id_ptr(const fido_cred_t *);
86const unsigned char *fido_cred_pubkey_ptr(const fido_cred_t *); 93const unsigned char *fido_cred_pubkey_ptr(const fido_cred_t *);
87const unsigned char *fido_cred_sig_ptr(const fido_cred_t *); 94const unsigned char *fido_cred_sig_ptr(const fido_cred_t *);
@@ -97,8 +104,8 @@ int fido_assert_set_clientdata_hash(fido_assert_t *, const unsigned char *,
97int fido_assert_set_count(fido_assert_t *, size_t); 104int fido_assert_set_count(fido_assert_t *, size_t);
98int fido_assert_set_extensions(fido_assert_t *, int); 105int fido_assert_set_extensions(fido_assert_t *, int);
99int fido_assert_set_hmac_salt(fido_assert_t *, const unsigned char *, size_t); 106int fido_assert_set_hmac_salt(fido_assert_t *, const unsigned char *, size_t);
100int fido_assert_set_options(fido_assert_t *, bool, bool) 107FIDO_DEPRECATED("use fido_assert_set_up/fido_assert_set_uv")
101 __attribute__((__deprecated__("use fido_assert_set_up/fido_assert_set_uv"))); 108int fido_assert_set_options(fido_assert_t *, bool, bool);
102int fido_assert_set_rp(fido_assert_t *, const char *); 109int fido_assert_set_rp(fido_assert_t *, const char *);
103int fido_assert_set_up(fido_assert_t *, fido_opt_t); 110int fido_assert_set_up(fido_assert_t *, fido_opt_t);
104int fido_assert_set_uv(fido_assert_t *, fido_opt_t); 111int fido_assert_set_uv(fido_assert_t *, fido_opt_t);
@@ -111,8 +118,8 @@ int fido_cred_set_authdata_raw(fido_cred_t *, const unsigned char *, size_t);
111int fido_cred_set_clientdata_hash(fido_cred_t *, const unsigned char *, size_t); 118int fido_cred_set_clientdata_hash(fido_cred_t *, const unsigned char *, size_t);
112int fido_cred_set_extensions(fido_cred_t *, int); 119int fido_cred_set_extensions(fido_cred_t *, int);
113int fido_cred_set_fmt(fido_cred_t *, const char *); 120int fido_cred_set_fmt(fido_cred_t *, const char *);
114int fido_cred_set_options(fido_cred_t *, bool, bool) 121FIDO_DEPRECATED("use fido_cred_set_rk/fido_cred_set_uv")
115 __attribute__((__deprecated__("use fido_cred_set_rk/fido_cred_set_uv"))); 122int fido_cred_set_options(fido_cred_t *, bool, bool);
116int fido_cred_set_prot(fido_cred_t *, int); 123int fido_cred_set_prot(fido_cred_t *, int);
117int fido_cred_set_rk(fido_cred_t *, fido_opt_t); 124int fido_cred_set_rk(fido_cred_t *, fido_opt_t);
118int fido_cred_set_rp(fido_cred_t *, const char *, const char *); 125int fido_cred_set_rp(fido_cred_t *, const char *, const char *);
@@ -130,6 +137,8 @@ int fido_dev_close(fido_dev_t *);
130int fido_dev_get_assert(fido_dev_t *, fido_assert_t *, const char *); 137int fido_dev_get_assert(fido_dev_t *, fido_assert_t *, const char *);
131int fido_dev_get_cbor_info(fido_dev_t *, fido_cbor_info_t *); 138int fido_dev_get_cbor_info(fido_dev_t *, fido_cbor_info_t *);
132int fido_dev_get_retry_count(fido_dev_t *, int *); 139int fido_dev_get_retry_count(fido_dev_t *, int *);
140int fido_dev_get_touch_begin(fido_dev_t *);
141int fido_dev_get_touch_status(fido_dev_t *, int *, int);
133int fido_dev_info_manifest(fido_dev_info_t *, size_t, size_t *); 142int fido_dev_info_manifest(fido_dev_info_t *, size_t, size_t *);
134int fido_dev_make_cred(fido_dev_t *, fido_cred_t *, const char *); 143int fido_dev_make_cred(fido_dev_t *, fido_cred_t *, const char *);
135int fido_dev_open_with_info(fido_dev_t *); 144int fido_dev_open_with_info(fido_dev_t *);
@@ -154,6 +163,7 @@ size_t fido_cbor_info_versions_len(const fido_cbor_info_t *);
154size_t fido_cred_authdata_len(const fido_cred_t *); 163size_t fido_cred_authdata_len(const fido_cred_t *);
155size_t fido_cred_clientdata_hash_len(const fido_cred_t *); 164size_t fido_cred_clientdata_hash_len(const fido_cred_t *);
156size_t fido_cred_id_len(const fido_cred_t *); 165size_t fido_cred_id_len(const fido_cred_t *);
166size_t fido_cred_aaguid_len(const fido_cred_t *);
157size_t fido_cred_user_id_len(const fido_cred_t *); 167size_t fido_cred_user_id_len(const fido_cred_t *);
158size_t fido_cred_pubkey_len(const fido_cred_t *); 168size_t fido_cred_pubkey_len(const fido_cred_t *);
159size_t fido_cred_sig_len(const fido_cred_t *); 169size_t fido_cred_sig_len(const fido_cred_t *);
@@ -170,9 +180,14 @@ uint8_t fido_dev_flags(const fido_dev_t *);
170int16_t fido_dev_info_vendor(const fido_dev_info_t *); 180int16_t fido_dev_info_vendor(const fido_dev_info_t *);
171int16_t fido_dev_info_product(const fido_dev_info_t *); 181int16_t fido_dev_info_product(const fido_dev_info_t *);
172uint64_t fido_cbor_info_maxmsgsiz(const fido_cbor_info_t *); 182uint64_t fido_cbor_info_maxmsgsiz(const fido_cbor_info_t *);
183uint64_t fido_cbor_info_maxcredcntlst(const fido_cbor_info_t *);
184uint64_t fido_cbor_info_maxcredidlen(const fido_cbor_info_t *);
173uint64_t fido_cbor_info_fwversion(const fido_cbor_info_t *); 185uint64_t fido_cbor_info_fwversion(const fido_cbor_info_t *);
174 186
187bool fido_dev_has_pin(const fido_dev_t *);
175bool fido_dev_is_fido2(const fido_dev_t *); 188bool fido_dev_is_fido2(const fido_dev_t *);
189bool fido_dev_supports_pin(const fido_dev_t *);
190bool fido_dev_supports_cred_prot(const fido_dev_t *);
176 191
177#ifdef __cplusplus 192#ifdef __cplusplus
178} /* extern "C" */ 193} /* extern "C" */