Just ignoring the public keys for now, only included those where we also have the private key.
Squashed everything, polished comments and usage
output, rebased to firmware-utils
master, pushed as separate branch. Cloned once again to /tmp folder just to make sure it all builds and works perfectly:
git clone https://github.com/s-2/firmware-utils.git
cd firmware-utils
git checkout dlink-sge-image_2k23
cmake .
make dlink-sge-image
no errors, no warnings, everything's looking fine.
Tried to edit tools/firmware-utils/Makefile
to include the hash and remote repo, building openwrt, and guess what - it fails:
.../firmware-utils-2023-06-20-a6cd8ce0/src/dlink-sge-image.c:87:18: warning: implicit declaration of function 'EVP_MD_fetch'; did you mean 'EVP_MD_flags'?
.../firmware-utils-2023-06-20-a6cd8ce0/src/dlink-sge-image.c:100:9: warning: implicit declaration of function 'EVP_EncryptInit_ex2'; did you mean 'EVP_EncryptInit_ex'?
.../firmware-utils-2023-06-20-a6cd8ce0/src/dlink-sge-image.c:262:9: warning: implicit declaration of function 'EVP_DecryptInit_ex2'; did you mean 'EVP_DecryptInit_ex'?
.../firmware-utils-2023-06-20-a6cd8ce0/src/dlink-sge-image.c:455:18: warning: implicit declaration of function 'EVP_CIPHER_fetch'; did you mean 'EVP_CIPHER_flags'?
and a few more warnings regarding pointer types as a result (since the function declarations were not found at all), finally the linker failing to find the source of these functions will stop the build.
Great, so I've spent several days migrating this old thing to current OpenSSL, to get rid of all the deprecation warnings, now I shall backport it again to something in between, since what my host uses to build firmware-utils
as a standalone package is apparently too new again?
I'm done working on this for today, maybe by the end of the week...