Talk:Foobot

From Free Pascal wiki
Jump to navigationJump to search

I tried to install foobot and foobot initializer on Windows 11 machines. In all cases both programs threw the "Could not initialize OpenSQL library" error. It took a great deal of digging but it turns out that this error comes from code created by the Free Pascal Compiler. The compiler code tries to find the various versions of the OpenSQL library but the Foobot programs must have been compiled by a version of the compiler that did not know about any version of the OpenSQL library after version 1.0.2, so this is the version to install on Windows. However, the Foobot code creates directories that contain two OpenSQL libraries, libeay32.dll and ssleay32.dll, but these cannot be accessed by the compiler generated code. Also, the OpenSQL developers changed the dll file names in the FIPS versions, so avoid these. On Windows you must add two global environment variables and make an addition to the global environment PATH variable. Instructions for installing the OpenSQL library for Windows are on https://www.stechies.com/installing-openssl-windows-10-11/ as well as other sites. Assuming you have installed version 1.2.0, t or later release, there is still work to do. You must pull a version of the opensql.cfg file from a 1.0.2 fips release, edit it if you like (not needed) and place it in the OpenSQL folder. You must change the permissions on the OpenSQL library to give normal users full control permissions and be sure to check the box to propagate the permissions to all files in the OpenSQL top folder. When you create the CONFIG_CFG environment variable be sure it contains the full path to the opensql.cfg file itself.

I then ran the foobot installation .exe using the as administrator option. The program ran on Windows 11. I have no idea what step or series of steps in this recipe solved the root problem, but the program is finally working.

I assume your references to OpenSQL should be to OpenSSL. This being the case, the advice to install OpenSSL v1.0.2 is plainly irresponsible. As at October 2023, the latest OpenSSL stable version is the 3.0 series which is supported until 7th September 2026. This is also a Long Term Support (LTS) version. All older OpenSSL versions (including 1.1.0, 1.0.2, 1.0.0, 0.9.8 and 0.9.7) have been out of support for much longer, contain multiple security vulnerabilities and should not be used if you value security and your reputation. Trev (talk) 12:50, 2 October 2023 (CEST)