Michael Tremer wrote:
This probably requires some more debugging and log output.
You can set LOC_LOG=7 as an environment variable and then run test/test-country.
With this, test-country only reports an extra: libloc: loc_new: ctx 05021298 created
But with '-DENABLE_DEBUG' there's way too much trace to be useful.
I pulled the database last week because we had some issue with some data in it that triggered some bugs.
You can download it from the archive still until the updater works again:
https://location.ipfire.org/databases/1/archive/location-2020-10-16.db.xz
Yes, I assumed so. There are some tools that use but they might potentially just bundle it with their own software which I want to avoid.
It probably is possible to #ifdef the Windows crypto library here and check the signature that way. But since I have never worked with it, I do not know how to do that. Mac OS X has the same issue.
An issue with OpenSSL and 'loc_database_verify()'?
Have you ever worked with it?
Yes, but 'test-signature' works fine. It's just when calling 'EVP_VerifyXX()' functions from a .dll (like a Python module), it fails with 'no OPENSSL_AppLink". Ref:
https://stackoverflow.com/questions/38933943/openssl-code-works-natively-but...
With your URL above, set loc_log=7 & py -3 location.py --database location-2020-10-16.db verify:
libloc: loc_new: ctx 0FDACEE8 created libloc: loc_database_read_as_section_v1: Read 48148 ASes from the database libloc: loc_database_read_network_nodes_section_v1: Read 2628939 network nodes from the database libloc: loc_database_read_networks_section_v1: Read 1318972 networks from the database libloc: loc_database_read_countries_section_v1: Read 253 countries from the database libloc: loc_database_read: Opened database in 16.0000ms libloc: loc_database_read_as_section_v1: Read 48148 ASes from the database libloc: loc_database_read_network_nodes_section_v1: Read 2628939 network nodes from the database libloc: loc_database_read_networks_section_v1: Read 1318972 networks from the database libloc: loc_database_read_countries_section_v1: Read 253 countries from the database libloc: loc_database_read: Opened database in 27.0000ms OPENSSL_Uplink(640BC6B0,08): no OPENSSL_Applink
BUT, with 'location-2020-05-15.db', there is this error:
libloc: loc_new: ctx 0FA35190 created libloc: loc_database_read_header: Incompatible database version: 0 Traceback (most recent call last): File "F:\gv\VC_project\ws_trace\src\Geo-IP\IPFire\libloc\src\py3_install\location.py", line 618, in <module> main() File "F:\gv\VC_project\ws_trace\src\Geo-IP\IPFire\libloc\src\py3_install\location.py", line 616, in main c.run() File "F:\gv\VC_project\ws_trace\src\Geo-IP\IPFire\libloc\src\py3_install\location.py", line 200, in run db = location.Database(args.database) SystemError: <class 'location.Database'> returned NULL without setting an error libloc: loc_unref: context 0FA35190 released
----
Check yourself if the 'location-2020-05-15.db.xz' is still in the archive.