diff --git a/abi_libs b/abi_libs --- a/abi_libs +++ b/abi_libs @@ -1 +1,4 @@ +fido2-assert +fido2-cred +fido2-token libfido2.so.1 diff --git a/abi_symbols b/abi_symbols --- a/abi_symbols +++ b/abi_symbols @@ -1,3 +1,164 @@ +fido2-assert:_IO_stdin_used +fido2-assert:__bss_start +fido2-assert:__data_start +fido2-assert:_edata +fido2-assert:_end +fido2-assert:_start +fido2-assert:assert_get +fido2-assert:assert_verify +fido2-assert:base10 +fido2-assert:base64_decode +fido2-assert:base64_encode +fido2-assert:base64_read +fido2-assert:cose_string +fido2-assert:cose_type +fido2-assert:freezero +fido2-assert:get_devopt +fido2-assert:get_pin +fido2-assert:main +fido2-assert:open_dev +fido2-assert:open_read +fido2-assert:open_write +fido2-assert:optarg +fido2-assert:optind +fido2-assert:plural +fido2-assert:print_cred +fido2-assert:prot_string +fido2-assert:read_ec_pubkey +fido2-assert:read_eddsa_pubkey +fido2-assert:read_file +fido2-assert:read_rsa_pubkey +fido2-assert:readpassphrase +fido2-assert:recallocarray +fido2-assert:should_retry_with_pin +fido2-assert:stderr +fido2-assert:stdin +fido2-assert:stdout +fido2-assert:string_read +fido2-assert:strlcat +fido2-assert:strlcpy +fido2-assert:usage +fido2-assert:write_ec_pubkey +fido2-assert:write_eddsa_pubkey +fido2-assert:write_file +fido2-assert:write_rsa_pubkey +fido2-assert:xxd +fido2-cred:_IO_stdin_used +fido2-cred:__bss_start +fido2-cred:__data_start +fido2-cred:_edata +fido2-cred:_end +fido2-cred:_start +fido2-cred:base10 +fido2-cred:base64_decode +fido2-cred:base64_encode +fido2-cred:base64_read +fido2-cred:cose_string +fido2-cred:cose_type +fido2-cred:cred_make +fido2-cred:cred_verify +fido2-cred:freezero +fido2-cred:get_devopt +fido2-cred:get_pin +fido2-cred:main +fido2-cred:open_dev +fido2-cred:open_read +fido2-cred:open_write +fido2-cred:optarg +fido2-cred:optind +fido2-cred:plural +fido2-cred:print_cred +fido2-cred:prot_string +fido2-cred:read_ec_pubkey +fido2-cred:read_eddsa_pubkey +fido2-cred:read_file +fido2-cred:read_rsa_pubkey +fido2-cred:readpassphrase +fido2-cred:recallocarray +fido2-cred:should_retry_with_pin +fido2-cred:stderr +fido2-cred:stdin +fido2-cred:stdout +fido2-cred:string_read +fido2-cred:strlcat +fido2-cred:strlcpy +fido2-cred:usage +fido2-cred:write_ec_pubkey +fido2-cred:write_eddsa_pubkey +fido2-cred:write_file +fido2-cred:write_rsa_pubkey +fido2-cred:xxd +fido2-token:_IO_stdin_used +fido2-token:__bss_start +fido2-token:__data_start +fido2-token:_edata +fido2-token:_end +fido2-token:_start +fido2-token:base10 +fido2-token:base64_decode +fido2-token:base64_encode +fido2-token:base64_read +fido2-token:bio_delete +fido2-token:bio_enroll +fido2-token:bio_info +fido2-token:bio_list +fido2-token:bio_set_name +fido2-token:blob_delete +fido2-token:blob_get +fido2-token:blob_list +fido2-token:blob_set +fido2-token:config_always_uv +fido2-token:config_entattest +fido2-token:config_force_pin_change +fido2-token:config_pin_minlen +fido2-token:config_pin_minlen_rpid +fido2-token:cose_string +fido2-token:cose_type +fido2-token:credman_delete_rk +fido2-token:credman_get_metadata +fido2-token:credman_list_rk +fido2-token:credman_list_rp +fido2-token:credman_print_rk +fido2-token:credman_update_rk +fido2-token:freezero +fido2-token:get_devopt +fido2-token:get_pin +fido2-token:main +fido2-token:open_dev +fido2-token:open_read +fido2-token:open_write +fido2-token:optarg +fido2-token:optind +fido2-token:pin_change +fido2-token:pin_set +fido2-token:plural +fido2-token:print_cred +fido2-token:prot_string +fido2-token:read_ec_pubkey +fido2-token:read_eddsa_pubkey +fido2-token:read_file +fido2-token:read_rsa_pubkey +fido2-token:readpassphrase +fido2-token:recallocarray +fido2-token:should_retry_with_pin +fido2-token:stderr +fido2-token:stdin +fido2-token:stdout +fido2-token:string_read +fido2-token:strlcat +fido2-token:strlcpy +fido2-token:token_delete +fido2-token:token_get +fido2-token:token_info +fido2-token:token_list +fido2-token:token_reset +fido2-token:token_set +fido2-token:usage +fido2-token:write_ec_pubkey +fido2-token:write_eddsa_pubkey +fido2-token:write_file +fido2-token:write_rsa_pubkey +fido2-token:xxd libfido2.so.1:eddsa_pk_free libfido2.so.1:eddsa_pk_from_EVP_PKEY libfido2.so.1:eddsa_pk_from_ptr @@ -5,12 +166,15 @@ libfido2.so.1:eddsa_pk_to_EVP_PKEY libfido2.so.1:es256_pk_free libfido2.so.1:es256_pk_from_EC_KEY +libfido2.so.1:es256_pk_from_EVP_PKEY libfido2.so.1:es256_pk_from_ptr libfido2.so.1:es256_pk_new libfido2.so.1:es256_pk_to_EVP_PKEY libfido2.so.1:fido_assert_allow_cred libfido2.so.1:fido_assert_authdata_len libfido2.so.1:fido_assert_authdata_ptr +libfido2.so.1:fido_assert_blob_len +libfido2.so.1:fido_assert_blob_ptr libfido2.so.1:fido_assert_clientdata_hash_len libfido2.so.1:fido_assert_clientdata_hash_ptr libfido2.so.1:fido_assert_count @@ -20,14 +184,18 @@ libfido2.so.1:fido_assert_hmac_secret_ptr libfido2.so.1:fido_assert_id_len libfido2.so.1:fido_assert_id_ptr +libfido2.so.1:fido_assert_largeblob_key_len +libfido2.so.1:fido_assert_largeblob_key_ptr libfido2.so.1:fido_assert_new libfido2.so.1:fido_assert_rp_id libfido2.so.1:fido_assert_set_authdata libfido2.so.1:fido_assert_set_authdata_raw +libfido2.so.1:fido_assert_set_clientdata libfido2.so.1:fido_assert_set_clientdata_hash libfido2.so.1:fido_assert_set_count libfido2.so.1:fido_assert_set_extensions libfido2.so.1:fido_assert_set_hmac_salt +libfido2.so.1:fido_assert_set_hmac_secret libfido2.so.1:fido_assert_set_options libfido2.so.1:fido_assert_set_rp libfido2.so.1:fido_assert_set_sig @@ -70,12 +238,17 @@ libfido2.so.1:fido_bio_template_set_name libfido2.so.1:fido_cbor_info_aaguid_len libfido2.so.1:fido_cbor_info_aaguid_ptr +libfido2.so.1:fido_cbor_info_algorithm_cose +libfido2.so.1:fido_cbor_info_algorithm_count +libfido2.so.1:fido_cbor_info_algorithm_type libfido2.so.1:fido_cbor_info_extensions_len libfido2.so.1:fido_cbor_info_extensions_ptr libfido2.so.1:fido_cbor_info_free libfido2.so.1:fido_cbor_info_fwversion +libfido2.so.1:fido_cbor_info_maxcredbloblen libfido2.so.1:fido_cbor_info_maxcredcntlst libfido2.so.1:fido_cbor_info_maxcredidlen +libfido2.so.1:fido_cbor_info_maxlargeblob libfido2.so.1:fido_cbor_info_maxmsgsiz libfido2.so.1:fido_cbor_info_new libfido2.so.1:fido_cbor_info_options_len @@ -83,12 +256,19 @@ libfido2.so.1:fido_cbor_info_options_value_ptr libfido2.so.1:fido_cbor_info_protocols_len libfido2.so.1:fido_cbor_info_protocols_ptr +libfido2.so.1:fido_cbor_info_transports_len +libfido2.so.1:fido_cbor_info_transports_ptr libfido2.so.1:fido_cbor_info_versions_len libfido2.so.1:fido_cbor_info_versions_ptr +libfido2.so.1:fido_compress libfido2.so.1:fido_cred_aaguid_len libfido2.so.1:fido_cred_aaguid_ptr +libfido2.so.1:fido_cred_attstmt_len +libfido2.so.1:fido_cred_attstmt_ptr libfido2.so.1:fido_cred_authdata_len libfido2.so.1:fido_cred_authdata_ptr +libfido2.so.1:fido_cred_authdata_raw_len +libfido2.so.1:fido_cred_authdata_raw_ptr libfido2.so.1:fido_cred_clientdata_hash_len libfido2.so.1:fido_cred_clientdata_hash_ptr libfido2.so.1:fido_cred_display_name @@ -98,18 +278,26 @@ libfido2.so.1:fido_cred_free libfido2.so.1:fido_cred_id_len libfido2.so.1:fido_cred_id_ptr +libfido2.so.1:fido_cred_largeblob_key_len +libfido2.so.1:fido_cred_largeblob_key_ptr libfido2.so.1:fido_cred_new +libfido2.so.1:fido_cred_pin_minlen libfido2.so.1:fido_cred_prot libfido2.so.1:fido_cred_pubkey_len libfido2.so.1:fido_cred_pubkey_ptr libfido2.so.1:fido_cred_rp_id libfido2.so.1:fido_cred_rp_name +libfido2.so.1:fido_cred_set_attstmt libfido2.so.1:fido_cred_set_authdata libfido2.so.1:fido_cred_set_authdata_raw +libfido2.so.1:fido_cred_set_blob +libfido2.so.1:fido_cred_set_clientdata libfido2.so.1:fido_cred_set_clientdata_hash libfido2.so.1:fido_cred_set_extensions libfido2.so.1:fido_cred_set_fmt +libfido2.so.1:fido_cred_set_id libfido2.so.1:fido_cred_set_options +libfido2.so.1:fido_cred_set_pin_minlen libfido2.so.1:fido_cred_set_prot libfido2.so.1:fido_cred_set_rk libfido2.so.1:fido_cred_set_rp @@ -120,6 +308,7 @@ libfido2.so.1:fido_cred_set_x509 libfido2.so.1:fido_cred_sig_len libfido2.so.1:fido_cred_sig_ptr +libfido2.so.1:fido_cred_sigcount libfido2.so.1:fido_cred_type libfido2.so.1:fido_cred_user_id_len libfido2.so.1:fido_cred_user_id_ptr @@ -147,11 +336,14 @@ libfido2.so.1:fido_credman_rp_id_hash_ptr libfido2.so.1:fido_credman_rp_name libfido2.so.1:fido_credman_rp_new +libfido2.so.1:fido_credman_set_dev_rk libfido2.so.1:fido_dev_build libfido2.so.1:fido_dev_cancel libfido2.so.1:fido_dev_close +libfido2.so.1:fido_dev_enable_entattest libfido2.so.1:fido_dev_flags libfido2.so.1:fido_dev_force_fido2 +libfido2.so.1:fido_dev_force_pin_change libfido2.so.1:fido_dev_force_u2f libfido2.so.1:fido_dev_free libfido2.so.1:fido_dev_get_assert @@ -159,7 +351,9 @@ libfido2.so.1:fido_dev_get_retry_count libfido2.so.1:fido_dev_get_touch_begin libfido2.so.1:fido_dev_get_touch_status +libfido2.so.1:fido_dev_get_uv_retry_count libfido2.so.1:fido_dev_has_pin +libfido2.so.1:fido_dev_has_uv libfido2.so.1:fido_dev_info_free libfido2.so.1:fido_dev_info_manifest libfido2.so.1:fido_dev_info_manufacturer_string @@ -168,24 +362,45 @@ libfido2.so.1:fido_dev_info_product libfido2.so.1:fido_dev_info_product_string libfido2.so.1:fido_dev_info_ptr +libfido2.so.1:fido_dev_info_set libfido2.so.1:fido_dev_info_vendor +libfido2.so.1:fido_dev_io_handle libfido2.so.1:fido_dev_is_fido2 +libfido2.so.1:fido_dev_is_winhello +libfido2.so.1:fido_dev_largeblob_get +libfido2.so.1:fido_dev_largeblob_get_array +libfido2.so.1:fido_dev_largeblob_remove +libfido2.so.1:fido_dev_largeblob_set +libfido2.so.1:fido_dev_largeblob_set_array libfido2.so.1:fido_dev_major libfido2.so.1:fido_dev_make_cred libfido2.so.1:fido_dev_minor libfido2.so.1:fido_dev_new +libfido2.so.1:fido_dev_new_with_info libfido2.so.1:fido_dev_open +libfido2.so.1:fido_dev_open_with_info libfido2.so.1:fido_dev_protocol libfido2.so.1:fido_dev_reset libfido2.so.1:fido_dev_set_io_functions libfido2.so.1:fido_dev_set_pin +libfido2.so.1:fido_dev_set_pin_minlen +libfido2.so.1:fido_dev_set_pin_minlen_rpid +libfido2.so.1:fido_dev_set_sigmask +libfido2.so.1:fido_dev_set_timeout libfido2.so.1:fido_dev_set_transport_functions libfido2.so.1:fido_dev_supports_cred_prot +libfido2.so.1:fido_dev_supports_credman +libfido2.so.1:fido_dev_supports_permissions libfido2.so.1:fido_dev_supports_pin +libfido2.so.1:fido_dev_supports_uv +libfido2.so.1:fido_dev_toggle_always_uv libfido2.so.1:fido_init libfido2.so.1:fido_set_log_handler +libfido2.so.1:fido_sha256 libfido2.so.1:fido_strerr +libfido2.so.1:fido_uncompress libfido2.so.1:rs256_pk_free +libfido2.so.1:rs256_pk_from_EVP_PKEY libfido2.so.1:rs256_pk_from_RSA libfido2.so.1:rs256_pk_from_ptr libfido2.so.1:rs256_pk_new diff --git a/abi_used_libs b/abi_used_libs --- a/abi_used_libs +++ b/abi_used_libs @@ -3,3 +3,4 @@ libcbor.so.0.8 libcrypto.so.1.1 libudev.so.1 +libz.so.1 diff --git a/abi_used_symbols b/abi_used_symbols --- a/abi_used_symbols +++ b/abi_used_symbols @@ -1,4 +1,5 @@ ld-linux-x86-64.so.2:__tls_get_addr +libc.so.6:__asprintf_chk libc.so.6:__ctype_b_loc libc.so.6:__ctype_tolower_loc libc.so.6:__ctype_toupper_loc @@ -13,17 +14,22 @@ libc.so.6:__snprintf_chk libc.so.6:__stack_chk_fail libc.so.6:__vsnprintf_chk +libc.so.6:__xpg_strerror_r +libc.so.6:bind libc.so.6:calloc libc.so.6:clock_gettime libc.so.6:close +libc.so.6:connect libc.so.6:err libc.so.6:errx libc.so.6:exit libc.so.6:fclose libc.so.6:fdopen libc.so.6:fflush +libc.so.6:flock libc.so.6:fopen libc.so.6:free +libc.so.6:fstat libc.so.6:getenv libc.so.6:getopt libc.so.6:getpagesize @@ -35,19 +41,25 @@ libc.so.6:memcmp libc.so.6:memcpy libc.so.6:memset +libc.so.6:nanosleep libc.so.6:open -libc.so.6:poll +libc.so.6:ppoll libc.so.6:read +libc.so.6:readv +libc.so.6:realloc +libc.so.6:setsockopt libc.so.6:sigaction libc.so.6:sigemptyset +libc.so.6:socket libc.so.6:stderr libc.so.6:strchr libc.so.6:strcmp libc.so.6:strdup -libc.so.6:strerror libc.so.6:strlen +libc.so.6:strncmp libc.so.6:strsep libc.so.6:strtoll +libc.so.6:strtoull libc.so.6:tcgetattr libc.so.6:tcsetattr libc.so.6:usleep @@ -57,13 +69,16 @@ libcbor.so.0.8:cbor_array_handle libcbor.so.0.8:cbor_array_is_definite libcbor.so.0.8:cbor_array_push +libcbor.so.0.8:cbor_array_replace libcbor.so.0.8:cbor_array_size libcbor.so.0.8:cbor_build_bool libcbor.so.0.8:cbor_build_bytestring libcbor.so.0.8:cbor_build_negint16 libcbor.so.0.8:cbor_build_negint8 libcbor.so.0.8:cbor_build_string +libcbor.so.0.8:cbor_build_uint16 libcbor.so.0.8:cbor_build_uint32 +libcbor.so.0.8:cbor_build_uint64 libcbor.so.0.8:cbor_build_uint8 libcbor.so.0.8:cbor_bytestring_handle libcbor.so.0.8:cbor_bytestring_is_definite @@ -90,6 +105,7 @@ libcbor.so.0.8:cbor_new_definite_array libcbor.so.0.8:cbor_new_definite_bytestring libcbor.so.0.8:cbor_new_definite_map +libcbor.so.0.8:cbor_serialize libcbor.so.0.8:cbor_serialize_alloc libcbor.so.0.8:cbor_string_handle libcbor.so.0.8:cbor_string_is_definite @@ -115,7 +131,8 @@ libcrypto.so.1.1:BN_free libcrypto.so.1.1:BN_new libcrypto.so.1.1:BN_num_bits -libcrypto.so.1.1:ECDSA_verify +libcrypto.so.1.1:EC_GROUP_free +libcrypto.so.1.1:EC_GROUP_new_by_curve_name libcrypto.so.1.1:EC_KEY_free libcrypto.so.1.1:EC_KEY_get0_group libcrypto.so.1.1:EC_KEY_get0_private_key @@ -125,31 +142,36 @@ libcrypto.so.1.1:EC_KEY_set_public_key libcrypto.so.1.1:EC_POINT_free libcrypto.so.1.1:EC_POINT_get_affine_coordinates_GFp +libcrypto.so.1.1:EC_POINT_is_on_curve libcrypto.so.1.1:EC_POINT_mul libcrypto.so.1.1:EC_POINT_new libcrypto.so.1.1:EC_POINT_set_affine_coordinates_GFp +libcrypto.so.1.1:EVP_CIPHER_CTX_ctrl libcrypto.so.1.1:EVP_CIPHER_CTX_free libcrypto.so.1.1:EVP_CIPHER_CTX_new -libcrypto.so.1.1:EVP_CIPHER_CTX_set_padding -libcrypto.so.1.1:EVP_DecryptInit_ex -libcrypto.so.1.1:EVP_DecryptUpdate +libcrypto.so.1.1:EVP_Cipher +libcrypto.so.1.1:EVP_CipherInit +libcrypto.so.1.1:EVP_DigestFinal_ex +libcrypto.so.1.1:EVP_DigestInit_ex +libcrypto.so.1.1:EVP_DigestUpdate libcrypto.so.1.1:EVP_DigestVerify libcrypto.so.1.1:EVP_DigestVerifyInit -libcrypto.so.1.1:EVP_EncryptInit_ex -libcrypto.so.1.1:EVP_EncryptUpdate libcrypto.so.1.1:EVP_MD_CTX_free libcrypto.so.1.1:EVP_MD_CTX_new +libcrypto.so.1.1:EVP_MD_meth_dup +libcrypto.so.1.1:EVP_MD_meth_free libcrypto.so.1.1:EVP_PKEY_CTX_ctrl libcrypto.so.1.1:EVP_PKEY_CTX_free libcrypto.so.1.1:EVP_PKEY_CTX_new libcrypto.so.1.1:EVP_PKEY_CTX_new_id libcrypto.so.1.1:EVP_PKEY_assign +libcrypto.so.1.1:EVP_PKEY_base_id libcrypto.so.1.1:EVP_PKEY_derive libcrypto.so.1.1:EVP_PKEY_derive_init libcrypto.so.1.1:EVP_PKEY_derive_set_peer libcrypto.so.1.1:EVP_PKEY_free +libcrypto.so.1.1:EVP_PKEY_get0 libcrypto.so.1.1:EVP_PKEY_get0_EC_KEY -libcrypto.so.1.1:EVP_PKEY_get0_RSA libcrypto.so.1.1:EVP_PKEY_get1_EC_KEY libcrypto.so.1.1:EVP_PKEY_get1_RSA libcrypto.so.1.1:EVP_PKEY_get_raw_public_key @@ -159,7 +181,11 @@ libcrypto.so.1.1:EVP_PKEY_new_raw_public_key libcrypto.so.1.1:EVP_PKEY_paramgen libcrypto.so.1.1:EVP_PKEY_paramgen_init +libcrypto.so.1.1:EVP_PKEY_verify +libcrypto.so.1.1:EVP_PKEY_verify_init libcrypto.so.1.1:EVP_aes_256_cbc +libcrypto.so.1.1:EVP_aes_256_gcm +libcrypto.so.1.1:EVP_sha1 libcrypto.so.1.1:EVP_sha256 libcrypto.so.1.1:HMAC libcrypto.so.1.1:HMAC_CTX_free @@ -173,12 +199,10 @@ libcrypto.so.1.1:RSA_free libcrypto.so.1.1:RSA_get0_key libcrypto.so.1.1:RSA_new +libcrypto.so.1.1:RSA_pkey_ctx_ctrl libcrypto.so.1.1:RSA_set0_key -libcrypto.so.1.1:RSA_verify +libcrypto.so.1.1:SHA1 libcrypto.so.1.1:SHA256 -libcrypto.so.1.1:SHA256_Final -libcrypto.so.1.1:SHA256_Init -libcrypto.so.1.1:SHA256_Update libcrypto.so.1.1:X509_free libcrypto.so.1.1:X509_get_pubkey libcrypto.so.1.1:d2i_X509 @@ -186,6 +210,7 @@ libudev.so.1:udev_device_get_devnode libudev.so.1:udev_device_get_parent_with_subsystem_devtype libudev.so.1:udev_device_get_sysattr_value +libudev.so.1:udev_device_get_sysnum libudev.so.1:udev_device_new_from_syspath libudev.so.1:udev_device_unref libudev.so.1:udev_enumerate_add_match_subsystem @@ -197,3 +222,10 @@ libudev.so.1:udev_list_entry_get_next libudev.so.1:udev_new libudev.so.1:udev_unref +libz.so.1:deflate +libz.so.1:deflateEnd +libz.so.1:deflateInit2_ +libz.so.1:inflate +libz.so.1:inflateEnd +libz.so.1:inflateInit2_ +libz.so.1:uncompress diff --git a/files/0001-Remove-building-of-static-library-and-examples.patch b/files/0001-Remove-building-of-static-library-and-examples.patch deleted file mode 100644 --- a/files/0001-Remove-building-of-static-library-and-examples.patch +++ /dev/null @@ -1,54 +0,0 @@ -From d8f8e8aac6b8cae7d5242bbe5d4f008438d8a0a1 Mon Sep 17 00:00:00 2001 -From: Silke Hofstra -Date: Wed, 30 Sep 2020 20:36:23 +0200 -Subject: [PATCH] Remove building of static library and examples - ---- - CMakeLists.txt | 1 - - src/CMakeLists.txt | 18 ------------------ - 2 files changed, 19 deletions(-) - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index dbd5fa5..f7ccbc9 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -400,7 +400,6 @@ message(STATUS "UDEV_RULES_DIR: ${UDEV_RULES_DIR}") - message(STATUS "USE_HIDAPI: ${USE_HIDAPI}") - - subdirs(src) --subdirs(examples) - subdirs(tools) - subdirs(man) - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index d213abe..3c0079d 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -65,24 +65,6 @@ list(APPEND COMPAT_SOURCES - ../openbsd-compat/timingsafe_bcmp.c - ) - --# static library --add_library(fido2 STATIC ${FIDO_SOURCES} ${COMPAT_SOURCES}) --target_link_libraries(fido2 ${CBOR_LIBRARIES} ${CRYPTO_LIBRARIES} -- ${UDEV_LIBRARIES} ${BASE_LIBRARIES} ${HIDAPI_LIBRARIES}) --if(WIN32) -- if (MINGW) -- target_link_libraries(fido2 wsock32 ws2_32 bcrypt setupapi hid) -- else() -- target_link_libraries(fido2 wsock32 ws2_32 bcrypt SetupAPI hid) -- set_target_properties(fido2 PROPERTIES OUTPUT_NAME fido2_static) -- endif() --elseif(APPLE) -- target_link_libraries(fido2 "-framework CoreFoundation" -- "-framework IOKit") --endif() --install(TARGETS fido2 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} -- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}) -- - # dynamic library - add_library(fido2_shared SHARED ${FIDO_SOURCES} ${COMPAT_SOURCES}) - target_link_libraries(fido2_shared ${CBOR_LIBRARIES} ${CRYPTO_LIBRARIES} --- -2.28.0 - diff --git a/files/0001-regress-link-against-chosen-library.patch b/files/0001-regress-link-against-chosen-library.patch new file mode 100644 --- /dev/null +++ b/files/0001-regress-link-against-chosen-library.patch @@ -0,0 +1,27 @@ +From 11a69005edc33dee6338b4ee47d102f1f564a6f2 Mon Sep 17 00:00:00 2001 +From: Silke Hofstra +Date: Fri, 6 May 2022 15:36:02 +0200 +Subject: [PATCH 1/2] regress: link against chosen library + +Compile `regress` against `${_FIDO2_LIBRARY}` so it links against +the shared library when building with `BUILD_STATIC_LIBS=OFF`. +--- + regress/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/regress/CMakeLists.txt b/regress/CMakeLists.txt +index 87482ef..77b7c51 100644 +--- a/regress/CMakeLists.txt ++++ b/regress/CMakeLists.txt +@@ -6,7 +6,7 @@ add_custom_target(regress) + + macro(add_regress_test NAME SOURCES) + add_executable(${NAME} ${SOURCES}) +- target_link_libraries(${NAME} fido2) ++ target_link_libraries(${NAME} ${_FIDO2_LIBRARY}) + add_test(${NAME} ${NAME}) + add_dependencies(regress ${NAME}) + endmacro() +-- +2.35.3 + diff --git a/files/0002-regress-export-required-symbols-for-compression-test.patch b/files/0002-regress-export-required-symbols-for-compression-test.patch new file mode 100644 --- /dev/null +++ b/files/0002-regress-export-required-symbols-for-compression-test.patch @@ -0,0 +1,58 @@ +From fc2eb1a484341fdcc42e0dacf4ec770fbc01092a Mon Sep 17 00:00:00 2001 +From: Silke Hofstra +Date: Fri, 6 May 2022 16:16:03 +0200 +Subject: [PATCH 2/2] regress: export required symbols for compression test + +Export the `fido_compress`, `fido_uncompress` and `fido_sha256` symbols +that are needed for the regression tests. +--- + src/export.gnu | 3 +++ + src/export.llvm | 3 +++ + src/export.msvc | 3 +++ + 3 files changed, 9 insertions(+) + +diff --git a/src/export.gnu b/src/export.gnu +index 8fc94af..ca4b925 100644 +--- a/src/export.gnu ++++ b/src/export.gnu +@@ -237,6 +237,9 @@ + fido_init; + fido_set_log_handler; + fido_strerr; ++ fido_compress; ++ fido_uncompress; ++ fido_sha256; + rs256_pk_free; + rs256_pk_from_ptr; + rs256_pk_from_EVP_PKEY; +diff --git a/src/export.llvm b/src/export.llvm +index df9a667..7df941e 100644 +--- a/src/export.llvm ++++ b/src/export.llvm +@@ -235,6 +235,9 @@ _fido_dev_largeblob_set_array + _fido_init + _fido_set_log_handler + _fido_strerr ++_fido_compress ++_fido_uncompress ++_fido_sha256 + _rs256_pk_free + _rs256_pk_from_ptr + _rs256_pk_from_EVP_PKEY +diff --git a/src/export.msvc b/src/export.msvc +index a908215..9a86034 100644 +--- a/src/export.msvc ++++ b/src/export.msvc +@@ -236,6 +236,9 @@ fido_dev_largeblob_set_array + fido_init + fido_set_log_handler + fido_strerr ++fido_compress ++fido_uncompress ++fido_sha256 + rs256_pk_free + rs256_pk_from_ptr + rs256_pk_from_EVP_PKEY +-- +2.35.3 + diff --git a/files/series b/files/series new file mode 100644 --- /dev/null +++ b/files/series @@ -0,0 +1,2 @@ +0001-regress-link-against-chosen-library.patch +0002-regress-export-required-symbols-for-compression-test.patch diff --git a/package.yml b/package.yml --- a/package.yml +++ b/package.yml @@ -1,8 +1,8 @@ name : libfido2 -version : 1.5.0 -release : 1 +version : 1.11.0 +release : 2 source : - - https://github.com/Yubico/libfido2/archive/1.5.0.tar.gz : 5990f923c9390fe1e6a00ba5d1d1f74030e7344b855e971d9fb7223e70ff3122 + - https://github.com/Yubico/libfido2/archive/refs/tags/1.11.0.tar.gz : 0830c5853e3b44099a97166e0cec54a65b54b7faaac07071872f77b8e4d7b302 license : BSD-2-Clause component : security.library summary : Library functionality for FIDO 2.0 @@ -11,15 +11,16 @@ libfido2 supports the FIDO U2F (CTAP 1) and FIDO 2.0 (CTAP 2) protocols. builddeps : - pkgconfig(libcbor) + - pkgconfig(libpcsclite) patterns : - devel: - /usr/share/man/man3 setup : | - # Remove building of static library and examples - patch -p1 < $pkgfiles/0001-Remove-building-of-static-library-and-examples.patch - - %cmake_ninja + %apply_patches + %cmake_ninja -DBUILD_STATIC_LIBS=OFF -DBUILD_EXAMPLES=OFF build : | %ninja_build install : | %ninja_install +check : | + %ninja_check diff --git a/pspec_x86_64.xml b/pspec_x86_64.xml --- a/pspec_x86_64.xml +++ b/pspec_x86_64.xml @@ -25,7 +25,7 @@ /usr/bin/fido2-cred /usr/bin/fido2-token /usr/lib64/libfido2.so.1 - /usr/lib64/libfido2.so.1.5.0 + /usr/lib64/libfido2.so.1.11.0 /usr/share/man/man1/fido2-assert.1.gz /usr/share/man/man1/fido2-cred.1.gz /usr/share/man/man1/fido2-token.1.gz @@ -39,11 +39,12 @@ programming.devel - libfido2 + libfido2 /usr/include/fido.h /usr/include/fido/bio.h + /usr/include/fido/config.h /usr/include/fido/credman.h /usr/include/fido/eddsa.h /usr/include/fido/err.h @@ -54,17 +55,21 @@ /usr/lib64/libfido2.so /usr/lib64/pkgconfig/libfido2.pc /usr/share/man/man3/eddsa_pk_free.3.gz + /usr/share/man/man3/eddsa_pk_from_EVP_PKEY.3.gz /usr/share/man/man3/eddsa_pk_from_ptr.3.gz /usr/share/man/man3/eddsa_pk_new.3.gz /usr/share/man/man3/eddsa_pk_to_EVP_PKEY.3.gz /usr/share/man/man3/es256_pk_free.3.gz /usr/share/man/man3/es256_pk_from_EC_KEY.3.gz + /usr/share/man/man3/es256_pk_from_EVP_PKEY.3.gz /usr/share/man/man3/es256_pk_from_ptr.3.gz /usr/share/man/man3/es256_pk_new.3.gz /usr/share/man/man3/es256_pk_to_EVP_PKEY.3.gz /usr/share/man/man3/fido_assert_allow_cred.3.gz /usr/share/man/man3/fido_assert_authdata_len.3.gz /usr/share/man/man3/fido_assert_authdata_ptr.3.gz + /usr/share/man/man3/fido_assert_blob_len.3.gz + /usr/share/man/man3/fido_assert_blob_ptr.3.gz /usr/share/man/man3/fido_assert_clientdata_hash_len.3.gz /usr/share/man/man3/fido_assert_clientdata_hash_ptr.3.gz /usr/share/man/man3/fido_assert_count.3.gz @@ -74,13 +79,18 @@ /usr/share/man/man3/fido_assert_hmac_secret_ptr.3.gz /usr/share/man/man3/fido_assert_id_len.3.gz /usr/share/man/man3/fido_assert_id_ptr.3.gz + /usr/share/man/man3/fido_assert_largeblob_key_len.3.gz + /usr/share/man/man3/fido_assert_largeblob_key_ptr.3.gz /usr/share/man/man3/fido_assert_new.3.gz /usr/share/man/man3/fido_assert_rp_id.3.gz /usr/share/man/man3/fido_assert_set_authdata.3.gz + /usr/share/man/man3/fido_assert_set_authdata_raw.3.gz + /usr/share/man/man3/fido_assert_set_clientdata.3.gz /usr/share/man/man3/fido_assert_set_clientdata_hash.3.gz /usr/share/man/man3/fido_assert_set_count.3.gz /usr/share/man/man3/fido_assert_set_extensions.3.gz /usr/share/man/man3/fido_assert_set_hmac_salt.3.gz + /usr/share/man/man3/fido_assert_set_hmac_secret.3.gz /usr/share/man/man3/fido_assert_set_rp.3.gz /usr/share/man/man3/fido_assert_set_sig.3.gz /usr/share/man/man3/fido_assert_set_up.3.gz @@ -122,12 +132,17 @@ /usr/share/man/man3/fido_bio_template_set_name.3.gz /usr/share/man/man3/fido_cbor_info_aaguid_len.3.gz /usr/share/man/man3/fido_cbor_info_aaguid_ptr.3.gz + /usr/share/man/man3/fido_cbor_info_algorithm_cose.3.gz + /usr/share/man/man3/fido_cbor_info_algorithm_count.3.gz + /usr/share/man/man3/fido_cbor_info_algorithm_type.3.gz /usr/share/man/man3/fido_cbor_info_extensions_len.3.gz /usr/share/man/man3/fido_cbor_info_extensions_ptr.3.gz /usr/share/man/man3/fido_cbor_info_free.3.gz /usr/share/man/man3/fido_cbor_info_fwversion.3.gz + /usr/share/man/man3/fido_cbor_info_maxcredbloblen.3.gz /usr/share/man/man3/fido_cbor_info_maxcredcntlst.3.gz /usr/share/man/man3/fido_cbor_info_maxcredidlen.3.gz + /usr/share/man/man3/fido_cbor_info_maxlargeblob.3.gz /usr/share/man/man3/fido_cbor_info_maxmsgsiz.3.gz /usr/share/man/man3/fido_cbor_info_new.3.gz /usr/share/man/man3/fido_cbor_info_options_len.3.gz @@ -135,12 +150,18 @@ /usr/share/man/man3/fido_cbor_info_options_value_ptr.3.gz /usr/share/man/man3/fido_cbor_info_protocols_len.3.gz /usr/share/man/man3/fido_cbor_info_protocols_ptr.3.gz + /usr/share/man/man3/fido_cbor_info_transports_len.3.gz + /usr/share/man/man3/fido_cbor_info_transports_ptr.3.gz /usr/share/man/man3/fido_cbor_info_versions_len.3.gz /usr/share/man/man3/fido_cbor_info_versions_ptr.3.gz /usr/share/man/man3/fido_cred_aaguid_len.3.gz /usr/share/man/man3/fido_cred_aaguid_ptr.3.gz + /usr/share/man/man3/fido_cred_attstmt_len.3.gz + /usr/share/man/man3/fido_cred_attstmt_ptr.3.gz /usr/share/man/man3/fido_cred_authdata_len.3.gz /usr/share/man/man3/fido_cred_authdata_ptr.3.gz + /usr/share/man/man3/fido_cred_authdata_raw_len.3.gz + /usr/share/man/man3/fido_cred_authdata_raw_ptr.3.gz /usr/share/man/man3/fido_cred_clientdata_hash_len.3.gz /usr/share/man/man3/fido_cred_clientdata_hash_ptr.3.gz /usr/share/man/man3/fido_cred_display_name.3.gz @@ -150,17 +171,25 @@ /usr/share/man/man3/fido_cred_free.3.gz /usr/share/man/man3/fido_cred_id_len.3.gz /usr/share/man/man3/fido_cred_id_ptr.3.gz + /usr/share/man/man3/fido_cred_largeblob_key_len.3.gz + /usr/share/man/man3/fido_cred_largeblob_key_ptr.3.gz /usr/share/man/man3/fido_cred_new.3.gz + /usr/share/man/man3/fido_cred_pin_minlen.3.gz /usr/share/man/man3/fido_cred_prot.3.gz /usr/share/man/man3/fido_cred_pubkey_len.3.gz /usr/share/man/man3/fido_cred_pubkey_ptr.3.gz /usr/share/man/man3/fido_cred_rp_id.3.gz /usr/share/man/man3/fido_cred_rp_name.3.gz + /usr/share/man/man3/fido_cred_set_attstmt.3.gz /usr/share/man/man3/fido_cred_set_authdata.3.gz /usr/share/man/man3/fido_cred_set_authdata_raw.3.gz + /usr/share/man/man3/fido_cred_set_blob.3.gz + /usr/share/man/man3/fido_cred_set_clientdata.3.gz /usr/share/man/man3/fido_cred_set_clientdata_hash.3.gz /usr/share/man/man3/fido_cred_set_extensions.3.gz /usr/share/man/man3/fido_cred_set_fmt.3.gz + /usr/share/man/man3/fido_cred_set_id.3.gz + /usr/share/man/man3/fido_cred_set_pin_minlen.3.gz /usr/share/man/man3/fido_cred_set_prot.3.gz /usr/share/man/man3/fido_cred_set_rk.3.gz /usr/share/man/man3/fido_cred_set_rp.3.gz @@ -171,11 +200,13 @@ /usr/share/man/man3/fido_cred_set_x509.3.gz /usr/share/man/man3/fido_cred_sig_len.3.gz /usr/share/man/man3/fido_cred_sig_ptr.3.gz + /usr/share/man/man3/fido_cred_sigcount.3.gz /usr/share/man/man3/fido_cred_type.3.gz /usr/share/man/man3/fido_cred_user_id_len.3.gz /usr/share/man/man3/fido_cred_user_id_ptr.3.gz /usr/share/man/man3/fido_cred_user_name.3.gz /usr/share/man/man3/fido_cred_verify.3.gz + /usr/share/man/man3/fido_cred_verify_self.3.gz /usr/share/man/man3/fido_cred_x5c_len.3.gz /usr/share/man/man3/fido_cred_x5c_ptr.3.gz /usr/share/man/man3/fido_credman_del_dev_rk.3.gz @@ -197,17 +228,24 @@ /usr/share/man/man3/fido_credman_rp_id_hash_ptr.3.gz /usr/share/man/man3/fido_credman_rp_name.3.gz /usr/share/man/man3/fido_credman_rp_new.3.gz + /usr/share/man/man3/fido_credman_set_dev_rk.3.gz /usr/share/man/man3/fido_dev_build.3.gz /usr/share/man/man3/fido_dev_cancel.3.gz /usr/share/man/man3/fido_dev_close.3.gz + /usr/share/man/man3/fido_dev_enable_entattest.3.gz /usr/share/man/man3/fido_dev_flags.3.gz /usr/share/man/man3/fido_dev_force_fido2.3.gz + /usr/share/man/man3/fido_dev_force_pin_change.3.gz /usr/share/man/man3/fido_dev_force_u2f.3.gz /usr/share/man/man3/fido_dev_free.3.gz /usr/share/man/man3/fido_dev_get_assert.3.gz /usr/share/man/man3/fido_dev_get_cbor_info.3.gz /usr/share/man/man3/fido_dev_get_retry_count.3.gz /usr/share/man/man3/fido_dev_get_touch_begin.3.gz + /usr/share/man/man3/fido_dev_get_touch_status.3.gz + /usr/share/man/man3/fido_dev_get_uv_retry_count.3.gz + /usr/share/man/man3/fido_dev_has_pin.3.gz + /usr/share/man/man3/fido_dev_has_uv.3.gz /usr/share/man/man3/fido_dev_info_free.3.gz /usr/share/man/man3/fido_dev_info_manifest.3.gz /usr/share/man/man3/fido_dev_info_manufacturer_string.3.gz @@ -216,22 +254,43 @@ /usr/share/man/man3/fido_dev_info_product.3.gz /usr/share/man/man3/fido_dev_info_product_string.3.gz /usr/share/man/man3/fido_dev_info_ptr.3.gz + /usr/share/man/man3/fido_dev_info_set.3.gz /usr/share/man/man3/fido_dev_info_vendor.3.gz + /usr/share/man/man3/fido_dev_io_handle.3.gz /usr/share/man/man3/fido_dev_is_fido2.3.gz + /usr/share/man/man3/fido_dev_is_winhello.3.gz + /usr/share/man/man3/fido_dev_largeblob_get.3.gz + /usr/share/man/man3/fido_dev_largeblob_get_array.3.gz + /usr/share/man/man3/fido_dev_largeblob_remove.3.gz + /usr/share/man/man3/fido_dev_largeblob_set.3.gz + /usr/share/man/man3/fido_dev_largeblob_set_array.3.gz /usr/share/man/man3/fido_dev_major.3.gz /usr/share/man/man3/fido_dev_make_cred.3.gz /usr/share/man/man3/fido_dev_minor.3.gz /usr/share/man/man3/fido_dev_new.3.gz + /usr/share/man/man3/fido_dev_new_with_info.3.gz /usr/share/man/man3/fido_dev_open.3.gz + /usr/share/man/man3/fido_dev_open_with_info.3.gz /usr/share/man/man3/fido_dev_protocol.3.gz /usr/share/man/man3/fido_dev_reset.3.gz /usr/share/man/man3/fido_dev_set_io_functions.3.gz /usr/share/man/man3/fido_dev_set_pin.3.gz + /usr/share/man/man3/fido_dev_set_pin_minlen.3.gz + /usr/share/man/man3/fido_dev_set_pin_minlen_rpid.3.gz + /usr/share/man/man3/fido_dev_set_sigmask.3.gz + /usr/share/man/man3/fido_dev_set_timeout.3.gz + /usr/share/man/man3/fido_dev_set_transport_functions.3.gz /usr/share/man/man3/fido_dev_supports_cred_prot.3.gz + /usr/share/man/man3/fido_dev_supports_credman.3.gz + /usr/share/man/man3/fido_dev_supports_permissions.3.gz /usr/share/man/man3/fido_dev_supports_pin.3.gz + /usr/share/man/man3/fido_dev_supports_uv.3.gz + /usr/share/man/man3/fido_dev_toggle_always_uv.3.gz /usr/share/man/man3/fido_init.3.gz + /usr/share/man/man3/fido_set_log_handler.3.gz /usr/share/man/man3/fido_strerr.3.gz /usr/share/man/man3/rs256_pk_free.3.gz + /usr/share/man/man3/rs256_pk_from_EVP_PKEY.3.gz /usr/share/man/man3/rs256_pk_from_RSA.3.gz /usr/share/man/man3/rs256_pk_from_ptr.3.gz /usr/share/man/man3/rs256_pk_new.3.gz @@ -239,12 +298,12 @@ - - 2020-09-30 - 1.5.0 + + 2022-05-06 + 1.11.0 Packaging update Silke Hofstra silke@slxh.eu \ No newline at end of file