Good day! I have noticed that the firmware utils ( libreCMC/trunk/tools/firmware-utils ) are outdated by about half year, if compared to OpenWRT repository. A personal problem for me here, is that your outdated version of mktplinkfw.c does not show the amount of exceeding bytes, when your produced tplink firmware image is too large - which makes it very difficult to put as much great stuff as possible at those tiny 4MB...
So, I spent a lot of time to carefully check all the differences of firmware-utils between the latest revision of two repositories - libreCMC and OpenWRT - and then I carefully updated libreCMC tools to the latest OpenWRT version, while preserving your OpenWRT ---> libreCMC changes in code comments and some messages (but I reverted it to OpenWRT for the e-mail addresses of original OpenWRT committers, because the "librecmc" e-mail addresses are not valid for them) I just made a push to libreCMC repository. Please review it. (also, it could be a good idea to carefully make a similar thing for other outdated code, because a newer version of it could contain the valuable bug fixes... ) The full list of changes between outdated and updated versions of firmware-utils, could be seen below (just for the reference, and you could also check OpenWRT repo for more information) : *** Makefile *** added call for mkmerakifw: firmware generator for MR18 This patch adds firmware generation tool for Cisco's MR18 *** airlink.c *** fix compiler warnings %x changed to %lx in three printf's *** asustrx.c *** fix compiler warnings added out_path to relevant fprintf's *** buffalo-enc.c *** add support for decrypting data with an offset *** buffalo-lib.c *** explicitly use signed char for checksum function ARM defaults to unsigned char and that breaks the calculation, as it relies on sign extension *** dgfirmware.c *** fix various compiler warnings removed string.h from #include section *** imagetag.c *** fix compiler warnings: 1) added #include reference to <inttypes.h> 2) replaced "%lu" with "%" PRIu32 , in sprintf 3) replaced strncpy(&tag.information1[0], args->altinfo_arg, ALTTAGINFO_LEN); with strncpy(tag.information1, args->altinfo_arg, TAGINFO1_LEN); brcm63xx: work around boot failures with squashfs on BCM6368 Due to the LWL/LWR SMP issue on BCM6368, booting with squash might fail if the rootfs is not word aligned. As a quick fix, work around it by ensuring this condition is always true. *** imagetag.ggo *** fixed e-mail address of a committer *** lzma2eva.c *** fix compiler warnings: Replaced static const uint8_t buf[4096]; with static uint8_t buf[4096]; *** mkbrncmdline.c *** fixed e-mail address of a committer *** mkbrnimg.c *** fixed e-mail address of a committer fix compiler warnings: replaced %08x to %08xz in a fprintf *** mkcasfw.c *** fixed e-mail address of a committer fix compiler warnings *** mkcsysimg.c *** fix compiler warnings: "\n" --> "%s\n" "%d" --> "%zu" %s added to relevant WARN messages *** mkdniimg.c *** fix compiler warnings: "\n" replaced with "%s\n" in a fprintf *** mkfwimage2.c *** allow mkfwimage2 to use - in partition names (changes inside an argument of sscanf function) *** mkhilinkfw.c *** fix compiler warnings: added #include reference to arpa/inet.h ********* added mkmerakifw.c file: firmware generator for MR18 This patch adds firmware generation tool for Cisco's MR18 ********* *** mkplanexfw.c *** fix compiler warnings: "\n" replaced with "%s\n" in a fprintf *** mkporayfw.c *** fix compiler warnings: "\n" replaced with "%s\n" in a fprintf *** mktplinkfw2.c *** fix compiler warnings: "\n" replaced with "%s\n" in a fprintf add a firmware layout for TP-Link TD-W8980 *** mktplinkfw.c *** 1) add missing exceeding bytes info to logs 2) Bitmain Antminer S1 & S3 cleanup 3) fix compiler warnings 4) tools/firmware-utils: add header version 2 support for mktplinkfw 5) print amount of exceeding bytes *** mkzcfw.c *** fix compiler warnings: "\n" replaced with "%s\n" in a fprintf *** mkzynfw.c *** fixed e-mail address of a committer fix compiler warnings: 1) added #include reference to <inttypes.h> 2) replaced %d with %zu in DBG message 3) replaced "%lu" with "%" PRIu32 *** osbridge-crc.c *** fix compiler warnings: "\n" replaced with "%s\n" in a fprintf *** pc1crypt.c *** fix compiler warnings: "\n" replaced with "%s\n" in a fprintf *** seama.c *** fix compiler warnings: "%d" replaced with "%zu" in three printf's *** spw303v.c *** fix compiler warnings: added #include reference to arpa/inet.h *** srec2bin.c *** fix compiler warnings: "main" changed to "int main" *** tplink-safeloader.c *** 1) add version 1.1 support to CPE210/220/510/520 The hardware is identical to version 1.0, add the new models to the support list. Also remove the empty line at the end of the support list, the current stock images don't have it either. 2) fix support-list format, clean up vendor information The first 4 bytes of the support list and the vendor information are supposed to contain the length of these fields. 3) clean up code There is no reason for the internal functions not to be static. *** wrt400n.c *** 1) fix a link to source file 2) fix compiler warnings: added #include references to arpa/inet.h and unistd.h *** zynos.h *** fixed e-mail address of a committer *** zyxbcm.c *** fix compiler warnings: added #include references to arpa/inet.h
_______________________________________________ Librecmc-dev mailing list Librecmc-dev@lists.librecmc.org https://librecmc.org/mailman/listinfo/librecmc-dev