<feed xmlns='http://www.w3.org/2005/Atom'>
<title>fwtool, branch master</title>
<subtitle>Utility for appending and extracting firmware metadata and signatures</subtitle>
<id>https://git.openwrt.org/project/fwtool/atom?h=master</id>
<link rel='self' href='https://git.openwrt.org/project/fwtool/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/'/>
<updated>2025-10-03T21:37:07Z</updated>
<entry>
<title>CMakeLists: update cmake minimum required version to 3.10</title>
<updated>2025-10-03T21:37:07Z</updated>
<author>
<name>Christian Marangi</name>
</author>
<published>2025-10-03T21:37:07Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=04cd252e4e9394ffacd51f56f1f124abc534f715'/>
<id>urn:sha1:04cd252e4e9394ffacd51f56f1f124abc534f715</id>
<content type='text'>
New cmake version 4.0 requires at least 3.5 version as the minimum
required version with it increased to 3.10 in to-be-released cmake
versions.

Set the minimum required version to 3.10 to future-proof for future
cmake version.

Suggested-by: Hannu Nyman &lt;hannu.nyman@iki.fi&gt;
Signed-off-by: Christian Marangi &lt;ansuelsmth@gmail.com&gt;
</content>
</entry>
<entry>
<title>cmake: use extra compiler warnings only on gcc6+</title>
<updated>2019-11-14T21:34:27Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-11-12T06:03:08Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=8f7fe925ca205c8e8e2d0d1b16218c1e148d5173'/>
<id>urn:sha1:8f7fe925ca205c8e8e2d0d1b16218c1e148d5173</id>
<content type='text'>
gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) and -Wextra produces
following:

 fwtool.c:288:9: error: missing initializer for field 'cur' of 'struct data_buf' [-Werror=missing-field-initializers]
  struct data_buf dbuf = {};
         ^
 fwtool.c:37:8: note: 'cur' declared here
  char *cur;
        ^

Ref: https://github.com/openwrt/openwrt/commit/4ba8f7b1ef1e4c0607185a41c06b51928c625d8b#commitcomment-35906526
Ref: http://lists.infradead.org/pipermail/openwrt-devel/2019-November/020039.html
Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>fix possible garbage in unitialized char* struct members</title>
<updated>2019-11-09T13:28:09Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-23T10:11:47Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=9d9d4c2847862adec2f474d4126213c17f98e024'/>
<id>urn:sha1:9d9d4c2847862adec2f474d4126213c17f98e024</id>
<content type='text'>
scan-build from clang version 9 has reported following issues:

 crc32.h:44:32: warning: The right operand of '^' is a garbage value
                val = crc_table[(uint8_t)val ^ *(uint8_t*)buf] ^ (val &gt;&gt; 8);
                                             ^ ~~~~~~~~~~~~~~

cppcheck version 1.89 has reported following issues:

 fwtool.c:260:9: error: Uninitialized variable: dest [uninitvar]
  memcpy(dest, dbuf-&gt;cur + dbuf-&gt;cur_len - cur_len, cur_len);
         ^
 fwtool.c:333:27: note: Calling function 'extract_tail', 2nd argument '&amp;tr' value is &lt;Uninit&gt;
   if (extract_tail(&amp;dbuf, &amp;tr, sizeof(tr))) {
                           ^

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>fix possible copy of null buffer and validation of unitialized header</title>
<updated>2019-11-09T13:28:09Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-22T12:05:39Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=dbc1b1b71b240ed61ea32eda610fde839d87c5f0'/>
<id>urn:sha1:dbc1b1b71b240ed61ea32eda610fde839d87c5f0</id>
<content type='text'>
scan-build from clang version 9 has reported following issues:

 fwtool.c:257:2: warning: Null pointer passed as an argument to a 'nonnull' parameter
        memcpy(dest, dbuf-&gt;cur + dbuf-&gt;cur_len - cur_len, cur_len);
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 fwtool.c:275:20: warning: The left operand of '!=' is a garbage value
         if (hdr-&gt;version != 0)
             ~~~~~~~~~~~~ ^

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>crc32: add missing stdint.h dependency</title>
<updated>2019-11-09T13:28:09Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-22T11:21:17Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=76d53deef8bb512255266d7a51918d300d8a6ab0'/>
<id>urn:sha1:76d53deef8bb512255266d7a51918d300d8a6ab0</id>
<content type='text'>
In order to fix compile error if using this header standalone, in unit
tests for example.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>add cram based unit tests</title>
<updated>2019-11-09T13:28:09Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-17T20:50:06Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=e5666ed3b47c311f3373afe9748abdb1a5910ae6'/>
<id>urn:sha1:e5666ed3b47c311f3373afe9748abdb1a5910ae6</id>
<content type='text'>
For improved QA etc.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>add initial GitLab CI support</title>
<updated>2019-11-09T13:23:52Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-17T12:55:02Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=abe0cf7de05375c9a7398cb3b0c2bda551e974fe'/>
<id>urn:sha1:abe0cf7de05375c9a7398cb3b0c2bda551e974fe</id>
<content type='text'>
Uses currently proof-of-concept openwrt-ci[1] in order to:

 * improve the quality of the codebase in various areas
 * decrease code review time and help merging contributions faster
 * get automagic feedback loop on various platforms and tools
   - out of tree build with OpenWrt SDK on following targets:
     * ath79-generic
     * imx6-generic
     * malta-be
     * mvebu-cortexa53
   - out of tree native build on x86/64 with GCC (versions 7, 8, 9) and Clang 9
   - out of tree native x86/64 static code analysis with cppcheck and
     scan-build from Clang 9

1. https://gitlab.com/ynezz/openwrt-ci/

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>iron out extra compiler warnings</title>
<updated>2019-11-09T13:23:52Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-17T13:08:15Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=e43042507b4f542e88e10ceaae2ca7bbaef6b1d2'/>
<id>urn:sha1:e43042507b4f542e88e10ceaae2ca7bbaef6b1d2</id>
<content type='text'>
 fwtool.c:216:3: error: ignoring return value of ‘ftruncate’, declared with attribute warn_unused_result [-Werror=unused-result]
 fwtool.c:376:3: error: ignoring return value of ‘ftruncate’, declared with attribute warn_unused_result [-Werror=unused-result]

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>convert into CMake project</title>
<updated>2019-11-09T13:23:45Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-17T12:50:48Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=5df0cd6e15235609713b7c1d263058e751d44a20'/>
<id>urn:sha1:5df0cd6e15235609713b7c1d263058e751d44a20</id>
<content type='text'>
Aligning it with other C based projects.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
<entry>
<title>refactor into separate Git project</title>
<updated>2019-10-17T22:36:11Z</updated>
<author>
<name>Petr Štetiar</name>
</author>
<published>2019-10-17T12:47:02Z</published>
<link rel='alternate' type='text/html' href='https://git.openwrt.org/project/fwtool/commit/?id=a7dc0526f81997fbdc27109452a8e4e519c4b69a'/>
<id>urn:sha1:a7dc0526f81997fbdc27109452a8e4e519c4b69a</id>
<content type='text'>
For improved reusability, testing etc.

Signed-off-by: Petr Štetiar &lt;ynezz@true.cz&gt;
</content>
</entry>
</feed>
