Opened 5 months ago

Closed 5 months ago

Last modified 5 months ago

#70256 closed defect (duplicate)

libfido2 @1.14.0: error: use of undeclared identifier 'id'

Reported by: dazuelos (dan) Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: Cc: trodemaster (Blake Garner), dazuelos (dan)
Port: libfido2

Description (last modified by dazuelos (dan))

Hello,

I am running macOS 10.10.5 + Xcode 7.2 + Command Line Tools 7.2.

After a:

port -d selfupdate
port -c -u upgrade outdated

which exited on error on libfido2, I ran:

port -c -u clean libfido2
port -c -u install fido2

I got an error during the build phase. Looking at the log file, I went to the problem directory manually:

cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/build

and ran manually the mono-threaded make:

make -j1 -w all VERBOSE=ON

Which produced the following tail of log:

[...]
cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/build/src && /usr/bin/clang -DHAVE_ARC4RANDOM_BUF -DHAVE_ASPRINTF -DHAVE_CBOR_H -DHAVE_CLOCK_GETTIME -DHAVE_DEV_URANDOM -DHAVE_ERR_H -DHAVE_GETLINE -DHAVE_GETOPT -DHAVE_MEMSET_S -DHAVE_OPENSSLV_H -DHAVE_READPASSPHRASE -DHAVE_SIGNAL_H -DHAVE_STRLCAT -DHAVE_STRLCPY -DHAVE_STRSEP -DHAVE_SYSCONF -DHAVE_UNISTD_H -DOPENSSL_API_COMPAT=0x10100000L -DTLS=__thread -D_FIDO_INTERNAL -D_FIDO_MAJOR=1 -D_FIDO_MINOR=14 -D_FIDO_PATCH=0 -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/libfido2-1.14.0/src -I/opt/local/include -I/opt/local/libexec/openssl3/include -D_POSIX_C_SOURCE=200809L -D_BSD_SOURCE -D_DARWIN_C_SOURCE -D__STDC_WANT_LIB_EXT1__=1 -std=c99 -pipe -I/opt/local/libexec/openssl3/include -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/libexec/openssl3/include -isystem/opt/local/include -arch x86_64 -mmacosx-version-min=10.10 -fPIC -Wall -Wextra -Werror -Wshadow -Wcast-qual -Wwrite-strings -Wmissing-prototypes -Wbad-function-cast -Wimplicit-fallthrough -pedantic -pedantic-errors -Wshorten-64-to-32 -fstack-protector-all -Wconversion -Wsign-conversion -Wframe-larger-than=2047 -MD -MT src/CMakeFiles/fido2.dir/hid_osx.c.o -MF CMakeFiles/fido2.dir/hid_osx.c.o.d -o CMakeFiles/fido2.dir/hid_osx.c.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/libfido2-1.14.0/src/hid_osx.c
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/libfido2-1.14.0/src/hid_osx.c:189:59: error: 
      use of undeclared identifier 'id'
        if (asprintf(&path, "%s%llu", IOREG, (unsigned long long)id) == -1) {
                                                                 ^
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/libfido2-1.14.0/src/hid_osx.c:195:10: error: 
      address of stack memory associated with local variable 'path' returned [-Werror,-Wreturn-stack-address]
        return (path);
                ^~~~
2 errors generated.
make[2]: *** [src/CMakeFiles/fido2.dir/hid_osx.c.o] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/build'
make[1]: *** [src/CMakeFiles/fido2.dir/all] Error 2
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/build'
make: *** [all] Error 2
make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_security_libfido2/libfido2/work/build'

This look like very similar to ticket:

#68333 assigned defect 

I don't need libfido2 since I don't use Yubikey, but this library seems to be required by a lot of security tools I am using. ( squid3, postfix servers in production env. from MacPorts + research firewall based on PF + zsh + Perl ). I an a terminal ( xterm ), admin & security only user.

How may I help to further investigate this problem?

Change History (3)

comment:1 Changed 5 months ago by dazuelos (dan)

Cc: dazuelos added
Description: modified (diff)

comment:2 Changed 5 months ago by ryandesign (Ryan Carsten Schmidt)

Keywords: undeclared identifier removed
Resolution: duplicate
Status: newclosed
Summary: libfido2@1.14.0 build errorlibfido2 @1.14.0: error: use of undeclared identifier 'id'

As I said in comment:ticket:68333:3, the problem is caused by a patch someone added to the port. The patch needs to be fixed or removed. Duplicate of #68333.

comment:3 Changed 5 months ago by dazuelos (dan)

Thank you Ryan.

I added this ticket since the #68333 was about libfido2@1.13.0.

And I wasn't able to analyze and transpose your whole discussion to version @1.14.0.

Best regards.

Note: See TracTickets for help on using tickets.